Class: BallotBox::Config

Inherits:
Hash
  • Object
show all
Defined in:
lib/ballot_box/config.rb

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(other = {}) ⇒ Config

Returns a new instance of Config.


30
31
32
33
# File 'lib/ballot_box/config.rb', line 30

def initialize(other={})
  merge!(other)
  self[:routes] ||= { "/ballot_box/vote" => 'Class' }
end

Class Method Details

.hash_accessor(*names) ⇒ Object

Creates an accessor that simply sets and reads a key in the hash:

class Config < Hash

hash_accessor :routes

end

config = Config.new config.routes = {'/posts/vote' => 'Post' } config #=> {'/posts/vote' => 'Post' }


14
15
16
17
18
19
20
21
22
23
24
25
26
# File 'lib/ballot_box/config.rb', line 14

def self.hash_accessor(*names) #:nodoc:
  names.each do |name|
    class_eval <<-METHOD, __FILE__, __LINE__ + 1
      def #{name}
        self[:#{name}]
      end

      def #{name}=(value)
        self[:#{name}] = value
      end
    METHOD
  end
end