예제 #1
0
 public SyntaxTree(Syntax syntax_ , Tokenizer tk)
 {
     this.syntax = syntax_;
     this.tokenizer = tk;
 }
예제 #2
0
 // デバッグ用のparser
 public SyntaxTree ParseStatement(string program)
 {
     tokenizer = new Tokenizer();
     tokenizer.SetProgram(program);
     return StatementSequence();
     // ここ↑を適当に変えて、parseしたい文法をparseさせてテストする
 }
예제 #3
0
        // Unrollしたいプログラムをまるごと↓のstringに突っ込んで渡す。
        public string Unroll(string program)
        {
            tokenizer = new Tokenizer();
            tokenizer.SetProgram(program);

            SyntaxTree st;
            try
            {
                st = Program();
            }catch(UnrollerException ex)
            {
                throw new UnrollerException(ex + " @ line = " + tokenizer.Line);
            }
            return st.ToString();
        }
예제 #4
0
 // デバッグ用のparser
 public SyntaxTree ParseProgram(string program)
 {
     tokenizer = new Tokenizer();
     tokenizer.SetProgram(program);
     return Program();
     // ここ↑を適当に変えて、parseしたい文法をparseさせてテストする
 }