public ParserBinder(ParserBinderType OpType, string VariableName, ParserType VariableType, ParserExpression Expr)
 {
     this.OpType       = OpType;
     this.VariableName = VariableName;
     this.Expr         = Expr;
     this.VariableType = VariableType;
 }
Exemple #2
0
        public Expression Run(ParserExpression Expression)
        {
            // First run the type visitor to make the type info available.
            var typeVisitor = new TypeVisitor();
            var type        = Expression.Accept(typeVisitor);

            return(Expression.Accept(this));
        }
 public ParserRec(ParserExpression Input, ParserExpression Start,
                  string NumVariableName, string AccVariableName, ParserType AccType, ParserExpression Step)
 {
     this.Input           = Input;
     this.Start           = Start;
     this.NumVariableName = NumVariableName;
     this.AccVariableName = AccVariableName;
     this.Step            = Step;
     this.AccType         = AccType;
 }
 public ParserUnaryOp(ParserUnaryOpType OpType, ParserExpression Expr)
 {
     this.OpType = OpType;
     this.Expr   = Expr;
 }
 public ParserPair(ParserExpression Left, ParserExpression Right)
 {
     this.Left  = Left;
     this.Right = Right;
 }
 public ParserApp(ParserExpression Lambda, ParserExpression Expression)
 {
     this.Lambda     = Lambda;
     this.Expression = Expression;
 }
 public ParserBinaryOp(ParserBinaryOpType OpType, ParserExpression Left, ParserExpression Right)
 {
     this.OpType = OpType;
     this.Left   = Left;
     this.Right  = Right;
 }
Exemple #8
0
 public Sequent(Dictionary <string, ParserType> Context, ParserExpression Expression)
 {
     this.Context    = Context;
     this.Expression = Expression;
 }