Expression
public struct Expression<T, V> : CustomStringConvertible, DynamicKeyPath where T : WhereExpressionTrait
Type-safe keyPath chain usable in query/fetch expressions.
let expression: Where<Pet>.Expression = (\.master ~ \.name)
let owner = CoreStore.fetchOne(
From<Pet>().where(expression == "John")
)
-
Currently supports
SingleTarget
andCollectionTarget
.Declaration
Swift
public typealias Trait = T
-
Declaration
Swift
public let cs_keyPathString: String
-
Declaration
Swift
public typealias ObjectType = D
-
Declaration
Swift
public typealias ValueType = V
-
Declaration
Swift
public var description: String { get }
Where.Expression where D: NSManagedObject, T == Where<D>.CollectionTarget, V: AllowedObjectiveCCollectionKeyPathValue
-
Creates a
Where.Expression
clause for COUNTlet dogsWithPlaymates = CoreStore.fetchAll(From<Dog>().where((\.master ~ \.pets).count() > 1))
Declaration
Swift
public func count() -> Where<D>.Expression<T, Int>
Where.Expression where D: NSManagedObject, T == Where<D>.CollectionTarget, V: AllowedObjectiveCKeyPathValue
-
Creates a
Where.Expression
clause for ANYlet dogsWithBadNamingSense = CoreStore.fetchAll(From<Dog>().where((\.master ~ \.pets ~ \.name).any() > "Spot"))
Declaration
Swift
public func any() -> Where<D>.Expression<T, V>
-
Creates a
Where.Expression
clause for ALLlet allPlaymatePuppies = CoreStore.fetchAll(From<Dog>().where((\.master ~ \.pets ~ \.age).all() > 5))
Declaration
Swift
public func all() -> Where<D>.Expression<T, V>
-
Creates a
Where.Expression
clause for NONElet dogs = CoreStore.fetchAll(From<Dog>().where((\.master ~ \.pets ~ \.name).any() > "Spot"))
Declaration
Swift
public func none() -> Where<D>.Expression<T, V>
-
Creates a
Where.Expression
clause for COUNTlet dogsWithPlaymates = CoreStore.fetchAll(From<Dog>().where((\.master ~ \.pets).count() > 1))
Declaration
Swift
public func count() -> Where<D>.Expression<T, Int>
-
Creates a
Where.Expression
clause for ANYlet dogsWithBadNamingSense = CoreStore.fetchAll(From<Dog>().where((\.master ~ \.pets ~ \.name).any() > "Spot"))
Declaration
Swift
public func any() -> Where<D>.Expression<T, V>
-
Creates a
Where.Expression
clause for ALLlet allPlaymatePuppies = CoreStore.fetchAll(From<Dog>().where((\.master ~ \.pets ~ \.age).all() > 5))
Declaration
Swift
public func all() -> Where<D>.Expression<T, V>
-
Creates a
Where.Expression
clause for NONElet dogs = CoreStore.fetchAll(From<Dog>().where((\.master ~ \.pets ~ \.name).any() > "Spot"))
Declaration
Swift
public func none() -> Where<D>.Expression<T, V>