Class: RText::Serializer
- Inherits:
-
Object
- Object
- RText::Serializer
- Defined in:
- lib/rtext/serializer.rb
Instance Method Summary collapse
-
#initialize(language) ⇒ Serializer
constructor
Creates a serializer for RText::Language
language
. -
#serialize(elements, writer, options = {}) ⇒ Object
Serialize
elements
towriter
.
Constructor Details
#initialize(language) ⇒ Serializer
Creates a serializer for RText::Language language
.
11 12 13 |
# File 'lib/rtext/serializer.rb', line 11 def initialize(language) @lang = language end |
Instance Method Details
#serialize(elements, writer, options = {}) ⇒ Object
Serialize elements
to writer
. Options:
:set_line_number
if set to true, the serializer will try to update the line number attribute of model
elements, while they are serialized, given that they have the line_number_attribute
specified in the RText::Language
default: don't set line number
:fragment_ref
an object referencing a fragment, this will be set on all model elements while they
are serialized, given that they have the fragment_ref_attribute specified in the
RText::Language
default: don't set fragment reference
29 30 31 32 33 34 35 36 37 38 39 40 |
# File 'lib/rtext/serializer.rb', line 29 def serialize(elements, writer, ={}) @writer = writer @set_line_number = [:set_line_number] @fragment_ref = [:fragment_ref] @line_number = 1 @indent = 0 if elements.is_a?(Array) serialize_elements(elements) else serialize_elements([elements]) end end |