class Primalize::JSONAPI::Relationships
Public Class Methods
new()
click to toggle source
# File lib/primalize/jsonapi.rb, line 33 def initialize @rels = [] @map = {} end
Public Instance Methods
<<(rel)
click to toggle source
# File lib/primalize/jsonapi.rb, line 38 def << rel @rels << rel @map[rel.attr] = rel end
[](rel)
click to toggle source
# File lib/primalize/jsonapi.rb, line 43 def [] rel @map[rel] end
call(model, cache:)
click to toggle source
# File lib/primalize/jsonapi.rb, line 53 def call(model, cache:) @rels.each_with_object({}) do |rel, hash| hash[rel.attr] = rel.call(model) end end
metadata(model, cache:)
click to toggle source
# File lib/primalize/jsonapi.rb, line 47 def metadata(model, cache:) @rels.each_with_object({}) do |rel, hash| hash[rel.attr] = rel.metadata(model, cache: cache) end end