Class: Mws::Apis::Feeds::Product::DetailBuilder
- Inherits:
-
Object
- Object
- Mws::Apis::Feeds::Product::DetailBuilder
- Defined in:
- lib/mws/apis/feeds/product.rb
Instance Method Summary collapse
- #as_distance(amount, unit = nil) ⇒ Object
- #as_money(amount, currency = nil) ⇒ Object
- #as_weight(amount, unit = nil) ⇒ Object
-
#initialize(details) ⇒ DetailBuilder
constructor
A new instance of DetailBuilder.
- #method_missing(method, *args, &block) ⇒ Object
Constructor Details
#initialize(details) ⇒ DetailBuilder
Returns a new instance of DetailBuilder.
145 146 147 |
# File 'lib/mws/apis/feeds/product.rb', line 145 def initialize(details) @details = details end |
Dynamic Method Handling
This class handles dynamic methods through the method_missing method
#method_missing(method, *args, &block) ⇒ Object
161 162 163 164 165 166 167 168 |
# File 'lib/mws/apis/feeds/product.rb', line 161 def method_missing(method, *args, &block) if block_given? @details[method] = {} DetailBuilder.new(@details[method]).instance_eval(&block) elsif args.length > 0 @details[method] = args[0] end end |
Instance Method Details
#as_distance(amount, unit = nil) ⇒ Object
149 150 151 |
# File 'lib/mws/apis/feeds/product.rb', line 149 def as_distance(amount, unit=nil) Distance.new amount, unit end |