class Autodoc::Grape::Document::Parameter

Attributes

validator[R]

Public Class Methods

new(validator) click to toggle source
# File lib/autodoc/grape/document/parameter.rb, line 7
def initialize(validator)
  @validator = validator
end

Public Instance Methods

to_s() click to toggle source
# File lib/autodoc/grape/document/parameter.rb, line 11
def to_s
  "#{body}#{payload}"
end

Private Instance Methods

assets() click to toggle source
# File lib/autodoc/grape/document/parameter.rb, line 48
def assets
  @assets ||= [required, only, default_value].compact
end
body() click to toggle source
# File lib/autodoc/grape/document/parameter.rb, line 33
def body
  "#{indent}* #{key} #{options[:type]}"
end
default_value() click to toggle source
# File lib/autodoc/grape/document/parameter.rb, line 56
def default_value
  "default: `#{options[:default].inspect}`" if options[:default]
end
indent() click to toggle source
# File lib/autodoc/grape/document/parameter.rb, line 17
def indent
  " " * ( nest_key_names.count - 1 )
end
key() click to toggle source
# File lib/autodoc/grape/document/parameter.rb, line 25
def key
  nest_key_names.last
end
nest_key_names() click to toggle source
# File lib/autodoc/grape/document/parameter.rb, line 21
def nest_key_names
  validator[0].gsub(%r{\[(.*?)\]}, '__\1').split('__')
end
only() click to toggle source
# File lib/autodoc/grape/document/parameter.rb, line 52
def only
  "only: `#{options[:values].inspect}`" if options[:values]
end
options() click to toggle source
# File lib/autodoc/grape/document/parameter.rb, line 29
def options
  validator[1]
end
payload() click to toggle source
# File lib/autodoc/grape/document/parameter.rb, line 37
def payload
  string = ""
  string << " (#{assets.join(', ')})" if assets.any?
  string << " - #{options[:desc]}" if options[:desc]
  string
end
required() click to toggle source
# File lib/autodoc/grape/document/parameter.rb, line 44
def required
  "required" if options[:required]
end