Class: Glaemscribe::API::Option
Defined Under Namespace
Classes: Type
Instance Attribute Summary collapse
-
#default_value_name ⇒ Object
readonly
Returns the value of attribute default_value_name.
-
#mode ⇒ Object
readonly
Returns the value of attribute mode.
-
#name ⇒ Object
readonly
Returns the value of attribute name.
-
#type ⇒ Object
readonly
Returns the value of attribute type.
-
#values ⇒ Object
readonly
Returns the value of attribute values.
Instance Method Summary collapse
- #default_value ⇒ Object
-
#initialize(mode, name, default_value_name, values, visibility = nil) ⇒ Option
constructor
A new instance of Option.
- #value_for_value_name(val_name) ⇒ Object
- #visible? ⇒ Boolean
Constructor Details
#initialize(mode, name, default_value_name, values, visibility = nil) ⇒ Option
Returns a new instance of Option.
39 40 41 42 43 44 45 46 |
# File 'lib/api/option.rb', line 39 def initialize(mode, name, default_value_name, values, visibility = nil) @mode = mode @name = name @default_value_name = default_value_name @type = (values.keys.count == 0)?(Type::BOOL):(Type::ENUM) @values = values @visibility = visibility end |
Instance Attribute Details
#default_value_name ⇒ Object (readonly)
Returns the value of attribute default_value_name.
30 31 32 |
# File 'lib/api/option.rb', line 30 def default_value_name @default_value_name end |
#mode ⇒ Object (readonly)
Returns the value of attribute mode.
27 28 29 |
# File 'lib/api/option.rb', line 27 def mode @mode end |
#name ⇒ Object (readonly)
Returns the value of attribute name.
28 29 30 |
# File 'lib/api/option.rb', line 28 def name @name end |
#type ⇒ Object (readonly)
Returns the value of attribute type.
29 30 31 |
# File 'lib/api/option.rb', line 29 def type @type end |
#values ⇒ Object (readonly)
Returns the value of attribute values.
31 32 33 |
# File 'lib/api/option.rb', line 31 def values @values end |
Instance Method Details
#default_value ⇒ Object
48 49 50 51 52 53 54 |
# File 'lib/api/option.rb', line 48 def default_value if @type == Type::BOOL (@default_value_name == 'true') else @values[@default_value_name] end end |
#value_for_value_name(val_name) ⇒ Object
56 57 58 59 60 61 62 63 64 |
# File 'lib/api/option.rb', line 56 def value_for_value_name(val_name) if @type == Type::BOOL return true if(val_name == 'true' || val_name == true) return false if(val_name == 'false' || val_name == false) return nil else return @values[val_name] end end |
#visible? ⇒ Boolean
66 67 68 69 70 71 72 73 74 |
# File 'lib/api/option.rb', line 66 def visible? if_eval = Eval::Parser.new() begin (if_eval.parse(@visibility || "true", @mode.latest_option_values || {}) == true) rescue Eval::IfEvalError => e nil end end |