Module: ActiveSerializer::Serializable
- Included in:
- ActiveSerializer::SerializableHash::ClassMethods
- Defined in:
- lib/active_serializer/serializable.rb
Instance Method Summary collapse
- #serialization_rules(options = {}, &block) ⇒ Object
- #serialize(*objects) ⇒ Object
- #serialize_all(collection, options = {}) ⇒ Object
Instance Method Details
#serialization_rules(options = {}, &block) ⇒ Object
23 24 25 26 27 |
# File 'lib/active_serializer/serializable.rb', line 23 def serialization_rules( = {}, &block) self.class_variable_set(:@@serialization_options, ) ActiveSerializer::SerializationRulesValidator.validate!(&block) self.class_variable_set(:@@serialization_rules, block) end |
#serialize(*objects) ⇒ Object
3 4 5 6 7 8 9 10 11 12 13 14 15 |
# File 'lib/active_serializer/serializable.rb', line 3 def serialize(*objects) = self.class_variable_get(:@@serialization_options) serialization_rules = self.class_variable_get(:@@serialization_rules) ActiveSerializer::Support::ArgsValidator.not_nil!(serialization_rules, :serialization_rules) serialized_data = run_serialization(objects, serialization_rules, ) if [:no_root_node] serialized_data.first[1] else serialized_data end end |
#serialize_all(collection, options = {}) ⇒ Object
17 18 19 20 21 |
# File 'lib/active_serializer/serializable.rb', line 17 def serialize_all(collection, = {}) collection.map do |object| serialize(object, ) end end |