lib/anyway/config.rb in anyway_config-2.0.2 vs lib/anyway/config.rb in anyway_config-2.0.3

- old
+ new

@@ -9,13 +9,11 @@ using Anyway::Ext::DeepFreeze using Anyway::Ext::Hash using(Module.new do refine Object do - def vm_object_id - (object_id << 1).to_s(16) - end + def vm_object_id() = (object_id << 1).to_s(16) end end) # Base config class # Provides `attr_config` method to describe @@ -70,13 +68,11 @@ def initialize(name) @name = name end - def apply_to(config) - config.send(name) - end + def apply_to(config) = config.send(name) end class << self def attr_config(*args, **hargs) new_defaults = hargs.deep_dup @@ -108,27 +104,25 @@ end def defaults return @defaults if instance_variable_defined?(:@defaults) - @defaults = - if superclass < Anyway::Config - superclass.defaults.deep_dup - else - new_empty_config - end + if superclass < Anyway::Config + superclass.defaults.deep_dup + else + new_empty_config + end => @defaults end def config_attributes return @config_attributes if instance_variable_defined?(:@config_attributes) - @config_attributes = - if superclass < Anyway::Config - superclass.config_attributes.dup - else - [] - end + if superclass < Anyway::Config + superclass.config_attributes.dup + else + [] + end => @config_attributes end def required(*names) unless (unknown_names = (names - config_attributes)).empty? raise ArgumentError, "Unknown config param: #{unknown_names.join(",")}" @@ -138,16 +132,15 @@ end def required_attributes return @required_attributes if instance_variable_defined?(:@required_attributes) - @required_attributes = - if superclass < Anyway::Config - superclass.required_attributes.dup - else - [] - end + if superclass < Anyway::Config + superclass.required_attributes.dup + else + [] + end => @required_attributes end def on_load(*names, &block) raise ArgumentError, "Either methods or block should be specified, not both" if block_given? && !names.empty? @@ -159,16 +152,15 @@ end def load_callbacks return @load_callbacks if instance_variable_defined?(:@load_callbacks) - @load_callbacks = - if superclass <= Anyway::Config - superclass.load_callbacks.dup - else - [] - end + if superclass <= Anyway::Config + superclass.load_callbacks.dup + else + [] + end => @load_callbacks end def config_name(val = nil) return (@explicit_config_name = val.to_s) unless val.nil? @@ -184,30 +176,25 @@ if superclass.respond_to?(:explicit_config_name) superclass.explicit_config_name end end - def explicit_config_name? - !explicit_config_name.nil? - end + def explicit_config_name?() = !explicit_config_name.nil? def env_prefix(val = nil) return (@env_prefix = val.to_s.upcase) unless val.nil? return @env_prefix if instance_variable_defined?(:@env_prefix) - @env_prefix = - if superclass < Anyway::Config && superclass.explicit_config_name? - superclass.env_prefix - else - config_name.upcase - end + if superclass < Anyway::Config && superclass.explicit_config_name? + superclass.env_prefix + else + config_name.upcase + end => @env_prefix end - def new_empty_config - {} - end + def new_empty_config() = {} private def define_config_accessor(*names) names.each do |name| @@ -226,13 +213,13 @@ end def accessors_module return @accessors_module if instance_variable_defined?(:@accessors_module) - @accessors_module = Module.new.tap do |mod| + Module.new.tap do |mod| include mod - end + end => @accessors_module end def build_config_name unless name raise "Please, specify config name explicitly for anonymous class " \ @@ -296,11 +283,11 @@ end def load(overrides = nil) base_config = self.class.defaults.deep_dup - trace = Tracing.capture do + Tracing.capture do Tracing.trace!(:defaults) { base_config } load_from_sources( base_config, name: config_name, @@ -311,11 +298,11 @@ if overrides Tracing.trace!(:load) { overrides } base_config.deep_merge!(overrides) end - end + end => trace base_config.each do |key, val| write_config_attr(key.to_sym, val) end @@ -337,17 +324,13 @@ base_config.deep_merge!(loader.call(**options)) end base_config end - def dig(*keys) - values.dig(*keys) - end + def dig(*keys) = values.dig(*keys) - def to_h - values.deep_dup.deep_freeze - end + def to_h() = values.deep_dup.deep_freeze def dup self.class.allocate.tap do |new_config| %i[config_name env_prefix __trace__].each do |ivar| new_config.instance_variable_set(:"@#{ivar}", send(ivar).dup) @@ -358,16 +341,12 @@ def resolve_config_path(name, env_prefix) Anyway.env.fetch(env_prefix).delete("conf") || Settings.default_config_path.call(name) end - def deconstruct_keys(keys) - values.deconstruct_keys(keys) - end + def deconstruct_keys(keys) = values.deconstruct_keys(keys) - def to_source_trace - __trace__&.to_h - end + def to_source_trace() = __trace__&.to_h def inspect "#<#{self.class}:0x#{vm_object_id.rjust(16, "0")} config_name=\"#{config_name}\" env_prefix=\"#{env_prefix}\" " \ "values=#{values.inspect}>" end