107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
|
# File 'lib/amf/pure/serializer.rb', line 107
def write_array(array)
@stream << AMF3_ARRAY_MARKER
if @object_cache[array] != nil
write_reference(@object_cache[array])
else
@object_cache.add_obj(array)
= array.length << 1 = | 1 @stream << pack_integer()
@stream << AMF3_CLOSE_DYNAMIC_ARRAY
array.each do |elem|
if elem.respond_to?(:to_amf)
@stream << elem.to_amf(@opts)
else
serialize(elem)
end
end
block.call(self) if block_given?
end
end
|