Sha256: f4f197fc58d8e377a645119d28cb0257855f3074884a673fb8645362e1671faf
Contents?: true
Size: 747 Bytes
Versions: 2
Compression:
Stored size: 747 Bytes
Contents
module Alf module Operator::NonRelational class Defaults < Alf::Operator() include Operator::NonRelational, Operator::Transform signature do |s| s.argument :defaults, TupleComputation, {} s.option :strict, Boolean, false, "Restrict to default attributes only?" end protected # (see Operator::Transform#_tuple2tuple) def _tuple2tuple(tuple) handle = TupleHandle.new.set(tuple) defs = @defaults.evaluate(handle) keys = @strict ? defs.keys : (tuple.keys | defs.keys) tuple_collect(keys){|k| [k, coalesce(tuple[k], defs[k])] } end end # class Defaults end # module Operator::NonRelational end # module Alf
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
alf-0.10.1 | lib/alf/operator/non_relational/defaults.rb |
alf-0.10.0 | lib/alf/operator/non_relational/defaults.rb |