Builtin collection: !omap
# File yaml/types.rb, line 106 def []( k ) self.assoc( k ).to_a[1] end
# File yaml/types.rb, line 109 def []=( k, *rest ) val, set = rest.reverse if ( tmp = self.assoc( k ) ) and not set tmp[1] = val else self << [ k, val ] end val end
# File yaml/types.rb, line 118 def has_key?( k ) self.assoc( k ) ? true : false end
# File yaml/types.rb, line 121 def is_complex_yaml? true end
# File yaml/types.rb, line 124 def to_yaml( opts = {} ) YAML::quick_emit( self, opts ) do |out| out.seq( taguri, to_yaml_style ) do |seq| self.each do |v| seq.add( Hash[ *v ] ) end end end end
# File yaml/types.rb, line 85 def yaml_initialize( tag, val ) if Array === val val.each do |v| if Hash === v concat( v.to_a ) # Convert the map to a sequence else raise YAML::Error, "Invalid !omap entry: " + val.inspect end end else raise YAML::Error, "Invalid !omap: " + val.inspect end self end