示例#1
0
        public ToInteger MakeToInteger(Expression expression)
        {
            var n = expression as ToInteger;

            if (n == null)
            {
                n = new ToInteger(MakeGuardedCast(expression));
            }
            return(n);
        }
示例#2
0
 public override void Visit(ToInteger node) { Visit(node, Types.Operations.Convert.ToInt32); }
示例#3
0
 public override void Visit(ToInteger node) { Visit((ConversionExpression)node); }
示例#4
0
 public override void Visit(ToInteger node) { base.Visit(node); node.ValueType = GetType(node); }
示例#5
0
 internal static mdr.ValueTypes GetType(ToInteger expression) { return Types.Operations.Convert.ToInt32.ReturnType(expression.ValueType); }
示例#6
0
 public override void Visit(ToInteger node)
 {
     Visit((ConversionExpression)node);
 }
示例#7
0
 public ToInteger MakeToInteger(Expression expression)
 {
   var n = expression as ToInteger;
   if (n == null)
   {
     n = new ToInteger(MakeGuardedCast(expression));
   }
   return n;
 }
示例#8
0
 public abstract void Visit(ToInteger node);
示例#9
0
 public override void Visit(ToInteger node)
 {
   PushLocation(node);
   VisitNode(node.Expression);
   Call(Types.Operations.Stack.ToInteger, 1, 1);
   PopLocation();
 }
示例#10
0
 public override void Visit(ToInteger node) { AssignToImplicitReturn(node); }