예제 #1
0
def to_expression(e):
    s_stream = antlr3.StringStream(e)
    lexer = Lexer(s_stream)
    t_stream = antlr3.CommonTokenStream(lexer)
    parser = Parser(t_stream)
    try:
        ast = parser.expression()
        return parse_e(ast.tree)
    except antlr3.RecognitionException:
        traceback.print_stack()
예제 #2
0
def to_statements(mtd, s):
    s_stream = antlr3.StringStream('{' + s + '}')
    lexer = Lexer(s_stream)
    t_stream = antlr3.CommonTokenStream(lexer)
    parser = Parser(t_stream)
    try:
        ast = parser.block()
        return parse(mtd, ast.tree.getChildren())
    except antlr3.RecognitionException:
        traceback.print_stack()
예제 #3
0
def to_expression(e):
    s_stream = antlr3.StringStream(e)
    lexer = Lexer(s_stream)
    t_stream = antlr3.CommonTokenStream(lexer)
    parser = Parser(t_stream)
    try:
        ast = parser.expression()
        return parse_e(ast.tree)
    except antlr3.RecognitionException:
        traceback.print_stack()
예제 #4
0
def to_statements(mtd, s):
  s_stream = antlr3.StringStream('{' + s + '}')
  lexer = Lexer(s_stream)
  t_stream = antlr3.CommonTokenStream(lexer)
  parser = Parser(t_stream)
  try:
    ast = parser.block()
    return parse(mtd, ast.tree.getChildren())
  except antlr3.RecognitionException:
    traceback.print_stack()
예제 #5
0
def toAST(files):
  ast = antlr3.tree.CommonTree(None)
  for fname in files:
    logging.debug("reading: " + os.path.normpath(fname))
    f_stream = antlr3.FileStream(fname)
    lexer = Lexer(f_stream)
    t_stream = antlr3.CommonTokenStream(lexer)
    parser = Parser(t_stream)
    try: _ast = parser.compilationUnit()
    except antlr3.RecognitionException:
      traceback.print_stack()
      sys.exit(1)
    ast.addChild(_ast.tree)
  return ast
예제 #6
0
파일: util.py 프로젝트: jack51706/pasket
def toAST(files):
  ast = antlr3.tree.CommonTree(None)
  for fname in files:
    logging.debug("reading: " + os.path.normpath(fname))
    f_stream = antlr3.FileStream(fname)
    lexer = Lexer(f_stream)
    t_stream = antlr3.CommonTokenStream(lexer)
    parser = Parser(t_stream)
    try: _ast = parser.compilationUnit()
    except antlr3.RecognitionException:
      traceback.print_stack()
      sys.exit(1)
    ast.addChild(_ast.tree)
  return ast