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); }
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)); }
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)); }
protected internal virtual Expression VisitNhSum(NhSumExpression expression) { return(VisitNhAggregated(expression)); }