Class: RedSnow::Parameter

Inherits:
NamedBlueprintNode show all
Defined in:
lib/redsnow/blueprint.rb

Overview

URI parameter Blueprint AST node

represents one 'parameters section' parameter

Instance Attribute Summary collapse

Attributes inherited from NamedBlueprintNode

#description, #name

Instance Method Summary collapse

Methods inherited from NamedBlueprintNode

#ensure_description_newlines

Constructor Details

#initialize(sc_parameter_handle) ⇒ Parameter

Returns a new instance of Parameter.

Parameters:

  • sc_parameter_handle (FFI::Pointer)


156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
# File 'lib/redsnow/blueprint.rb', line 156

def initialize(sc_parameter_handle)
  @name = RedSnow::Binding.sc_parameter_name(sc_parameter_handle)
  @description = RedSnow::Binding.sc_parameter_description(sc_parameter_handle)
  @type = RedSnow::Binding.sc_parameter_type(sc_parameter_handle)
  @use =  RedSnow::Binding.sc_parameter_parameter_use(sc_parameter_handle)
  @default_value = RedSnow::Binding.sc_parameter_default_value(sc_parameter_handle)
  @example_value = RedSnow::Binding.sc_parameter_example_value(sc_parameter_handle)

  @values = Array.new

  sc_value_collection_handle = RedSnow::Binding.sc_value_collection_handle(sc_parameter_handle)
  sc_value_collection_size = RedSnow::Binding.sc_value_collection_size(sc_value_collection_handle)

  if sc_value_collection_size > 0
    values_size = sc_value_collection_size - 1

    for valueIndex in 0..values_size do
      sc_value_handle = RedSnow::Binding.sc_value_handle(sc_value_collection_handle, valueIndex)
      @values << RedSnow::Binding.sc_value(sc_value_handle)
    end
  end
end

Instance Attribute Details

#default_valueString

default value of the parameter or nil This is a value used when the parameter is ommited in the request.

Returns:

  • (String)

    the current value of default_value



147
148
149
# File 'lib/redsnow/blueprint.rb', line 147

def default_value
  @default_value
end

#example_valueString

example value of the parameter or nil

Returns:

  • (String)

    the current value of example_value



147
148
149
# File 'lib/redsnow/blueprint.rb', line 147

def example_value
  @example_value
end

#typeString

an arbitrary type of the parameter or nil

Returns:

  • (String)

    the current value of type



147
148
149
# File 'lib/redsnow/blueprint.rb', line 147

def type
  @type
end

#useSymbol

parameter necessity flag, ‘:required` or `:optional`

Returns:

  • (Symbol)

    the current value of use



147
148
149
# File 'lib/redsnow/blueprint.rb', line 147

def use
  @use
end

#valuesArray<String>

an enumeration of possible parameter values

Returns:

  • (Array<String>)

    the current value of values



147
148
149
# File 'lib/redsnow/blueprint.rb', line 147

def values
  @values
end