module ReSorcery

Constants

VERSION

Public Class Methods

included(base) click to toggle source
# File lib/re_sorcery.rb, line 22
def self.included(base)
  base.extend Fielded::ClassMethods
  base.extend Linked::ClassMethods
  @configured = "included at #{caller_locations.first}"
end

Public Instance Methods

as_json(*) click to toggle source
# File lib/re_sorcery.rb, line 34
def as_json(*)
  resource.cata(
    ok: ->(r) { r },
    err: ->(e) { raise Error::InvalidResourceError, e },
  )
end
resource() click to toggle source
# File lib/re_sorcery.rb, line 28
def resource
  Result::Ok.new({})
    .assign(:payload) { fields }
    .assign(:links) { links }
end