Class: OptionsHash

Inherits:
Object
  • Object
show all
Defined in:
lib/options_hash.rb,
lib/options_hash/version.rb

Defined Under Namespace

Modules: ClassMethods, InstanceMethods Classes: Option

Constant Summary collapse

VERSION =
"0.0.1"

Class Method Summary collapse

Class Method Details

.inherited(subclass) ⇒ Object



23
24
25
26
27
# File 'lib/options_hash.rb', line 23

def self.inherited(subclass)
  subclass.send :extend,  ClassMethods
  subclass.send :include, InstanceMethods
  subclass
end

.parse(options, &block) ⇒ Object



33
34
35
36
37
38
# File 'lib/options_hash.rb', line 33

def parse options, &block
  block_given? or raise ArgumentError, 'block required', caller(2)
  Class.new(self, &block).parse(options)
rescue ArgumentError => error
  raise ArgumentError, error.message, caller(2)
end