示例#1
0
        public SyntaxScanner(List <LexemDataCell> table)
        {
            lexemTable    = new List <LexemDataCell>(table);
            stack         = new SymbolsStack(SpecialSymbs.START_SYMB);
            movingMatrix  = new MovingMatrix();
            rules         = new RulesMatrix();
            usedRulesList = new List <int>();

            //Logger.Debug("SyntaxScanner created!");
        }
示例#2
0
        static void MovingMatrixTest()
        {
            MovingMatrix m = new MovingMatrix();

            char?[] trueRez = { null, '=', null, '>', '<' };
            Debug.Assert(trueRez[0].Equals(m.GetMove(SpecialSymbs.START_SYMB, SpecialSymbs.END_SYMB)));
            Debug.Assert(trueRez[1].Equals(m.GetMove("for", "(")));
            Debug.Assert(trueRez[2].Equals(m.GetMove("a", "a")));
            Debug.Assert(trueRez[3].Equals(m.GetMove(";", ")")));
            Debug.Assert(trueRez[4].Equals(m.GetMove(";", "for")));
        }