示例#1
0
        static void CompileInternal(Parser parser, ILGenerator ilGenerator)
        {
            CompilationVisitor visitor = new CompilationVisitor(parser.Context, ilGenerator);

            parser.ReadTopLevelStatements(visitor);
            visitor.EmitFooter();
        }
示例#2
0
            /// <summary>
            ///   Initializes a new instance.
            /// </summary>
            public Worker(int index, InvariantChecker context, StateStack stateStack, Func <RuntimeModel> createModel, int successorCapacity)
            {
                _index = index;

                _context     = context;
                _createModel = createModel;
                _model       = _createModel();
                _stateStack  = stateStack;

                var invariant = CompilationVisitor.Compile(_model.Formulas[0]);

                _transitions = new TransitionSet(_model, successorCapacity, invariant);
            }
示例#3
0
文件: Formula.cs 项目: cubeme/ssharp
 /// <summary>
 ///   Compiles the formula if it does not contain any temporal operators.
 /// </summary>
 public Func <bool> Compile()
 {
     return(CompilationVisitor.Compile(this));
 }