class Interscript::DSL::Aliases

Attributes

node[RW]

Public Class Methods

new(&block) click to toggle source
# File lib/interscript/dsl/aliases.rb, line 6
def initialize(&block)
  @node = {}
  self.instance_exec(&block)
end

Public Instance Methods

def_alias(name, value) click to toggle source
# File lib/interscript/dsl/aliases.rb, line 11
def def_alias(name, value)
  if Interscript::Node::Item::Alias === name
    name = name.name
  end

  unless Symbol === name
    raise TypeError, "Alias name must be a Symbol, given #{name.class}"
  end

  puts "def_alias(#{name.inspect}, #{thing.inspect})" if $DEBUG
  @node[name] = Interscript::Node::AliasDef.new(name, value)
end