Module: BulmaX::Dsl::Options::ClassMethods
- Defined in:
- lib/bulma_x/dsl/options.rb
Instance Attribute Summary collapse
-
#default_options ⇒ Object
readonly
Returns the value of attribute default_options.
-
#options ⇒ Object
readonly
Returns the value of attribute options.
Instance Method Summary collapse
- #default_option(attribute_name, value) ⇒ Object
- #option(attribute_name, values: nil, default: nil, override: false) ⇒ Object
- #remove_option(attribute_name) ⇒ Object
Instance Attribute Details
#default_options ⇒ Object (readonly)
Returns the value of attribute default_options.
7 8 9 |
# File 'lib/bulma_x/dsl/options.rb', line 7 def end |
#options ⇒ Object (readonly)
Returns the value of attribute options.
7 8 9 |
# File 'lib/bulma_x/dsl/options.rb', line 7 def end |
Instance Method Details
#default_option(attribute_name, value) ⇒ Object
25 26 27 28 29 30 31 |
# File 'lib/bulma_x/dsl/options.rb', line 25 def default_option(attribute_name, value) ||= {} raise ArgumentError, "Option :#{attribute_name} does not exist" unless .key?(attribute_name) [attribute_name] = value.dup.freeze end |
#option(attribute_name, values: nil, default: nil, override: false) ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
# File 'lib/bulma_x/dsl/options.rb', line 9 def option(attribute_name, values: nil, default: nil, override: false) ||= Hash.new { |h, k| h[k] = [] } ||= {} if .key?(attribute_name) && !override raise ArgumentError, "Option :#{attribute_name} already defined on #{self}, use override: true to redefine it" end [attribute_name] = values [attribute_name] = default.dup.freeze define_prefixed_helpers(attribute_name, values) define_values_helper(attribute_name, values) end |
#remove_option(attribute_name) ⇒ Object
33 34 35 36 |
# File 'lib/bulma_x/dsl/options.rb', line 33 def remove_option(attribute_name) .delete(attribute_name) .delete(attribute_name) end |