Esempio n. 1
0
        private object LessOrEqualNode(LessOrEqualNode le)
        {
            var l = Evaluate(le.l);
            var r = Evaluate(le.r);

            return((decimal)l <= (decimal)r);
        }
        public void Visit(LessOrEqualNode node)
        {
            var right = Nodes.Pop();
            var left  = Nodes.Pop();

            Nodes.Push(new LessOrEqualNode(left, right));
        }
Esempio n. 3
0
        public Reference <IAstNode> CreateLessOrEqualOperation(string definition, Reference <IAstNode> leftExpression, Reference <IAstNode> rightExpression)
        {
            var lessOrEqualNode = new LessOrEqualNode(
                m_ids.Next,
                definition,
                leftExpression,
                rightExpression);

            return(DomainItemRegistration <ILessOrEqualNode>(lessOrEqualNode));
        }
 public void Visit(LessOrEqualNode node)
 {
     node.Left.Accept(this);
     node.Right.Accept(this);
     node.Accept(_visitor);
 }
Esempio n. 5
0
 public void Visit(LessOrEqualNode node)
 {
 }
Esempio n. 6
0
 /// <summary>
 /// This method prints the lessNode
 /// </summary>
 /// <param name="lessNode">The node to print.</param>
 /// <returns>Returns null</returns>
 public override object Visit(LessOrEqualNode lessNode)
 {
     Print("LessOrEqualNode");
     return(null);
 }
Esempio n. 7
0
 private TypeInfo Visit(LessOrEqualNode node, MethodBuilder builder, CodegenContext context)
 {
     return(BinaryOperatorVisit(node, builder, (x) => x.LessOrEqual(), context));
 }
Esempio n. 8
0
 /// <summary>
 /// This method type checks the LessOrEqualNode node in the AST.
 /// </summary>
 /// <param name="lessNode">The node to check.</param>
 /// <returns>Less or Equal operator type context</returns>
 public override object Visit(LessOrEqualNode lessNode)
 {
     return(new TypeContext(OP_LEQ));
 }
 /// <summary>
 /// This method visits a less or equal node
 /// </summary>
 /// <param name="lessNode">The name of the node</param>
 /// <returns>It returns &lt;= </returns>
 public override object Visit(LessOrEqualNode lessNode)
 {
     return(" <= ");
 }
Esempio n. 10
0
 /// <summary>
 /// This visits a less or equal node
 /// </summary>
 /// <param name="lessNode">The visited node</param>
 /// <returns></returns>
 public abstract object Visit(LessOrEqualNode lessNode);
Esempio n. 11
0
 private ValInfo Visit(LessOrEqualNode node)
 {
     return(BinaryOperator(node, (x, y) => x <= y));
 }
Esempio n. 12
0
 private TypeDescriptor Visit(LessOrEqualNode node, Context context)
 {
     return(RelationOperator(node, context));
 }