class Shogun::Presenters

Public Class Methods

new(resources:, cast:, includes: [], meta: {}, links: {}, linked: {}) click to toggle source
# File lib/shogun/presenters.rb, line 5
def initialize(resources:, cast:, includes: [], meta: {}, links: {}, linked: {})
  @cast = @cast
  @sources = resources.map do |resource|
    cast.new(resource: resource, includes: includes)
  end
  @includes = includes
  @meta = meta
  @links = links
  @linked = linked
end

Public Instance Methods

each(&block) click to toggle source
# File lib/shogun/presenters.rb, line 16
def each(&block)
  @sources.each(&block)
end
linked() click to toggle source
# File lib/shogun/presenters.rb, line 24
def linked
  @linked
end
meta() click to toggle source
# File lib/shogun/presenters.rb, line 20
def meta
  @meta
end

Private Instance Methods

includes() click to toggle source
# File lib/shogun/presenters.rb, line 40
        def includes
  @includes
end
namespace() click to toggle source
# File lib/shogun/presenters.rb, line 36
        def namespace
  @cast.const_get("NAMESPACE")
end