Class: Aws::Templates::Utils::Parametrized::Transformation::AsHash

Inherits:
Aws::Templates::Utils::Parametrized::Transformation show all
Defined in:
lib/aws/templates/utils/parametrized/transformations.rb

Overview

Convert input into hash

Input value can be anything implementing :to_hash method.

Example

class Piece
  include Aws::Templates::Utils::Parametrized

  parameter :param, :transform => as_hash
  parameter :param2,
    transform: as_hash {
      value name: :number,
        description: 'Number',
        constraint: not_nil,
        transform: as_integer
    }
end

i = Piece.new
i.param # => nil
i = Piece.new(:param => [[1,2]])
i.param # => {1=>2}
i = Piece.new(:param2 => [[1,'3']])
i.param # => {1=>3}

Instance Method Summary collapse

Methods inherited from Aws::Templates::Utils::Parametrized::Transformation

#to_proc, #transform_wrapper

Constructor Details

#initialize(klass = nil, &blk) ⇒ AsHash

Returns a new instance of AsHash.



435
436
437
438
# File 'lib/aws/templates/utils/parametrized/transformations.rb', line 435

def initialize(klass = nil, &blk)
  @klass = klass
  instance_eval(&blk) if blk
end

Instance Method Details

#key(opts) ⇒ Object



427
428
429
# File 'lib/aws/templates/utils/parametrized/transformations.rb', line 427

def key(opts)
  @key_parameter = _create_parameter(opts)
end

#value(opts) ⇒ Object



431
432
433
# File 'lib/aws/templates/utils/parametrized/transformations.rb', line 431

def value(opts)
  @value_parameter = _create_parameter(opts)
end