44
44
import org .hibernate .metamodel .model .domain .BasicDomainType ;
45
45
import org .hibernate .metamodel .model .domain .DomainType ;
46
46
import org .hibernate .metamodel .model .domain .JpaMetamodel ;
47
- import org .hibernate .metamodel .model .domain .SimpleDomainType ;
48
47
import org .hibernate .metamodel .model .domain .SingularPersistentAttribute ;
49
48
import org .hibernate .metamodel .model .domain .internal .BasicTypeImpl ;
50
49
import org .hibernate .metamodel .model .domain .spi .JpaMetamodelImplementor ;
77
76
import org .hibernate .query .sqm .SetOperator ;
78
77
import org .hibernate .query .sqm .SqmExpressible ;
79
78
import org .hibernate .query .sqm .SqmPathSource ;
80
- import org .hibernate .query .sqm .SqmQuerySource ;
81
79
import org .hibernate .query .sqm .TemporalUnit ;
82
80
import org .hibernate .query .sqm .TrimSpec ;
83
81
import org .hibernate .query .sqm .UnaryArithmeticOperator ;
121
119
import org .hibernate .query .sqm .tree .expression .SqmLiteralNull ;
122
120
import org .hibernate .query .sqm .tree .expression .SqmModifiedSubQueryExpression ;
123
121
import org .hibernate .query .sqm .tree .expression .SqmOver ;
122
+ import org .hibernate .query .sqm .tree .expression .SqmStar ;
124
123
import org .hibernate .query .sqm .tree .expression .SqmToDuration ;
125
124
import org .hibernate .query .sqm .tree .expression .SqmTrimSpecification ;
126
125
import org .hibernate .query .sqm .tree .expression .SqmTuple ;
182
181
import static java .util .Arrays .asList ;
183
182
import static org .hibernate .query .internal .QueryHelper .highestPrecedenceType ;
184
183
import static org .hibernate .query .sqm .TrimSpec .fromCriteriaTrimSpec ;
185
- import static org .hibernate .query .sqm .internal .TypecheckUtil .assertComparable ;
186
184
187
185
/**
188
186
* Acts as a JPA {@link jakarta.persistence.criteria.CriteriaBuilder} by
@@ -855,6 +853,15 @@ public SqmExpression<Long> countDistinct(Expression<?> argument) {
855
853
);
856
854
}
857
855
856
+ @ Override
857
+ public SqmExpression <Long > count () {
858
+ return getFunctionDescriptor ( "count" ).generateSqmExpression (
859
+ new SqmStar ( this ),
860
+ null ,
861
+ queryEngine
862
+ );
863
+ }
864
+
858
865
@ Override
859
866
public JpaExpression <Integer > sign (Expression <? extends Number > x ) {
860
867
return getFunctionDescriptor ( "sign" ).generateSqmExpression (
@@ -4280,7 +4287,7 @@ public <T> SqmExpression<T[]> arrayFill(T element, Integer elementCount) {
4280
4287
}
4281
4288
4282
4289
@ Override
4283
- public < T > SqmExpression <String > arrayToString (
4290
+ public SqmExpression <String > arrayToString (
4284
4291
Expression <? extends Object []> arrayExpression ,
4285
4292
Expression <String > separatorExpression ) {
4286
4293
return getFunctionDescriptor ( "array_to_string" ).generateSqmExpression (
@@ -4291,7 +4298,7 @@ public <T> SqmExpression<String> arrayToString(
4291
4298
}
4292
4299
4293
4300
@ Override
4294
- public < T > SqmExpression <String > arrayToString (
4301
+ public SqmExpression <String > arrayToString (
4295
4302
Expression <? extends Object []> arrayExpression ,
4296
4303
String separator ) {
4297
4304
return getFunctionDescriptor ( "array_to_string" ).generateSqmExpression (
0 commit comments