Exemplo n.º 1
0
 public Parser(string text, ExecFuncEvaluator exec_func_evaluator, IVariableValueResolver compile_time_constants, bool consume_whole_text)
 {
     m_Tokenizer            = new Tokenizer.Tokenizer(text);
     m_ExecFuncEvaluator    = exec_func_evaluator;
     m_CompileTimeConstants = compile_time_constants == null ? (IVariableValueResolver) new VariableValueResolver() : compile_time_constants;
     m_ConsumeWholeText     = consume_whole_text;
 }
Exemplo n.º 2
0
        static void Main(string[] args)
        {
            Tokenizer t = new Tokenizer();

            t.Tokenize("if(12 == 2) { 1+45; ~ \"iets\"6;} else {} while(1==2) { show(); }");
            //t.Tokenize("var x = 3; var y = x + 3;");
            //t.Tokenize("var x = 5; var y = 3 + 6 * x; if ( x < 3 ) { }");

            LinkedListNode<Token> to = t.TokenList.First;
            while (to != null)
            {
                Token token = to.Value;
                System.Console.WriteLine(token.Text + " : " +token.Description + ", at level: "+token.Level);
                to = to.Next;
            }

            t.ValidateTokens();

            Listitem action = BaseCompiler.ActionList.First;

            while (action != null)
            {
                Console.WriteLine(action.GetType());
                action = action.Next;
            }

            VirtualMachine vm = new VirtualMachine();
            vm.action = (Actions.Action) BaseCompiler.ActionList.First;
            vm.runCode();

            System.Console.ReadLine();
        }
Exemplo n.º 3
0
        public void MutationTests(string input, SpecificTokenType[] tokenArr)
        {
            Tokenizer.Tokenizer tokenizer = new Tokenizer.Tokenizer();
            var tokens = tokenizer.Tokenize(input);

            Assert.Equal(tokens.Select(x => x.SpecificTokenType).ToArray(), tokenArr);
        }
Exemplo n.º 4
0
 public Parser(string text, ExecFuncEvaluator exec_func_evaluator, IVariableValueResolver compile_time_constants, bool consume_whole_text)
 {
     m_Tokenizer = new Tokenizer.Tokenizer(text);
     m_ExecFuncEvaluator = exec_func_evaluator;
     m_CompileTimeConstants = compile_time_constants==null ? (IVariableValueResolver)new VariableValueResolver() : compile_time_constants;
     m_ConsumeWholeText = consume_whole_text;
 }