예제 #1
0
        public void TestEvaluate()
        {
            var expression = new RightShiftExpression(
                Mock.Of <IExpression>(e => e.Evaluate(It.IsAny <IDictionary <string, object> >()) == (object)0x1001),
                Mock.Of <IExpression>(e => e.Evaluate(It.IsAny <IDictionary <string, object> >()) == (object)0x0001),
                new Context(ExpressiveOptions.None));

            Assert.AreEqual(0x1001 >> 0x0001, expression.Evaluate(null));
        }
예제 #2
0
 public override void Visit(RightShiftExpression node)
 {
     Visit((BinaryExpression)node);
 }
예제 #3
0
 public override void Visit(RightShiftExpression node)
 {
     UpdateType(node, TypeCalculator.GetType(node));
 }
예제 #4
0
 public override void Visit(RightShiftExpression node)
 {
     unfinishedClone = new RightShiftExpression(GetCloneOf(node.Left), GetCloneOf(node.Right));
     base.Visit(node);
 }
예제 #5
0
 public override void Visit(RightShiftExpression node)
 {
     AssignToImplicitReturn(node);
 }