class Engine2::Schemes

Attributes

builtin[R]
user[R]

Public Class Methods

new() click to toggle source
# File lib/engine2/scheme.rb, line 14
def initialize
    @builtin = {}
    @user = {}
end

Public Instance Methods

[](name, raise = true) click to toggle source
# File lib/engine2/scheme.rb, line 25
def [] name, raise = true
    scheme = @builtin[name] || @user[name]
    raise E2Error.new("Scheme #{name} not found") if !scheme && raise
    scheme
end
define_scheme(name, &blk) click to toggle source
# File lib/engine2/scheme.rb, line 19
def define_scheme name, &blk
    schemes = Engine2::core_loaded ? @user : @builtin
    raise E2Error.new("Scheme '#{name}' already defined") if schemes[name]
    schemes[name] = blk
end