Sha256: 140dade379841ad73295dbaff4867b85d30fb12cae93926f95fe33181a0e3b16
Contents?: true
Size: 725 Bytes
Versions: 28
Compression:
Stored size: 725 Bytes
Contents
module Betterdocs::JsonParamsRepresenter extend ActiveSupport::Concern include Betterdocs::Representer module ClassMethods def build_result_object {}.with_indifferent_access end def hashify(object) super do |result| assign_params result, object end end def docs @docs ||= Betterdocs::JsonParamsRepresenterCollector.new end def assign_params(result, object) for param in params param.assign(result, object) end end private :assign_params def params @params ||= Set.new end def param(name, **options, &block) d = doc(:param, name, **options, &block) and params << d self end end end
Version data entries
28 entries across 28 versions & 1 rubygems