ScopeAdapter
public struct ScopeAdapter : RowAdapter
ScopeAdapter is a row adapter that lets you define scopes on rows.
// Two adapters
let fooAdapter = ColumnMapping(["value": "foo"])
let barAdapter = ColumnMapping(["value": "bar"])
// Define scopes
let adapter = ScopeAdapter([
"foo": fooAdapter,
"bar": barAdapter])
// Fetch
let sql = "SELECT 'foo' AS foo, 'bar' AS bar"
let row = try Row.fetchOne(db, sql, adapter: adapter)!
// Scoped rows:
if let fooRow = row.scoped(on: "foo") {
fooRow["value"] // "foo"
}
if let barRow = row.scopeed(on: "bar") {
barRow["value"] // "bar"
}
-
Creates a scoped adapter.
Declaration
Swift
public init(_ scopes: [String: RowAdapter])
Parameters
scopes
A dictionary that maps scope names to row adapters.