class Textpow::SyntaxProxy

at load time we do not know all patterns / all syntaxes so we store a proxy, that tries to find the correct syntax at runtime

Public Class Methods

new(included_name, syntax) click to toggle source
# File lib/textpow/syntax.rb, line 10
def initialize(included_name, syntax)
  @syntax = syntax
  @included_name = included_name
end

Public Instance Methods

method_missing(method, *args, &block) click to toggle source
# File lib/textpow/syntax.rb, line 15
def method_missing method, *args, &block
  if @proxy ||= proxy
    @proxy.send(method, *args, &block)
  else
    STDERR.puts "Failed proxying #{@proxy_name}.#{method}(#{args.join(', ')})" if $DEBUG
  end
end

Private Instance Methods

proxy() click to toggle source
# File lib/textpow/syntax.rb, line 25
def proxy
  case @included_name
  when /^#/
    @syntax.repository and @syntax.repository[@included_name[1..-1]]
  when "$self", "$base"
    @syntax
  else
    @syntax.syntaxes[@included_name] || Textpow.syntax(@included_name)
  end
end