class ConfigModule::ConfigOption
Public Class Methods
wrap(data)
click to toggle source
# File lib/config_module/config_option.rb, line 7 def self.wrap data if data.is_a? Hash new data else data end end
Public Instance Methods
[](name)
click to toggle source
# File lib/config_module/config_option.rb, line 38 def [] name @table[name.to_sym] end
each_key() { |key| ... }
click to toggle source
# File lib/config_module/config_option.rb, line 23 def each_key return to_enum(__method__) { @table.size } unless block_given? @table.each_key { |key| yield key } self end
each_pair() { |pair| ... }
click to toggle source
# File lib/config_module/config_option.rb, line 15 def each_pair return to_enum(__method__) { @table.size } unless block_given? @table.each_pair { |pair| yield pair } self end
Also aliased as: each
each_value() { |value| ... }
click to toggle source
# File lib/config_module/config_option.rb, line 30 def each_value return to_enum(__method__) { @table.size } unless block_given? @table.each_value { |value| yield value } self end
has_key?(key)
click to toggle source
# File lib/config_module/config_option.rb, line 43 def has_key? key @table.has_key? key.to_sym end
Also aliased as: key?
method_missing(name, *args, &block)
click to toggle source
Calls superclass method
# File lib/config_module/config_option.rb, line 48 def method_missing name, *args, &block result = super if result || @table.has_key?(name) self.class.wrap result else raise( ConfigOption::NotFoundError.new(name, self, caller), "Key not found: #{name}", caller(3) ) end rescue NoMethodError => error raise( ConfigOption::NotFoundError.new(name, self, error), error.message, caller(3) ) end
new_ostruct_member!(name)
click to toggle source
:reek: TooManyStatements { max_statements: 10 }
# File lib/config_module/config_option.rb, line 73 def new_ostruct_member! name name = name.to_sym unless singleton_class.method_defined? name define_singleton_method(name) { self.class.wrap @table[name] } define_singleton_method("#{name}=") { |val| modifiable[name] = val } end name end
Also aliased as: new_ostruct_member
Private Instance Methods
respond_to_missing?(name, include_all)
click to toggle source
Calls superclass method
# File lib/config_module/config_option.rb, line 66 def respond_to_missing? name, include_all @table.has_key?(name) || super end