Class: Togul::EvaluateResult
- Inherits:
-
Object
- Object
- Togul::EvaluateResult
- Defined in:
- lib/togul/evaluate_result.rb
Instance Attribute Summary collapse
-
#enabled ⇒ Object
readonly
Returns the value of attribute enabled.
-
#flag_key ⇒ Object
readonly
Returns the value of attribute flag_key.
-
#reason ⇒ Object
readonly
Returns the value of attribute reason.
-
#value_type ⇒ Object
readonly
Returns the value of attribute value_type.
Instance Method Summary collapse
- #bool_value(fallback = false) ⇒ Object
- #enabled? ⇒ Boolean
-
#initialize(flag_key:, enabled:, value_type:, raw_value:, reason:) ⇒ EvaluateResult
constructor
A new instance of EvaluateResult.
- #json_value(fallback = nil) ⇒ Object
- #number_value(fallback = 0.0) ⇒ Object
- #string_value(fallback = '') ⇒ Object
Constructor Details
#initialize(flag_key:, enabled:, value_type:, raw_value:, reason:) ⇒ EvaluateResult
Returns a new instance of EvaluateResult.
7 8 9 10 11 12 13 |
# File 'lib/togul/evaluate_result.rb', line 7 def initialize(flag_key:, enabled:, value_type:, raw_value:, reason:) @flag_key = flag_key @enabled = enabled @value_type = value_type @raw_value = raw_value @reason = reason end |
Instance Attribute Details
#enabled ⇒ Object (readonly)
Returns the value of attribute enabled.
5 6 7 |
# File 'lib/togul/evaluate_result.rb', line 5 def enabled @enabled end |
#flag_key ⇒ Object (readonly)
Returns the value of attribute flag_key.
5 6 7 |
# File 'lib/togul/evaluate_result.rb', line 5 def flag_key @flag_key end |
#reason ⇒ Object (readonly)
Returns the value of attribute reason.
5 6 7 |
# File 'lib/togul/evaluate_result.rb', line 5 def reason @reason end |
#value_type ⇒ Object (readonly)
Returns the value of attribute value_type.
5 6 7 |
# File 'lib/togul/evaluate_result.rb', line 5 def value_type @value_type end |
Instance Method Details
#bool_value(fallback = false) ⇒ Object
19 20 21 22 23 24 |
# File 'lib/togul/evaluate_result.rb', line 19 def bool_value(fallback = false) return fallback unless enabled? && @value_type == 'boolean' return fallback unless @raw_value == true || @raw_value == false @raw_value end |
#enabled? ⇒ Boolean
15 16 17 |
# File 'lib/togul/evaluate_result.rb', line 15 def enabled? @enabled == true end |
#json_value(fallback = nil) ⇒ Object
40 41 42 43 44 |
# File 'lib/togul/evaluate_result.rb', line 40 def json_value(fallback = nil) return fallback unless enabled? && @value_type == 'json' @raw_value.nil? ? fallback : @raw_value end |
#number_value(fallback = 0.0) ⇒ Object
33 34 35 36 37 38 |
# File 'lib/togul/evaluate_result.rb', line 33 def number_value(fallback = 0.0) return fallback unless enabled? && @value_type == 'number' return fallback unless @raw_value.is_a?(Numeric) @raw_value.to_f end |
#string_value(fallback = '') ⇒ Object
26 27 28 29 30 31 |
# File 'lib/togul/evaluate_result.rb', line 26 def string_value(fallback = '') return fallback unless enabled? && @value_type == 'string' return fallback unless @raw_value.is_a?(String) @raw_value end |