testtinydoc.java

来自「plugin for eclipse」· Java 代码 · 共 60 行

JAVA
60
字号
/*
 * Created on Aug 8, 2005
 *
 * TODO To change the template for this generated file go to
 * Window - Preferences - Java - Code Style - Code Templates
 */
package isis.anp.test;

import isis.anp.nesc.TinyDocLexer;
import isis.anp.nesc.TinyDocParser;
import isis.anp.nesc.tinydoc.TinyDoc;

import java.io.FileInputStream;
import java.io.FileNotFoundException;
import antlr.RecognitionException;
import antlr.TokenStreamException;
import antlr.TokenStreamHiddenTokenFilter;
import antlr.collections.AST;

/**
 * @author sallai
 * 
 * TODO To change the template for this generated type comment go to Window -
 * Preferences - Java - Code Style - Code Templates
 */
public class TestTinyDoc {

    public static void main(String[] args) {
        String fn = "c:/tmp/tinydoc/test0.txt";
        try {
            TinyDocLexer lexer = new TinyDocLexer(new FileInputStream(fn));

            lexer.setTokenObjectClass("antlr.CommonHiddenStreamToken");
            TokenStreamHiddenTokenFilter filter = new TokenStreamHiddenTokenFilter(lexer);
             
            filter.hide(TinyDocLexer.WS);
            filter.hide(TinyDocLexer.NL);
            
            TinyDocParser parser = new TinyDocParser(filter);
            parser.setASTNodeClass("antlr.CommonASTWithHiddenTokens"); 
            
            TinyDoc tdObj = parser.translationUnit();
            AST ast = parser.getAST();
            ASTFrameFactory.create(ast, "fn");
            
            System.out.println(tdObj.toString());
            
        } catch (FileNotFoundException e) {
            System.out.println("File not found");
            e.printStackTrace();
        } catch (TokenStreamException e) {
            System.out.println("Error reading token stream: "+e.getMessage());
            e.printStackTrace();
        } catch (RecognitionException e) {
            System.out.println("Recognition exception: "+e.getMessage());
            e.printStackTrace();
        }
    }
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?