Esempio n. 1
0
        public static void RunNormalAndStepByStep( string script, Action<RuntimeObj> test, GlobalContext ctx = null )
        {
            var e = ExprAnalyser.AnalyseString( script );

            // Tests the empty, default, visitor: no change must have been made to the AST.
            var emptyVisitor = new ExprVisitor();
            Assert.That( emptyVisitor.VisitExpr( e ), Is.SameAs( e ) );

            // Evaluates result directly.
            RuntimeObj syncResult = ScriptEngine.Evaluate( e, ctx );
            test( syncResult );

            // Step-by-step evaluation.
            ScriptEngine engine = new ScriptEngine( ctx );
            engine.Breakpoints.BreakAlways = true;
            ExecAsync( script, test, null, e, syncResult, engine, true );
        }
Esempio n. 2
0
 protected internal override ExprAST Accept(ExprVisitor visitor)
 {
     return(visitor.VisitIfExprAST(this));
 }
Esempio n. 3
0
 public override TResult Accept <TResult, TContext>(ExprVisitor <TResult, TContext> visitor, TContext ctx)
 {
     return(visitor.VisitIfExpAST(ctx, this));
 }
Esempio n. 4
0
 internal override void Accept(ExprVisitor visitor)
 {
     visitor.Visit(this);
     _innerExpression.Accept(visitor);
 }
Esempio n. 5
0
 internal override void Accept(ExprVisitor visitor)
 {
     visitor.Visit(this);
     SpreadObject.Accept(visitor);
 }
Esempio n. 6
0
 protected internal virtual ExprAST Accept(ExprVisitor visitor)
 {
     return visitor.VisitExtension(this);
 }
 public abstract R Accept(ExprVisitor <R> visitor);
Esempio n. 8
0
 internal override void Accept(ExprVisitor visitor)
 {
     visitor.Visit(this);
     Target?.Accept(visitor);
 }
Esempio n. 9
0
 public BindingExplorer(ExprVisitor interpreter)
 {
     this.interpreter = interpreter;
 }
Esempio n. 10
0
 protected internal virtual ExprAST VisitChildren(ExprVisitor visitor)
 {
     return(visitor.Visit(this));
 }
Esempio n. 11
0
 internal abstract void Accept(ExprVisitor visitor);
Esempio n. 12
0
 protected internal virtual ExprAST Accept(ExprVisitor visitor)
 {
     return(visitor.VisitExtension(this));
 }
Esempio n. 13
0
 internal override void Accept(ExprVisitor visitor)
 {
     visitor.Visit(this);
     LeftHandSide.Accept(visitor);
     RightHandSide.Accept(visitor);
 }
Esempio n. 14
0
 protected internal virtual ExprAST VisitChildren(ExprVisitor visitor)
 {
     return visitor.Visit(this);
 }
Esempio n. 15
0
 public override R Accept <R>(ExprVisitor <R> visitor)
 {
     return(visitor.Visit(this));
 }
Esempio n. 16
0
 public GramInterpreter()
 {
     interpreter = new ExprVisitor();
 }
Esempio n. 17
0
 protected internal override ExprAST Accept(ExprVisitor visitor)
 {
     return visitor.VisitForExprAST(this);
 }
Esempio n. 18
0
 internal override void Accept(ExprVisitor visitor)
 {
     visitor.Visit(this);
     _obj.Accept(visitor);
 }
 public override R Accept(ExprVisitor <R> visitor)
 {
     return(visitor.VisitSetExpr(this));
 }
Esempio n. 20
0
 public abstract TResult Accept <TResult, TContext>(ExprVisitor <TResult, TContext> visitor, TContext ctx);
Esempio n. 21
0
        public bool ParseInt(out int value)
        {
            bool parsed = false;

            value = 0;
            if (IsValid)
            {
                try
                {
                    NCalc.Expression expr = new NCalc.Expression(Expression);
                    LogicalExpression pexpr = NCalc.Expression.Compile(Expression, false);
                    ExprVisitor v = new ExprVisitor();

                    pexpr.Accept(v);

                    if (!v.ComplexExpression)
                    {
                        value = Convert.ToInt32(expr.Evaluate());
                        parsed = true;
                    }
                }
                catch (Exception)
                {
                }
            }

            return parsed;
        }
Esempio n. 22
0
 internal override void Accept(ExprVisitor visitor)
 {
     visitor.Visit(this);
     First.Accept(visitor);
     Next.Accept(visitor);
 }