Class: Engine2::Schemes
Instance Attribute Summary collapse
-
#builtin ⇒ Object
readonly
Returns the value of attribute builtin.
-
#schemes ⇒ Object
readonly
Returns the value of attribute schemes.
Instance Method Summary collapse
- #[](name) ⇒ Object
- #clear ⇒ Object
- #define_scheme(name, &blk) ⇒ Object
-
#initialize ⇒ Schemes
constructor
A new instance of Schemes.
- #merge! ⇒ Object
Constructor Details
#initialize ⇒ Schemes
Returns a new instance of Schemes.
10 11 12 13 |
# File 'lib/engine2/scheme.rb', line 10 def initialize @builtin = {} @schemes = {} end |
Instance Attribute Details
#builtin ⇒ Object (readonly)
Returns the value of attribute builtin.
9 10 11 |
# File 'lib/engine2/scheme.rb', line 9 def builtin @builtin end |
#schemes ⇒ Object (readonly)
Returns the value of attribute schemes.
9 10 11 |
# File 'lib/engine2/scheme.rb', line 9 def schemes @schemes end |
Instance Method Details
#[](name) ⇒ Object
25 26 27 28 29 |
# File 'lib/engine2/scheme.rb', line 25 def [] name scheme = @schemes[name] raise E2Error.new("Scheme #{name} not found") unless scheme scheme end |
#clear ⇒ Object
21 22 23 |
# File 'lib/engine2/scheme.rb', line 21 def clear @schemes = {} end |
#define_scheme(name, &blk) ⇒ Object
15 16 17 18 19 |
# File 'lib/engine2/scheme.rb', line 15 def define_scheme name, &blk schemes = Engine2::core_loading ? @builtin : @schemes raise "Scheme '#{name}' already defined" if schemes[name] schemes[name] = blk end |