class ActiveSerializer::SerializationRulesValidator

Public Class Methods

validate!(&rules) click to toggle source
# File lib/active_serializer/serialization_rules_validator.rb, line 4
def self.validate!(&rules)
  fake_objects = rules.arity.times.map do
    ActiveSerializer::Support::FakeObject.new
  end
  validator = self.new
  validator.instance_exec(*fake_objects, &rules)
end

Public Instance Methods

attribute(name, value = nil, &block) click to toggle source
# File lib/active_serializer/serialization_rules_validator.rb, line 12
def attribute(name, value = nil, &block)
  ActiveSerializer::Support::ArgsValidator.is_symbol!(name, 'attributes')
end
attributes(*attrs) click to toggle source
# File lib/active_serializer/serialization_rules_validator.rb, line 31
def attributes(*attrs)
  attrs.delete_at(-1)
  ActiveSerializer::Support::ArgsValidator.is_array_of_symbols!(attrs, 'attributes')
end
namespace(name, &block) click to toggle source
# File lib/active_serializer/serialization_rules_validator.rb, line 36
def namespace(name, &block)
  ActiveSerializer::Support::ArgsValidator.is_symbol!(name, 'namespace name')
  ActiveSerializer::Support::ArgsValidator.block_given!(block, 'namespace block')
end
resource(name, object = nil, &block) click to toggle source
# File lib/active_serializer/serialization_rules_validator.rb, line 41
def resource(name, object = nil, &block)
  ActiveSerializer::Support::ArgsValidator.is_symbol!(name, 'resource name')
  ActiveSerializer::Support::ArgsValidator.block_given!(block, 'resource block')
end
resources(name, objects = nil, &block) click to toggle source
# File lib/active_serializer/serialization_rules_validator.rb, line 46
def resources(name, objects = nil, &block)
  ActiveSerializer::Support::ArgsValidator.is_symbol!(name, 'resources name')
  ActiveSerializer::Support::ArgsValidator.block_given!(block, 'resources block')
end
serialize_collection(*attrs) click to toggle source
# File lib/active_serializer/serialization_rules_validator.rb, line 16
def serialize_collection(*attrs)
  key    = attrs[0]
  object = attrs[1]
  klass  = attrs[2]
  ActiveSerializer::Support::ArgsValidator.is_symbol!(key, 'collection name')
  ActiveSerializer::Support::ArgsValidator.is_class!(klass, 'serializer class')
end
serialize_entity(*attrs) click to toggle source
# File lib/active_serializer/serialization_rules_validator.rb, line 24
def serialize_entity(*attrs)
  key    = attrs[0]
  klass  = attrs[2]
  ActiveSerializer::Support::ArgsValidator.is_symbol!(key, 'collection name')
  ActiveSerializer::Support::ArgsValidator.is_class!(klass, 'serializer class')
end