Class: Vedeu::Options

Inherits:
Object
  • Object
show all
Defined in:
lib/vedeu/options.rb

Overview

An internal class for Vedeu to provide a consistent interface to options used by many classes.

Instance Method Summary collapse

Constructor Details

#initialize(options = {}, defaults = {}) ⇒ Options

Returns a new instance of Options.

Parameters:

  • options (Hash) (defaults to: {})
  • defaults (Hash) (defaults to: {})


10
11
12
13
14
15
16
17
18
# File 'lib/vedeu/options.rb', line 10

def initialize(options = {}, defaults = {})
  @options  = options  || {}
  @defaults = defaults || {}

  @defaults.merge!(@options).each do |key, value|
    instance_variable_set("@#{key}", value)
    self.class.send(:define_method, key) { value }
  end
end