Class: YamlWriteStream::StatefulMappingWriter

Inherits:
StatefulWriter show all
Defined in:
lib/yaml-write-stream/stateful.rb

Instance Attribute Summary

Attributes inherited from StatefulWriter

#closed, #emitter, #first, #stack, #stream

Instance Method Summary collapse

Methods inherited from StatefulWriter

#close_map, #close_sequence, #eos?, #flush, #in_map?, #in_sequence?, #initialize, #write_element

Constructor Details

This class inherits a constructor from YamlWriteStream::StatefulWriter

Instance Method Details

#after_initializeObject



154
155
156
157
158
159
# File 'lib/yaml-write-stream/stateful.rb', line 154

def after_initialize
  # anchor, tag, implicit, style
  emitter.start_mapping(
    nil, nil, true, Psych::Nodes::Sequence::BLOCK
  )
end

#closeObject



175
176
177
# File 'lib/yaml-write-stream/stateful.rb', line 175

def close
  emitter.end_mapping
end

#is_map?Boolean

Returns:

  • (Boolean)


179
180
181
# File 'lib/yaml-write-stream/stateful.rb', line 179

def is_map?
  true
end

#is_sequence?Boolean

Returns:

  • (Boolean)


183
184
185
# File 'lib/yaml-write-stream/stateful.rb', line 183

def is_sequence?
  false
end

#write_key_value(key, value) ⇒ Object



169
170
171
172
173
# File 'lib/yaml-write-stream/stateful.rb', line 169

def write_key_value(key, value)
  quote_key = !!(key =~ /\A\d+\z/)
  write_scalar(key, quote_key)
  write_scalar(value, true)
end

#write_map(key) ⇒ Object



161
162
163
# File 'lib/yaml-write-stream/stateful.rb', line 161

def write_map(key)
  write_scalar(key)
end

#write_sequence(key) ⇒ Object



165
166
167
# File 'lib/yaml-write-stream/stateful.rb', line 165

def write_sequence(key)
  write_scalar(key)
end