Module: Grape::Validations::ParamsDocumentation
- Included in:
- ParamsScope
- Defined in:
- lib/grape/validations/params_documentation.rb
Overview
Documents parameters of an endpoint. If documentation isn’t needed (for instance, it is an internal API), the class only cleans up attributes to avoid junk in RAM.
Defined Under Namespace
Classes: TypeCache
Instance Method Summary collapse
Instance Method Details
#document_params(attrs, validations, type = nil, values = nil, except_values = nil) ⇒ Object
9 10 11 12 13 14 15 16 |
# File 'lib/grape/validations/params_documentation.rb', line 9 def document_params(attrs, validations, type = nil, values = nil, except_values = nil) return validations.except!(:desc, :description, :documentation) if @api.inheritable_setting.namespace_inheritable[:do_not_document] documented_attrs = attrs.each_with_object({}) do |name, memo| memo[full_name(name)] = extract_details(validations, type, values, except_values) end @api.inheritable_setting.namespace_stackable[:params] = documented_attrs end |