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)


141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
# File 'lib/redsnow/blueprint.rb', line 141

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)
      value = RedSnow::Binding.sc_value_string(sc_value_handle)
      @values << value
    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



133
134
135
# File 'lib/redsnow/blueprint.rb', line 133

def default_value
  @default_value
end

#example_valueString

example value of the parameter or nil

Returns:

  • (String)

    the current value of example_value



133
134
135
# File 'lib/redsnow/blueprint.rb', line 133

def example_value
  @example_value
end

#typeString

an arbitrary type of the parameter or nil

Returns:

  • (String)

    the current value of type



133
134
135
# File 'lib/redsnow/blueprint.rb', line 133

def type
  @type
end

#useSymbol

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

Returns:

  • (Symbol)

    the current value of use



133
134
135
# File 'lib/redsnow/blueprint.rb', line 133

def use
  @use
end

#valuesArray<String>

an enumeration of possible parameter values

Returns:

  • (Array<String>)

    the current value of values



133
134
135
# File 'lib/redsnow/blueprint.rb', line 133

def values
  @values
end