module Grape::Entity::DSL

The Entity DSL allows you to mix entity functionality into your existing classes.

Public Class Methods

included(base) click to toggle source
# File lib/grape_entity/entity.rb, line 49
def self.included(base)
  base.extend ClassMethods
  ancestor_entity_class = base.ancestors.detect{|a| a.entity_class if a.respond_to?(:entity_class)}
  base.const_set(:Entity, Class.new(ancestor_entity_class || Grape::Entity)) unless const_defined?(:Entity)
end

Public Instance Methods

entity(options = {}) click to toggle source

Instantiates an entity version of this object.

# File lib/grape_entity/entity.rb, line 95
def entity(options = {})
  self.class.entity_class.new(self, options)
end