Skip to content

Commit 64a48bb

Browse files
committed
wip
1 parent b374583 commit 64a48bb

File tree

6 files changed

+28
-26
lines changed

6 files changed

+28
-26
lines changed

Package.resolved

Lines changed: 3 additions & 3 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Sources/StructuredQueriesCore/Documentation.docc/Extensions/Select.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,9 @@
2222

2323
### Transforming queries
2424

25+
- ``unscoped``
26+
- ``all``
27+
- ``none``
2528
- ``map(_:)``
2629
- ``subscript(dynamicMember:)``
2730
- ``StructuredQueriesCore/+(_:_:)``

Sources/StructuredQueriesCore/Statements/Delete.swift

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -133,16 +133,6 @@ public struct Delete<From: Table, Returning> {
133133
returning: returning
134134
)
135135
}
136-
137-
public var unscoped: Delete<From, ()> {
138-
From.unscoped.delete()
139-
}
140-
141-
public var none: Self {
142-
var delete = self
143-
delete.isEmpty = true
144-
return delete
145-
}
146136
}
147137

148138
/// A convenience type alias for a non-`RETURNING ``Delete``.

Sources/StructuredQueriesCore/Statements/Select.swift

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1382,14 +1382,17 @@ extension Select {
13821382
)
13831383
}
13841384

1385+
/// Returns a fully unscoped version of this select statement.
13851386
public var unscoped: Where<From> {
13861387
From.unscoped
13871388
}
13881389

1390+
/// Returns this select statement unchanged.
13891391
public var all: Self {
13901392
self
13911393
}
13921394

1395+
/// Returns an empty select statement.
13931396
public var none: Self {
13941397
var select = self
13951398
select.isEmpty = true

Sources/StructuredQueriesCore/Statements/Update.swift

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -189,16 +189,6 @@ public struct Update<From: Table, Returning> {
189189
returning: returning
190190
)
191191
}
192-
193-
public var unscoped: Delete<From, ()> {
194-
From.unscoped.delete()
195-
}
196-
197-
public var none: Self {
198-
var delete = self
199-
delete.isEmpty = true
200-
return delete
201-
}
202192
}
203193

204194
/// A convenience type alias for a non-`RETURNING ``Update``.

Tests/StructuredQueriesTests/CommonTableExpressionTests.swift

Lines changed: 19 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -265,17 +265,33 @@ extension SnapshotTests {
265265
.select { IncompleteReminder.Columns(isFlagged: $0.isFlagged, title: $0.title) }
266266
} query: {
267267
Reminder
268-
.none
269268
.delete()
270269
.returning(\.title)
271270
}
272271
) {
273272
"""
274-
273+
WITH "incompleteReminders" AS (
274+
SELECT "reminders"."isFlagged" AS "isFlagged", "reminders"."title" AS "title"
275+
FROM "reminders"
276+
WHERE NOT ("reminders"."isCompleted")
277+
)
278+
DELETE FROM "reminders"
279+
RETURNING "reminders"."title"
275280
"""
276281
} results: {
277282
"""
278-
283+
┌────────────────────────────┐
284+
"Groceries"
285+
"Haircut"
286+
"Doctor appointment"
287+
"Take a walk"
288+
"Buy concert tickets"
289+
"Pick up kids from school"
290+
"Get laundry"
291+
"Take out trash"
292+
"Call accountant"
293+
"Send weekly emails"
294+
└────────────────────────────┘
279295
"""
280296
}
281297
}

0 commit comments

Comments
 (0)