Class: JsonWriteStream::YieldingObjectWriter

Inherits:
YieldingWriter show all
Defined in:
lib/json-write-stream/yielding.rb

Instance Attribute Summary

Attributes inherited from YieldingWriter

#index, #stream

Instance Method Summary collapse

Methods inherited from YieldingWriter

#flush, #initialize

Constructor Details

This class inherits a constructor from JsonWriteStream::YieldingWriter

Instance Method Details

#after_initializeObject



59
60
61
# File 'lib/json-write-stream/yielding.rb', line 59

def after_initialize
  stream.write('{')
end

#closeObject



89
90
91
# File 'lib/json-write-stream/yielding.rb', line 89

def close
  stream.write('}')
end

#write_array(key, before = '') ⇒ Object



63
64
65
66
67
68
69
70
# File 'lib/json-write-stream/yielding.rb', line 63

def write_array(key, before = '')
  write_comma
  stream.write(before)
  increment
  write_key(key)
  stream.write(':')
  super(true)
end

#write_key_value(key, value, before = '') ⇒ Object



81
82
83
84
85
86
87
# File 'lib/json-write-stream/yielding.rb', line 81

def write_key_value(key, value, before = '')
  write_comma
  stream.write(before)
  increment
  write_key(key)
  stream.write(":#{escape(value)}")
end

#write_object(key, before = '') ⇒ Object



72
73
74
75
76
77
78
79
# File 'lib/json-write-stream/yielding.rb', line 72

def write_object(key, before = '')
  write_comma
  stream.write(before)
  increment
  write_key(key)
  stream.write(':')
  super(true)
end