private Expression MakeBoxJoinOrCall(Expression left, List<Expression> right, SnapshotSpan? openBracket, SnapshotSpan? closeBracket)
        {
            if (right.Count == 1)
                return Expression.BoxJoin(left, right[0], openBracket);

            return Expression.Call(left, right, openBracket);
        }
 public CallExpression(Expression target, IEnumerable<Expression> arguments, SnapshotSpan? operatorSpan)
     : base(ExpressionType.Call)
 {
     _target = target;
     _arguments = arguments.ToList();
     _operatorSpan = operatorSpan;
 }
Exemplo n.º 3
0
 public BinaryExpression(ExpressionType type, Expression left, Expression right, SnapshotSpan? operatorSpan)
     : base(type)
 {
     this._left = left;
     this._right = right;
     this._operatorSpan = operatorSpan;
 }
 public ConditionExpression(Expression condition, Expression then, Expression @else, SnapshotSpan? impliesOperatorSpan, SnapshotSpan? elseOperatorSpan)
     : base(ExpressionType.Implies)
 {
     _condition = condition;
     _then = then;
     _else = @else;
     _impliesOperatorSpan = impliesOperatorSpan;
     _elseOperatorSpan = elseOperatorSpan;
 }
Exemplo n.º 5
0
 public static DeclarationExpression Declaration(
     IEnumerable<Expression> names,
     Expression type,
     bool isPrivate,
     bool isDisjointNames,
     bool isDisjointType,
     SnapshotSpan? privateSpan,
     SnapshotSpan? disjointNamesSpan,
     SnapshotSpan? colonSpan,
     SnapshotSpan? disjointTypeSpan)
 {
     throw new NotImplementedException();
 }
Exemplo n.º 6
0
 public static BinaryExpression AndAlso(Expression left, Expression right, SnapshotSpan? operatorSpan)
 {
     return MakeBinary(ExpressionType.AndAlso, left, right, operatorSpan);
 }
Exemplo n.º 7
0
 public static BinaryExpression Override(Expression left, Expression right, SnapshotSpan? operatorSpan)
 {
     return MakeBinary(ExpressionType.Override, left, right, operatorSpan);
 }
Exemplo n.º 8
0
        protected static SnapshotSpan? TryGetSpan(Expression expression)
        {
            if (expression == null)
                return null;

            return expression.Span;
        }
Exemplo n.º 9
0
 public static BinaryExpression MakeBinary(ExpressionType type, Expression left, Expression right, SnapshotSpan? operatorSpan)
 {
     return new BinaryExpression(type, left, right, operatorSpan);
 }
Exemplo n.º 10
0
 public static BinaryExpression LeftShift(Expression left, Expression right, SnapshotSpan? operatorSpan)
 {
     return MakeBinary(ExpressionType.LeftShift, left, right, operatorSpan);
 }
Exemplo n.º 11
0
 public static RelationExpression ArrowProduct(Expression left, Expression right, SnapshotSpan? operatorSpan)
 {
     throw new NotImplementedException();
 }
Exemplo n.º 12
0
 public static BinaryExpression Equal(Expression left, Expression right, SnapshotSpan? operatorSpan)
 {
     return MakeBinary(ExpressionType.Equal, left, right, operatorSpan);
 }
Exemplo n.º 13
0
 public static BinaryExpression Difference(Expression left, Expression right, SnapshotSpan? operatorSpan)
 {
     return MakeBinary(ExpressionType.Difference, left, right, operatorSpan);
 }
Exemplo n.º 14
0
 public UnaryExpression(ExpressionType type, Expression expression, SnapshotSpan? operatorSpan)
     : base(type)
 {
     this._expression = expression;
     this._operatorSpan = operatorSpan;
 }
Exemplo n.º 15
0
 public static ConditionExpression Implies(Expression condition, Expression then, Expression @else, SnapshotSpan? impliesOperatorSpan, SnapshotSpan? elseOperatorSpan)
 {
     throw new NotImplementedException();
 }
Exemplo n.º 16
0
 public static UnaryExpression Not(Expression expression, SnapshotSpan? operatorSpan)
 {
     return MakeUnary(ExpressionType.Not, expression, operatorSpan);
 }
Exemplo n.º 17
0
 public static CallExpression Call(Expression left, IEnumerable<Expression> right, SnapshotSpan? operatorSpan)
 {
     return new CallExpression(left, right, operatorSpan);
 }
Exemplo n.º 18
0
 public static BinaryExpression RightRotate(Expression left, Expression right, SnapshotSpan? operatorSpan)
 {
     return MakeBinary(ExpressionType.RightRotate, left, right, operatorSpan);
 }
Exemplo n.º 19
0
 public static BinaryExpression BoxJoin(Expression left, Expression right, SnapshotSpan? operatorSpan)
 {
     return MakeBinary(ExpressionType.BoxJoin, left, right, operatorSpan);
 }
Exemplo n.º 20
0
 public static UnaryExpression MakeUnary(ExpressionType type, Expression expression, SnapshotSpan? operatorSpan)
 {
     return new UnaryExpression(type, expression, operatorSpan);
 }
Exemplo n.º 21
0
 public static UnaryExpression Transpose(Expression expression, SnapshotSpan? operatorSpan)
 {
     return MakeUnary(ExpressionType.Transpose, expression, operatorSpan);
 }
Exemplo n.º 22
0
 public static BlockExpression Group(Expression expression, SnapshotSpan? openBraceSpan, SnapshotSpan? closeBraceSpan)
 {
     throw new NotImplementedException();
 }
Exemplo n.º 23
0
 public static UnaryExpression ReflexiveTransitiveClosure(Expression expression, SnapshotSpan? operatorSpan)
 {
     return MakeUnary(ExpressionType.ReflexiveTransitiveClosure, expression, operatorSpan);
 }
Exemplo n.º 24
0
 public static BinaryExpression Intersection(Expression left, Expression right, SnapshotSpan? operatorSpan)
 {
     return MakeBinary(ExpressionType.Intersection, left, right, operatorSpan);
 }
Exemplo n.º 25
0
 public static BinaryExpression RangeRestriction(Expression left, Expression right, SnapshotSpan? operatorSpan)
 {
     return MakeBinary(ExpressionType.RangeRestriction, left, right, operatorSpan);
 }