Sha256: 838bf0fc4c282397e3d7ffc1f1ce74c8289ef3359fcce2d9e5d6bad27aaef9ea

Contents?: true

Size: 616 Bytes

Versions: 24

Compression:

Stored size: 616 Bytes

Contents

class Rad::Config  
  def subset; raise "you probably mistuped, it's config, not hash" end
  
  def initialize hash = {}
    hash.each do |k, v|
      instance_variable_set :"@#{k}", v
    end
  end
  
  def deep_clone
    clone = Rad::Config.new
    instance_variable_names.each do |k|
      clone.instance_variable_set k, instance_variable_get(k).deep_clone
    end
    clone
  end
  alias_method :clone, :deep_clone
    
  protected
    def method_missing m, *args
      if m =~ /=$/
        instance_variable_set :"@#{m[0..-2]}", args.first
      else
        instance_variable_get :"@#{m}"
      end
    end
end

Version data entries

24 entries across 24 versions & 1 rubygems

Version Path
rad_core-0.2.6 lib/rad/environment/_config.rb
rad_core-0.2.5 lib/rad/environment/_config.rb
rad_core-0.2.4 lib/rad/environment/_config.rb
rad_core-0.2.3 lib/rad/environment/_config.rb
rad_core-0.2.2 lib/rad/environment/_config.rb
rad_core-0.2.1 lib/rad/environment/_config.rb
rad_core-0.2.0 lib/rad/environment/_config.rb
rad_core-0.0.30 lib/rad/environment/_config.rb
rad_core-0.0.29 lib/rad/environment/_config.rb
rad_core-0.0.28 lib/rad/environment/_config.rb
rad_core-0.0.27 lib/rad/environment/_config.rb
rad_core-0.0.26 lib/rad/environment/_config.rb
rad_core-0.0.25 lib/rad/environment/_config.rb
rad_core-0.0.24 lib/rad/environment/_config.rb
rad_core-0.0.23 lib/rad/environment/_config.rb
rad_core-0.0.22 lib/rad/environment/_config.rb
rad_core-0.0.21 lib/rad/environment/_config.rb
rad_core-0.0.20 lib/rad/environment/_config.rb
rad_core-0.0.19 lib/rad/environment/_config.rb
rad_core-0.0.18 lib/rad/environment/_config.rb