class EasyConf::Configuration
Attributes
decoder[RW]
lookups[R]
Public Class Methods
new()
click to toggle source
# File lib/easy_conf/configuration.rb, line 8 def initialize @lookups = [] end
Public Instance Methods
de_register_lookup(klass)
click to toggle source
# File lib/easy_conf/configuration.rb, line 21 def de_register_lookup(klass) @lookups -= [klass] end
lookups=(lookups)
click to toggle source
# File lib/easy_conf/configuration.rb, line 12 def lookups=(lookups) @lookups = lookups.to_a end
register_lookup(klass)
click to toggle source
# File lib/easy_conf/configuration.rb, line 16 def register_lookup(klass) register_placeholder(klass.placeholder) @lookups << klass end
Private Instance Methods
check_placeholder_conflict!(placeholder)
click to toggle source
# File lib/easy_conf/configuration.rb, line 36 def check_placeholder_conflict!(placeholder) raise LookupNameConflictError.new(placeholder) if self.class.instance_methods(:false).include?(placeholder) end
register_placeholder(placeholder)
click to toggle source
# File lib/easy_conf/configuration.rb, line 26 def register_placeholder(placeholder) check_placeholder_conflict!(placeholder) instance_variable_set("@#{placeholder}_conf", OpenStruct.new) define_singleton_method(placeholder) do instance_variable_get("@#{placeholder}_conf") end end