Class: JsonWriteStream::StatefulArrayWriter

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

Instance Attribute Summary

Attributes inherited from StatefulWriter

#closed, #index, #stack, #stream

Instance Method Summary collapse

Methods inherited from StatefulWriter

#close_array, #close_object, #eos?, #flush, #in_array?, #in_object?, #initialize, #write_key_value

Constructor Details

This class inherits a constructor from JsonWriteStream::StatefulWriter

Instance Method Details

#after_initializeObject



174
175
176
# File 'lib/json-write-stream/stateful.rb', line 174

def after_initialize
  stream.write('[')
end

#closeObject



196
197
198
# File 'lib/json-write-stream/stateful.rb', line 196

def close
  stream.write(']')
end

#is_array?Boolean

Returns:

  • (Boolean)


204
205
206
# File 'lib/json-write-stream/stateful.rb', line 204

def is_array?
  true
end

#is_object?Boolean

Returns:

  • (Boolean)


200
201
202
# File 'lib/json-write-stream/stateful.rb', line 200

def is_object?
  false
end

#write_arrayObject

prep work



185
186
187
188
# File 'lib/json-write-stream/stateful.rb', line 185

def write_array
  write_comma
  increment
end

#write_element(element) ⇒ Object



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

def write_element(element)
  write_comma
  increment
  stream.write(escape(element))
end

#write_objectObject

prep work



191
192
193
194
# File 'lib/json-write-stream/stateful.rb', line 191

def write_object
  write_comma
  increment
end