class Protobuf::Rpc::Env
def self.hash_accessor(*names) #:nodoc:
config.app #=> Bar
config[:app] = Bar
config[:app] #=> Foo
config.app = Foo
config = Config.new
end
hash_accessor :app
class Config < Hash
Creates an accessor that simply sets and reads a key in the hash:
def self.hash_accessor(*names) #:nodoc: names.each do |name| name_str = name.to_s.freeze define_method name do self[name_str] end define_method "#{name}=" do |value| self[name_str] = value end define_method "#{name}?" do !self[name_str].nil? end end end
def initialize(options = {})
def initialize(options = {}) merge!(options) self['worker_id'] = ::Thread.current.object_id.to_s(16) end