Class: Arrolio::LayoutSpec::ScaleLength
- Inherits:
-
Object
- Object
- Arrolio::LayoutSpec::ScaleLength
- Defined in:
- lib/arrolio/layout_spec/scale_length.rb
Instance Attribute Summary collapse
-
#base_value ⇒ Object
readonly
Returns the value of attribute base_value.
-
#scale_factor ⇒ Object
readonly
Returns the value of attribute scale_factor.
Instance Method Summary collapse
- #==(other) ⇒ Object (also: #eql?)
- #hash ⇒ Object
-
#initialize(base_value:, scale_factor: 1.0) ⇒ ScaleLength
constructor
A new instance of ScaleLength.
- #resolved ⇒ Object
- #with_scale(factor) ⇒ Object
Constructor Details
#initialize(base_value:, scale_factor: 1.0) ⇒ ScaleLength
Returns a new instance of ScaleLength.
8 9 10 11 12 |
# File 'lib/arrolio/layout_spec/scale_length.rb', line 8 def initialize(base_value:, scale_factor: 1.0) @base_value = base_value.to_f @scale_factor = scale_factor.to_f freeze end |
Instance Attribute Details
#base_value ⇒ Object (readonly)
Returns the value of attribute base_value.
6 7 8 |
# File 'lib/arrolio/layout_spec/scale_length.rb', line 6 def base_value @base_value end |
#scale_factor ⇒ Object (readonly)
Returns the value of attribute scale_factor.
6 7 8 |
# File 'lib/arrolio/layout_spec/scale_length.rb', line 6 def scale_factor @scale_factor end |
Instance Method Details
#==(other) ⇒ Object Also known as: eql?
22 23 24 25 26 |
# File 'lib/arrolio/layout_spec/scale_length.rb', line 22 def ==(other) other.is_a?(self.class) && base_value == other.base_value && scale_factor == other.scale_factor end |
#hash ⇒ Object
29 30 31 |
# File 'lib/arrolio/layout_spec/scale_length.rb', line 29 def hash [self.class, base_value, scale_factor].hash end |
#resolved ⇒ Object
14 15 16 |
# File 'lib/arrolio/layout_spec/scale_length.rb', line 14 def resolved @base_value * @scale_factor end |
#with_scale(factor) ⇒ Object
18 19 20 |
# File 'lib/arrolio/layout_spec/scale_length.rb', line 18 def with_scale(factor) self.class.new(base_value: @base_value, scale_factor: factor) end |