Exemplo n.º 1
0
        //CodeGenStart
        public bool VisitExprAggregateFunction(ExprAggregateFunction expr, TCtx arg)
        {
            var res = this.Visit(expr, "AggregateFunction", arg, out var argOut) && this.Accept("Name", expr.Name, argOut) && this.Accept("Expression", expr.Expression, argOut);

            this.VisitPlainProperty("IsDistinct", expr.IsDistinct, argOut);
            this._visitor.EndVisitExpr(expr, arg);
            return(res);
        }
Exemplo n.º 2
0
        //Functions

        public bool VisitExprAggregateFunction(ExprAggregateFunction exprAggregateFunction, IExpr?parent)
        {
            exprAggregateFunction.Name.Accept(this, exprAggregateFunction);
            this.Builder.Append('(');
            if (exprAggregateFunction.IsDistinct)
            {
                this.Builder.Append("DISTINCT ");
            }

            exprAggregateFunction.Expression.Accept(this, exprAggregateFunction);
            this.Builder.Append(')');

            return(true);
        }
Exemplo n.º 3
0
 //CodeGenStart
 public static ExprAggregateFunction WithName(this ExprAggregateFunction original, ExprFunctionName newName)
 => new ExprAggregateFunction(name: newName, expression: original.Expression, isDistinct: original.IsDistinct);
Exemplo n.º 4
0
 public static ExprAggregateFunction WithIsDistinct(this ExprAggregateFunction original, Boolean newIsDistinct)
 => new ExprAggregateFunction(name: original.Name, expression: original.Expression, isDistinct: newIsDistinct);
Exemplo n.º 5
0
 public static ExprAggregateFunction WithExpression(this ExprAggregateFunction original, ExprValue newExpression)
 => new ExprAggregateFunction(name: original.Name, expression: newExpression, isDistinct: original.IsDistinct);