Class: Raddocs::Parameters

Inherits:
Object
  • Object
show all
Defined in:
lib/raddocs/models.rb

Overview

An example’s parameters, requires a class because the table can display unknown columns

Constant Summary collapse

SPECIAL_KEYS =
["name", "description", "required", "scope"]

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(params) ⇒ Parameters

Collection object for parameters to pull out unknown keys so they can be displayed on the example page.

Examples:

params = Parameters.new([
  {"name" => "page", "description" => "Page number", "Type" => "Integer"}
])
params.extra_keys
# => ["Type"]

Parameters:



98
99
100
101
# File 'lib/raddocs/models.rb', line 98

def initialize(params)
  @params = params.map { |param| Parameter.new(param) }
  @extra_keys = params.flat_map(&:keys).uniq - SPECIAL_KEYS
end

Instance Attribute Details

#extra_keysObject (readonly)

Returns the value of attribute extra_keys.



82
83
84
# File 'lib/raddocs/models.rb', line 82

def extra_keys
  @extra_keys
end

#paramsObject (readonly)

Returns the value of attribute params.



82
83
84
# File 'lib/raddocs/models.rb', line 82

def params
  @params
end

Instance Method Details

#present?Boolean

Returns true if params contains elements.

Returns:

  • (Boolean)

    true if params contains elements



104
105
106
# File 'lib/raddocs/models.rb', line 104

def present?
  @params.count > 0
end