Ejemplo n.º 1
0
 internal VfpJoinExpression(VfpExpressionKind kind, TypeUsage collectionOfRowResultType, VfpExpressionBinding left, VfpExpressionBinding right, VfpExpression condition)
     : base(kind, collectionOfRowResultType)
 {
     Left          = ArgumentUtility.CheckNotNull("left", left);
     Right         = ArgumentUtility.CheckNotNull("right", right);
     JoinCondition = ArgumentUtility.CheckNotNull("condition", condition);
 }
 public BinaryFragment(VfpExpressionKind kind, ISqlFragment left, ISqlFragment right)
     : base(SqlFragmentType.Binary)
 {
     Kind  = kind;
     Left  = left;
     Right = right;
 }
Ejemplo n.º 3
0
 internal VfpApplyExpression(VfpExpressionKind applyKind,
                             TypeUsage resultRowCollectionTypeUsage,
                             VfpExpressionBinding input,
                             VfpExpressionBinding apply)
     : base(applyKind, resultRowCollectionTypeUsage)
 {
     Input = ArgumentUtility.CheckNotNull("input", input);
     Apply = ArgumentUtility.CheckNotNull("apply", apply);
 }
        public static string GetOperator(VfpExpressionKind kind)
        {
            switch (kind)
            {
            case VfpExpressionKind.And:
                return(" AND ");

            case VfpExpressionKind.Divide:
                return(" / ");

            case VfpExpressionKind.Equals:
                return(" = ");

            case VfpExpressionKind.GreaterThan:
                return(" > ");

            case VfpExpressionKind.GreaterThanOrEquals:
                return(" >= ");

            case VfpExpressionKind.LessThan:
                return(" < ");

            case VfpExpressionKind.LessThanOrEquals:
                return(" <= ");

            case VfpExpressionKind.Minus:
                return(" - ");

            case VfpExpressionKind.Modulo:
                return(" % ");

            case VfpExpressionKind.Multiply:
                return(" * ");

            case VfpExpressionKind.Or:
                return(" OR ");

            case VfpExpressionKind.Plus:
                return(" + ");

            case VfpExpressionKind.NotEquals:
                return(" <> ");

            default:
                throw new InvalidOperationException("Invalid ExpressionKind:  " + kind.ToString());
            }
        }
 public static VfpJoinExpression Join(VfpExpressionKind kind, TypeUsage collectionOfRowResultType, VfpExpressionBinding left, VfpExpressionBinding right, VfpExpression joinCondition)
 {
     return(new VfpJoinExpression(kind, collectionOfRowResultType, left, right, joinCondition));
 }
Ejemplo n.º 6
0
 protected VfpExpression(VfpExpressionKind expressionKind, TypeUsage resultType)
 {
     ExpressionKind = ArgumentUtility.CheckIsDefined("expressionKind", expressionKind);
     ResultType     = ArgumentUtility.CheckNotNull("resultType", resultType);
 }
Ejemplo n.º 7
0
 protected VfpUnaryExpression(VfpExpressionKind kind, TypeUsage resultType, VfpExpression argument)
     : base(kind, resultType)
 {
     Argument = ArgumentUtility.CheckNotNull("argument", argument);
 }
Ejemplo n.º 8
0
 internal VfpOfTypeExpression(VfpExpressionKind expressionKind, TypeUsage collectionResultType, VfpExpression argument, TypeUsage type)
     : base(expressionKind, collectionResultType, argument)
 {
     OfType = ArgumentUtility.CheckNotNull("type", type);
 }
Ejemplo n.º 9
0
 internal VfpBinaryExpression(VfpExpressionKind kind, TypeUsage type, VfpExpression left, VfpExpression right)
     : base(kind, type)
 {
     Left  = ArgumentUtility.CheckNotNull("left", left);
     Right = ArgumentUtility.CheckNotNull("right", right);
 }
Ejemplo n.º 10
0
 internal VfpIsOfExpression(VfpExpressionKind isOfKind, TypeUsage booleanResultType, VfpExpression argument, TypeUsage isOfType)
     : base(isOfKind, booleanResultType, argument)
 {
     OfType = ArgumentUtility.CheckNotNull("isOfType", isOfType);
 }
 internal VfpComparisonExpression(VfpExpressionKind kind, TypeUsage resultType, VfpExpression left, VfpExpression right)
     : base(kind, resultType, left, right)
 {
 }
 internal VfpArithmeticExpression(VfpExpressionKind kind, TypeUsage numericResultType, VfpExpressionList arguments)
     : base(kind, numericResultType)
 {
     Arguments = arguments;
 }
Ejemplo n.º 13
0
 internal VfpQuantifierExpression(VfpExpressionKind kind, TypeUsage booleanResultType, VfpExpressionBinding input, VfpExpression predicate)
     : base(kind, booleanResultType)
 {
     Input     = ArgumentUtility.CheckNotNull("input", input);
     Predicate = ArgumentUtility.CheckNotNull("predicate", predicate);
 }