class ApipieBindings::Param

Attributes

description[R]
expected_type[R]
name[R]
params[R]
validator[R]

Public Class Methods

new(param) click to toggle source
# File lib/apipie_bindings/param.rb, line 9
def initialize(param)
  param = ApipieBindings::IndifferentHash.new(param)
  @name = param[:name]
  params = param[:params] || []
  @params = params.map { |p| ApipieBindings::Param.new(p) }
  @expected_type = param[:expected_type].to_sym
  @description = param[:description].gsub(/<\/?[^>]+?>/, "")
  @required = param[:required] || @params.inject(false) { |req, par| req ||= par.required? }
  @validator = param[:validator]
end

Public Instance Methods

inspect() click to toggle source
# File lib/apipie_bindings/param.rb, line 32
def inspect
  to_s
end
required?() click to toggle source
# File lib/apipie_bindings/param.rb, line 24
def required?
  @required
end
to_s() click to toggle source
# File lib/apipie_bindings/param.rb, line 28
def to_s
  "<Param #{ required? ? '*' : '' }#{@name} (#{@expected_type.to_s.capitalize})>"
end
tree(&block) click to toggle source
# File lib/apipie_bindings/param.rb, line 20
def tree(&block)
  ApipieBindings::Utilities.params_hash_tree(@params, &block)
end