Class: Thrift::Builder

Inherits:
Object
  • Object
show all
Defined in:
lib/thrift/builder.rb,
lib/thrift/builder/version.rb

Constant Summary collapse

VERSION =
"0.1.0"

Instance Method Summary collapse

Constructor Details

#initialize(clazz) ⇒ Builder

Returns a new instance of Builder.



5
6
7
# File 'lib/thrift/builder.rb', line 5

def initialize(clazz)
  @class = clazz
end

Instance Method Details

#build(attributes) ⇒ Object



9
10
11
12
13
14
15
# File 'lib/thrift/builder.rb', line 9

def build(attributes)
  @class.new.tap do |obj|
    attributes.each do |attribute, value|
      obj.send "#{attribute}=", build_attr(@class::FIELDS[obj.name_to_id(attribute.to_s)], value)
    end
  end
end