jsonapi-deserializable/lib/jsonapi/deserializable/resource/dsl.rb
Lucas Hosseini 538e09c5b3 Configurable deserialization + reverse mapping (#10)
* Deserialize all fields.
* Make blocks return hash instead of using fields method.
* Ensure valid payload.
* Make reverse mapping available.
2016-11-27 03:56:42 +01:00

28 lines
518 B
Ruby

module JSONAPI
module Deserializable
class Resource
module DSL
def type(&block)
self.type_block = block
end
def id(&block)
self.id_block = block
end
def attribute(key, &block)
attr_blocks[key.to_s] = block
end
def has_one(key, &block)
has_one_rel_blocks[key.to_s] = block
end
def has_many(key, &block)
has_many_rel_blocks[key.to_s] = block
end
end
end
end
end