@@ -22,18 +22,23 @@ public protocol TypedRequest<RowDecoder> {
2222///
2323/// ### The SELECT Clause
2424///
25- /// - ``annotated(with:)-4qcem``
26- /// - ``annotated(with:)-6ehs4``
2725/// - ``annotated(with:)-1satx``
2826/// - ``annotated(with:)-6q3b``
2927/// - ``annotatedWhenConnected(with:)``
30- /// - ``select(_:)-30yzl``
31- /// - ``select(_:)-7e2y5``
3228/// - ``select(_:)-ruzy``
3329/// - ``select(_:)-37j4h``
3430/// - ``select(literal:)``
3531/// - ``select(sql:arguments:)``
3632/// - ``selectWhenConnected(_:)``
33+ ///
34+ /// ### Legacy APIs
35+ ///
36+ /// It is recommended to prefer the closure-based apis defined above.
37+ ///
38+ /// - ``annotated(with:)-4qcem``
39+ /// - ``annotated(with:)-6ehs4``
40+ /// - ``select(_:)-30yzl``
41+ /// - ``select(_:)-7e2y5``
3742public protocol SelectionRequest {
3843 /// Defines the result columns.
3944 ///
@@ -347,12 +352,17 @@ extension SelectionRequest {
347352/// ### The WHERE and JOIN ON Clauses
348353///
349354/// - ``all()``
350- /// - ``filter(_:)-48a4t``
351355/// - ``filter(_:)-6xr3d``
352356/// - ``filter(literal:)``
353357/// - ``filter(sql:arguments:)``
354358/// - ``filterWhenConnected(_:)``
355359/// - ``none()``
360+ ///
361+ /// ### Legacy APIs
362+ ///
363+ /// It is recommended to prefer the closure-based apis defined above.
364+ ///
365+ /// - ``filter(_:)-48a4t``
356366public protocol FilteredRequest {
357367 /// Filters the fetched rows with a boolean SQL expression.
358368 ///
@@ -478,7 +488,6 @@ extension FilteredRequest {
478488/// ### Instance Methods
479489///
480490/// - ``aliased(_:)-3k5h4``
481- /// - ``aliased(_:)-772vb``
482491/// - ``TableAlias``
483492///
484493/// ### The WHERE Clause
@@ -499,6 +508,12 @@ extension FilteredRequest {
499508/// ### The ORDER BY Clause
500509///
501510/// - ``orderByPrimaryKey()``
511+ ///
512+ /// ### Legacy APIs
513+ ///
514+ /// It is recommended to prefer record aliases over anonymous aliases.
515+ ///
516+ /// - ``aliased(_:)-772vb``
502517public protocol TableRequest {
503518 /// The name of the database table
504519 var databaseTableName : String { get }
@@ -508,7 +523,8 @@ public protocol TableRequest {
508523}
509524
510525extension TableRequest where Self: TypedRequest {
511- /// Returns a request that can be referred to with the provided alias.
526+ /// Returns a request that can be referred to with the provided
527+ /// anonymous alias.
512528 ///
513529 /// Use this method when you need to refer to this request from
514530 /// another request.
@@ -567,7 +583,8 @@ extension TableRequest where Self: TypedRequest {
567583 self . _aliased ( alias)
568584 }
569585
570- /// Returns a request that can be referred to with the provided alias.
586+ /// Returns a request that can be referred to with the provided
587+ /// record alias.
571588 ///
572589 /// Use this method when you need to refer to this request from
573590 /// another request.
@@ -622,8 +639,8 @@ extension TableRequest where Self: TypedRequest {
622639 /// // JOIN author a ON a.id = b.authorId
623640 /// // AND a.countryCode = 'FR'
624641 /// // WHERE b.publishDate >= a.deathDate
625- /// let bookAlias = TableAlias(name: "b")
626- /// let authorAlias = TableAlias(name: "a")
642+ /// let bookAlias = TableAlias<Book> (name: "b")
643+ /// let authorAlias = TableAlias<Author> (name: "a")
627644 /// let posthumousFrenchBooks = try Book.aliased(bookAlias)
628645 /// .joining(required: Book.author.aliased(authorAlias)
629646 /// .filter(sql: "a.countryCode = ?", arguments: ["FR"]))
@@ -953,8 +970,6 @@ extension TableRequest where Self: AggregatingRequest {
953970///
954971/// ### The GROUP BY Clause
955972///
956- /// - ``group(_:)-edak``
957- /// - ``group(_:)-4216o``
958973/// - ``group(_:)-2g7br``
959974/// - ``group(_:)-s6lb``
960975/// - ``group(literal:)``
@@ -963,11 +978,18 @@ extension TableRequest where Self: AggregatingRequest {
963978///
964979/// ### The HAVING Clause
965980///
966- /// - ``having(_:)-2ssg9``
967981/// - ``having(_:)-2oggh``
968982/// - ``having(literal:)``
969983/// - ``having(sql:arguments:)``
970984/// - ``havingWhenConnected(_:)``
985+ ///
986+ /// ### Legacy APIs
987+ ///
988+ /// It is recommended to prefer the closure-based apis defined above.
989+ ///
990+ /// - ``group(_:)-edak``
991+ /// - ``group(_:)-4216o``
992+ /// - ``having(_:)-2ssg9``
971993public protocol AggregatingRequest {
972994 /// Returns an aggregate request grouped on the given SQL expressions.
973995 ///
@@ -1235,8 +1257,6 @@ extension AggregatingRequest {
12351257///
12361258/// ### The ORDER BY Clause
12371259///
1238- /// - ``order(_:)-63rzl``
1239- /// - ``order(_:)-6co0m``
12401260/// - ``order(_:)-9d0hr``
12411261/// - ``order(_:)-35kv9``
12421262/// - ``order(literal:)``
@@ -1245,6 +1265,13 @@ extension AggregatingRequest {
12451265/// - ``reversed()``
12461266/// - ``unordered()``
12471267/// - ``withStableOrder()``
1268+ ///
1269+ /// ### Legacy APIs
1270+ ///
1271+ /// It is recommended to prefer the closure-based apis defined above.
1272+ ///
1273+ /// - ``order(_:)-63rzl``
1274+ /// - ``order(_:)-6co0m``
12481275public protocol OrderedRequest {
12491276 /// Sorts the fetched rows according to the given SQL ordering terms.
12501277 ///
@@ -1777,7 +1804,6 @@ extension JoinableRequest where Self: SelectionRequest {
17771804/// ### Instance Methods
17781805///
17791806/// - ``TableRequest/aliased(_:)-3k5h4``
1780- /// - ``TableRequest/aliased(_:)-772vb``
17811807/// - ``TableAlias``
17821808///
17831809/// ### The WITH Clause
@@ -1786,14 +1812,10 @@ extension JoinableRequest where Self: SelectionRequest {
17861812///
17871813/// ### The SELECT Clause
17881814///
1789- /// - ``SelectionRequest/annotated(with:)-4qcem``
1790- /// - ``SelectionRequest/annotated(with:)-6ehs4``
17911815/// - ``SelectionRequest/annotated(with:)-1satx``
17921816/// - ``SelectionRequest/annotated(with:)-6q3b``
17931817/// - ``SelectionRequest/annotatedWhenConnected(with:)``
17941818/// - ``distinct()``
1795- /// - ``SelectionRequest/select(_:)-30yzl``
1796- /// - ``SelectionRequest/select(_:)-7e2y5``
17971819/// - ``SelectionRequest/select(_:)-ruzy``
17981820/// - ``SelectionRequest/select(_:)-37j4h``
17991821/// - ``SelectionRequest/select(literal:)``
@@ -1803,7 +1825,6 @@ extension JoinableRequest where Self: SelectionRequest {
18031825/// ### The WHERE Clause
18041826///
18051827/// - ``FilteredRequest/all()``
1806- /// - ``FilteredRequest/filter(_:)-48a4t``
18071828/// - ``FilteredRequest/filter(_:)-6xr3d``
18081829/// - ``TableRequest/filter(id:)``
18091830/// - ``TableRequest/filter(ids:)``
@@ -1820,24 +1841,19 @@ extension JoinableRequest where Self: SelectionRequest {
18201841///
18211842/// ### The GROUP BY and HAVING Clauses
18221843///
1823- /// - ``AggregatingRequest/group(_:)-edak``
1824- /// - ``AggregatingRequest/group(_:)-4216o``
18251844/// - ``AggregatingRequest/group(_:)-2g7br``
18261845/// - ``AggregatingRequest/group(_:)-s6lb``
18271846/// - ``AggregatingRequest/group(literal:)``
18281847/// - ``AggregatingRequest/group(sql:arguments:)``
18291848/// - ``TableRequest/groupByPrimaryKey()``
18301849/// - ``AggregatingRequest/groupWhenConnected(_:)``
1831- /// - ``AggregatingRequest/having(_:)-2ssg9``
18321850/// - ``AggregatingRequest/having(_:)-2oggh``
18331851/// - ``AggregatingRequest/having(literal:)``
18341852/// - ``AggregatingRequest/having(sql:arguments:)``
18351853/// - ``AggregatingRequest/havingWhenConnected(_:)``
18361854///
18371855/// ### The ORDER BY Clause
18381856///
1839- /// - ``OrderedRequest/order(_:)-63rzl``
1840- /// - ``OrderedRequest/order(_:)-6co0m``
18411857/// - ``OrderedRequest/order(_:)-9d0hr``
18421858/// - ``OrderedRequest/order(_:)-35kv9``
18431859/// - ``OrderedRequest/order(literal:)``
@@ -1870,6 +1886,23 @@ extension JoinableRequest where Self: SelectionRequest {
18701886/// - ``SelectionRequest``
18711887/// - ``TableRequest``
18721888/// - ``TypedRequest``
1889+ ///
1890+ /// ### Legacy APIs
1891+ ///
1892+ /// It is recommended to prefer the closure-based apis defined above, as
1893+ /// well as record aliases over anonymous aliases.
1894+ ///
1895+ /// - ``TableRequest/aliased(_:)-772vb``
1896+ /// - ``SelectionRequest/annotated(with:)-4qcem``
1897+ /// - ``SelectionRequest/annotated(with:)-6ehs4``
1898+ /// - ``FilteredRequest/filter(_:)-48a4t``
1899+ /// - ``AggregatingRequest/group(_:)-edak``
1900+ /// - ``AggregatingRequest/group(_:)-4216o``
1901+ /// - ``AggregatingRequest/having(_:)-2ssg9``
1902+ /// - ``OrderedRequest/order(_:)-63rzl``
1903+ /// - ``OrderedRequest/order(_:)-6co0m``
1904+ /// - ``SelectionRequest/select(_:)-30yzl``
1905+ /// - ``SelectionRequest/select(_:)-7e2y5``
18731906public protocol DerivableRequest < RowDecoder> : AggregatingRequest , FilteredRequest ,
18741907 JoinableRequest , OrderedRequest ,
18751908 SelectionRequest , TableRequest
0 commit comments