Class: WSDSL::Response::Element::Attribute

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

Overview

Response element’s attribute class

Since:

  • 0.0.3

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(o_params) ⇒ Attribute

Takes a Hash or an Array and extract the attribute name, type doc and extra options. If the passed objects is a Hash, the name will be extract from the first key and the type for the first value. An entry keyed by :doc will be used for the doc and the rest will go as extra options.

If an Array is passed, the elements will be ‘shifted’ in this order: name, type, doc, type

Parameters:

  • o_params (Hash, Array)

Since:

  • 0.0.3



222
223
224
225
226
227
228
229
230
231
232
233
234
# File 'lib/response.rb', line 222

def initialize(o_params)
  params = o_params.dup
  if params.is_a?(Hash)
    @name, @type = params.shift
    @doc  = params.delete(:doc) if params.has_key?(:doc)
    @opts = params
  elsif params.is_a?(Array)
    @name = params.shift
    @type = params.shift
    @doc  = params.shift
    @opts = params
  end
end

Instance Attribute Details

#docString (readonly)

Returns The documentation associated with this attribute.

Returns:

  • (String)

    The documentation associated with this attribute.

Since:

  • 0.0.3



202
203
204
# File 'lib/response.rb', line 202

def doc
  @doc
end

#nameString, #to_s (readonly)

Returns The attribute’s name.

Returns:

  • (String, #to_s)

    The attribute’s name.

Since:

  • 0.0.3



194
195
196
# File 'lib/response.rb', line 194

def name
  @name
end

#optsHash, ... (readonly)

Returns Could be a hash, nil or any object depending on how the attribute is created.

Returns:

  • (Hash, Nil, Object)

    Could be a hash, nil or any object depending on how the attribute is created.

See Also:

  • WSDSL::Response::Element::Attribute.{Attribute{Attribute#new}

Since:

  • 0.0.3



207
208
209
# File 'lib/response.rb', line 207

def opts
  @opts
end

#typeSymbol, ... (readonly)

Returns The attribute’s type such as boolean, string etc..

Returns:

  • (Symbol, String, #to_s)

    The attribute’s type such as boolean, string etc..

Since:

  • 0.0.3



198
199
200
# File 'lib/response.rb', line 198

def type
  @type
end