Example #1
0
        protected HqlTreeNode VisitNhSum(NhSumExpression expression)
        {
            var sum      = _hqlTreeBuilder.Sum(VisitExpression(expression.Expression).AsExpression());
            var cast     = _hqlTreeBuilder.Cast(sum, expression.Type);
            var coalesce = _hqlTreeBuilder.Coalesce(cast, _hqlTreeBuilder.Constant(0));

            return(coalesce);
        }
Example #2
0
 protected HqlTreeNode VisitNhSum(NhSumExpression expression)
 {
     return(_hqlTreeBuilder.Cast(_hqlTreeBuilder.Sum(VisitExpression(expression.Expression).AsExpression()), expression.Type));
 }
        protected virtual Expression BaseVisitNhSum(NhSumExpression expression)
        {
            Expression nx = base.VisitExpression(expression.Expression);

            return(nx != expression.Expression ? new NhSumExpression(nx) : expression);
        }
 protected virtual Expression VisitNhSum(NhSumExpression expression)
 {
     return(VisitUnhandledItem <NhSumExpression, Expression>(expression, "VisitNhSum", BaseVisitNhSum));
 }
 protected virtual Expression VisitNhSum(NhSumExpression expression)
 {
     return(expression.Accept(this));
 }
Example #6
0
 protected HqlTreeNode VisitNhSum(NhSumExpression expression)
 {
     return(IsCastRequired("sum", expression.Expression, expression.Type)
                         ? (HqlTreeNode)_hqlTreeBuilder.Cast(_hqlTreeBuilder.Sum(VisitExpression(expression.Expression).AsExpression()), expression.Type)
                         : _hqlTreeBuilder.TransparentCast(_hqlTreeBuilder.Sum(VisitExpression(expression.Expression).AsExpression()), expression.Type));
 }
Example #7
0
 protected internal virtual Expression VisitNhSum(NhSumExpression expression)
 {
     return(VisitNhAggregated(expression));
 }