@@ -4551,6 +4551,46 @@ public <T> SqmExpression<T[]> arrayFill(T element, Integer elementCount) {
4551
4551
);
4552
4552
}
4553
4553
4554
+ @ Override
4555
+ public <T > SqmExpression <String > arrayToString (
4556
+ SqmExpression <? extends Object []> arrayExpression ,
4557
+ SqmExpression <String > separatorExpression ) {
4558
+ return getFunctionDescriptor ( "array_to_string" ).generateSqmExpression (
4559
+ asList ( arrayExpression , separatorExpression ),
4560
+ null ,
4561
+ queryEngine
4562
+ );
4563
+ }
4564
+
4565
+ @ Override
4566
+ public <T > SqmExpression <String > arrayToString (
4567
+ SqmExpression <? extends Object []> arrayExpression ,
4568
+ String separator ) {
4569
+ return getFunctionDescriptor ( "array_to_string" ).generateSqmExpression (
4570
+ asList ( arrayExpression , value ( separator ) ),
4571
+ null ,
4572
+ queryEngine
4573
+ );
4574
+ }
4575
+
4576
+ @ Override
4577
+ public <T > SqmExpression <String > arrayToString (Object [] array , SqmExpression <String > separatorExpression ) {
4578
+ return getFunctionDescriptor ( "array_to_string" ).generateSqmExpression (
4579
+ asList ( value ( array ), separatorExpression ),
4580
+ null ,
4581
+ queryEngine
4582
+ );
4583
+ }
4584
+
4585
+ @ Override
4586
+ public <T > SqmExpression <String > arrayToString (Object [] array , String separator ) {
4587
+ return getFunctionDescriptor ( "array_to_string" ).generateSqmExpression (
4588
+ asList ( value ( array ), value ( separator ) ),
4589
+ null ,
4590
+ queryEngine
4591
+ );
4592
+ }
4593
+
4554
4594
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
4555
4595
// Array functions for collection types
4556
4596
@@ -4586,6 +4626,90 @@ public <E> SqmExpression<Integer> collectionPosition(
4586
4626
);
4587
4627
}
4588
4628
4629
+ @ Override
4630
+ public <T > SqmExpression <int []> collectionPositions (
4631
+ SqmExpression <? extends Collection <? super T >> collectionExpression ,
4632
+ SqmExpression <T > elementExpression ) {
4633
+ return getFunctionDescriptor ( "array_positions" ).generateSqmExpression (
4634
+ asList ( collectionExpression , elementExpression ),
4635
+ null ,
4636
+ queryEngine
4637
+ );
4638
+ }
4639
+
4640
+ @ Override
4641
+ public <T > SqmExpression <int []> collectionPositions (
4642
+ SqmExpression <? extends Collection <? super T >> collectionExpression ,
4643
+ T element ) {
4644
+ return getFunctionDescriptor ( "array_positions" ).generateSqmExpression (
4645
+ asList ( collectionExpression , value ( element ) ),
4646
+ null ,
4647
+ queryEngine
4648
+ );
4649
+ }
4650
+
4651
+ @ Override
4652
+ public <T > SqmExpression <int []> collectionPositions (
4653
+ Collection <? super T > collection ,
4654
+ SqmExpression <T > elementExpression ) {
4655
+ return getFunctionDescriptor ( "array_positions" ).generateSqmExpression (
4656
+ asList ( value ( collection ), elementExpression ),
4657
+ null ,
4658
+ queryEngine
4659
+ );
4660
+ }
4661
+
4662
+ @ Override
4663
+ public <T > SqmExpression <int []> collectionPositions (Collection <? super T > collection , T element ) {
4664
+ return getFunctionDescriptor ( "array_positions" ).generateSqmExpression (
4665
+ asList ( value ( collection ), value ( element ) ),
4666
+ null ,
4667
+ queryEngine
4668
+ );
4669
+ }
4670
+
4671
+ @ Override
4672
+ public <T > SqmExpression <List <Integer >> collectionPositionsList (
4673
+ SqmExpression <? extends Collection <? super T >> collectionExpression ,
4674
+ SqmExpression <T > elementExpression ) {
4675
+ return getFunctionDescriptor ( "array_positions_list" ).generateSqmExpression (
4676
+ asList ( collectionExpression , elementExpression ),
4677
+ null ,
4678
+ queryEngine
4679
+ );
4680
+ }
4681
+
4682
+ @ Override
4683
+ public <T > SqmExpression <List <Integer >> collectionPositionsList (
4684
+ SqmExpression <? extends Collection <? super T >> collectionExpression ,
4685
+ T element ) {
4686
+ return getFunctionDescriptor ( "array_positions_list" ).generateSqmExpression (
4687
+ asList ( collectionExpression , value ( element ) ),
4688
+ null ,
4689
+ queryEngine
4690
+ );
4691
+ }
4692
+
4693
+ @ Override
4694
+ public <T > SqmExpression <List <Integer >> collectionPositionsList (
4695
+ Collection <? super T > collection ,
4696
+ SqmExpression <T > elementExpression ) {
4697
+ return getFunctionDescriptor ( "array_positions_list" ).generateSqmExpression (
4698
+ asList ( value ( collection ), elementExpression ),
4699
+ null ,
4700
+ queryEngine
4701
+ );
4702
+ }
4703
+
4704
+ @ Override
4705
+ public <T > SqmExpression <List <Integer >> collectionPositionsList (Collection <? super T > collection , T element ) {
4706
+ return getFunctionDescriptor ( "array_positions_list" ).generateSqmExpression (
4707
+ asList ( value ( collection ), value ( element ) ),
4708
+ null ,
4709
+ queryEngine
4710
+ );
4711
+ }
4712
+
4589
4713
@ Override
4590
4714
public SqmExpression <Integer > collectionLength (SqmExpression <? extends Collection <?>> collectionExpression ) {
4591
4715
return getFunctionDescriptor ( "array_length" ).generateSqmExpression (
@@ -5462,84 +5586,42 @@ public <T> SqmExpression<Collection<T>> collectionFill(T element, Integer elemen
5462
5586
}
5463
5587
5464
5588
@ Override
5465
- public <T > SqmExpression <int []> collectionPositions (
5466
- SqmExpression <? extends Collection <? super T >> collectionExpression ,
5467
- SqmExpression <T > elementExpression ) {
5468
- return getFunctionDescriptor ( "array_positions " ).generateSqmExpression (
5469
- asList ( collectionExpression , elementExpression ),
5589
+ public <T > SqmExpression <String > collectionToString (
5590
+ SqmExpression <? extends Collection <?>> collectionExpression ,
5591
+ SqmExpression <String > separatorExpression ) {
5592
+ return getFunctionDescriptor ( "array_to_string " ).generateSqmExpression (
5593
+ asList ( collectionExpression , separatorExpression ),
5470
5594
null ,
5471
5595
queryEngine
5472
5596
);
5473
5597
}
5474
5598
5475
5599
@ Override
5476
- public <T > SqmExpression <int []> collectionPositions (
5477
- SqmExpression <? extends Collection <? super T >> collectionExpression ,
5478
- T element ) {
5479
- return getFunctionDescriptor ( "array_positions" ).generateSqmExpression (
5480
- asList ( collectionExpression , value ( element ) ),
5481
- null ,
5482
- queryEngine
5483
- );
5484
- }
5485
-
5486
- @ Override
5487
- public <T > SqmExpression <int []> collectionPositions (
5488
- Collection <? super T > collection ,
5489
- SqmExpression <T > elementExpression ) {
5490
- return getFunctionDescriptor ( "array_positions" ).generateSqmExpression (
5491
- asList ( value ( collection ), elementExpression ),
5492
- null ,
5493
- queryEngine
5494
- );
5495
- }
5496
-
5497
- @ Override
5498
- public <T > SqmExpression <int []> collectionPositions (Collection <? super T > collection , T element ) {
5499
- return getFunctionDescriptor ( "array_positions" ).generateSqmExpression (
5500
- asList ( value ( collection ), value ( element ) ),
5501
- null ,
5502
- queryEngine
5503
- );
5504
- }
5505
-
5506
- @ Override
5507
- public <T > SqmExpression <List <Integer >> collectionPositionsList (
5508
- SqmExpression <? extends Collection <? super T >> collectionExpression ,
5509
- SqmExpression <T > elementExpression ) {
5510
- return getFunctionDescriptor ( "array_positions_list" ).generateSqmExpression (
5511
- asList ( collectionExpression , elementExpression ),
5512
- null ,
5513
- queryEngine
5514
- );
5515
- }
5516
-
5517
- @ Override
5518
- public <T > SqmExpression <List <Integer >> collectionPositionsList (
5519
- SqmExpression <? extends Collection <? super T >> collectionExpression ,
5520
- T element ) {
5521
- return getFunctionDescriptor ( "array_positions_list" ).generateSqmExpression (
5522
- asList ( collectionExpression , value ( element ) ),
5600
+ public <T > SqmExpression <String > collectionToString (
5601
+ SqmExpression <? extends Collection <?>> collectionExpression ,
5602
+ String separator ) {
5603
+ return getFunctionDescriptor ( "array_to_string" ).generateSqmExpression (
5604
+ asList ( collectionExpression , value ( separator ) ),
5523
5605
null ,
5524
5606
queryEngine
5525
5607
);
5526
5608
}
5527
5609
5528
5610
@ Override
5529
- public <T > SqmExpression <List < Integer >> collectionPositionsList (
5530
- Collection <? super T > collection ,
5531
- SqmExpression <T > elementExpression ) {
5532
- return getFunctionDescriptor ( "array_positions_list " ).generateSqmExpression (
5533
- asList ( value ( collection ), elementExpression ),
5611
+ public <T > SqmExpression <String > collectionToString (
5612
+ Collection <?> collection ,
5613
+ SqmExpression <String > separatorExpression ) {
5614
+ return getFunctionDescriptor ( "array_to_string " ).generateSqmExpression (
5615
+ asList ( value ( collection ), separatorExpression ),
5534
5616
null ,
5535
5617
queryEngine
5536
5618
);
5537
5619
}
5538
5620
5539
5621
@ Override
5540
- public <T > SqmExpression <List < Integer >> collectionPositionsList (Collection <? super T > collection , T element ) {
5541
- return getFunctionDescriptor ( "array_positions_list " ).generateSqmExpression (
5542
- asList ( value ( collection ), value ( element ) ),
5622
+ public <T > SqmExpression <String > collectionToString (Collection <?> collection , String separator ) {
5623
+ return getFunctionDescriptor ( "array_to_string " ).generateSqmExpression (
5624
+ asList ( value ( collection ), value ( separator ) ),
5543
5625
null ,
5544
5626
queryEngine
5545
5627
);
0 commit comments