Class: Joyent::Cloud::Pricing::Discount
- Inherits:
-
Object
- Object
- Joyent::Cloud::Pricing::Discount
- Defined in:
- lib/pricing/discount.rb,
lib/pricing/discount.rb
Direct Known Subclasses
Constant Summary collapse
- CALCULATORS =
{ percent: PercentDiscount }
Class Method Summary collapse
Instance Method Summary collapse
Class Method Details
.type(type_name, *args) ⇒ Object
27 28 29 30 31 |
# File 'lib/pricing/discount.rb', line 27 def self.type(type_name, *args) calc = CALCULATORS[type_name] raise "Type #{type_name} is unknown!" unless calc.is_a?(Class) calc.new *args end |
Instance Method Details
#apply(amount) ⇒ Object
3 4 5 |
# File 'lib/pricing/discount.rb', line 3 def apply(amount) raise 'Abstract method' end |