module Rubasteme

Constants

RELEASE
VERSION

Public Class Methods

lexer(obj) click to toggle source
# File lib/rubasteme.rb, line 8
def self.lexer(obj)
  Rbscmlex::Lexer.new(obj)
end
make_version(name) click to toggle source
# File lib/rubasteme/version.rb, line 7
def self.make_version(name)
  mod_name = name.downcase.split("::").join(".")
  "(#{mod_name} :version #{VERSION} :release #{RELEASE})"
end
parse(source) click to toggle source
# File lib/rubasteme.rb, line 12
def self.parse(source)
  parser.parse(lexer(source))
end
parser() click to toggle source
# File lib/rubasteme/parser.rb, line 5
def self.parser
  Parser::Parser.new
end
phase1_parse(source) click to toggle source
# File lib/rubasteme/parser/phase1_parser.rb, line 5
def self.phase1_parse(source)
  Parser::Phase1Parser.new.parse(Rbscmlex.lexer(source))
end
phase2_parse(source) click to toggle source
# File lib/rubasteme/parser/phase2_parser.rb, line 5
def self.phase2_parse(source)
  nodes = Parser::Phase1Parser.new.parse(Rbscmlex.lexer(source))
  Parser::Phase2Parser.new.parse(nodes)
end
write(ast_node, of = STDOUT) click to toggle source
# File lib/rubasteme/ast.rb, line 5
def self.write(ast_node, of = STDOUT)
  of.puts ast_node.to_s
end