YapDatabaseHooksBitMask
NS_OPTIONS(NSUInteger, YapDatabaseHooksBitMask) {
/**
* When a row is inserted into the databaase (new collection/key tuple),
* then the YapDatabaseHooksInsertedRow flag will be set.
*
* When a row is modified in the database (existing collection/key tuple),
* then the YapDatabaseHooksUpdatedRow flag will be set.
*
* When a row is explicitly touched in the database (e.g. touchObjectForKey:inCollection:)
* then neither YapDatabaseHooksInsertedRow nor YapDatabaseHooksUpdatedRow will be set.
*/
// An insert means that the collection/key tuple does not currently exist in the database.
// So the object & metadata items are getting inserted / added.
YapDatabaseHooksInsertedRow = 1 << 0, // 0000001
// An update means that the collection/key tuple currently exists in the database.
// So the object and/or metadata items are getting changed / updated.
YapDatabaseHooksUpdatedRow = 1 << 1, // 0000010
/**
* When a row is inserted, modified or touched,
* both the object & metadata flags will be set appropriately.
*
* Either the object was changed (had it's value set) or was simply touched (value didn't change).
* So either YapDatabaseHooksChangedObject or YapDatabaseHooksTouchedObject will be set. But not both.
*
* Either the metadata was changed (had it's value set) or was simply touched (value didn't change).
* So either YapDatabaseHooksChangedMetadata or YapDatabaseHooksTouchedMetadata will be set. But not both.
*/
// The object is being modified.
// This will always be set if the InsertedRow flag is also set.
YapDatabaseHooksChangedObject = 1 << 2, // 0000100
// The metadata is being modified.
// This will always be set if the InsertedRow flag is also set.
YapDatabaseHooksChangedMetadata = 1 << 3, // 0001000
// The object is being explicitly touched.
YapDatabaseHooksTouchedObject = 1 << 4, // 0010000
// The object is being explicitly touched.
YapDatabaseHooksTouchedMetadata = 1 << 5, // 0100000
}
Undocumented
-
When a row is inserted into the databaase (new collection/key tuple), then the YapDatabaseHooksInsertedRow flag will be set.
When a row is modified in the database (existing collection/key tuple), then the YapDatabaseHooksUpdatedRow flag will be set.
When a row is explicitly touched in the database (e.g. touchObjectForKey:inCollection:) then neither YapDatabaseHooksInsertedRow nor YapDatabaseHooksUpdatedRow will be set.
Declaration
Objective-C
YapDatabaseHooksInsertedRow = 1 << 0
Swift
static var insertedRow: YapDatabaseHooksBitMask { get }
-
When a row is inserted into the databaase (new collection/key tuple), then the YapDatabaseHooksInsertedRow flag will be set.
When a row is modified in the database (existing collection/key tuple), then the YapDatabaseHooksUpdatedRow flag will be set.
When a row is explicitly touched in the database (e.g. touchObjectForKey:inCollection:) then neither YapDatabaseHooksInsertedRow nor YapDatabaseHooksUpdatedRow will be set.
Declaration
Objective-C
YapDatabaseHooksUpdatedRow = 1 << 1
Swift
static var updatedRow: YapDatabaseHooksBitMask { get }
-
When a row is inserted, modified or touched, both the object & metadata flags will be set appropriately.
Either the object was changed (had it’s value set) or was simply touched (value didn’t change). So either YapDatabaseHooksChangedObject or YapDatabaseHooksTouchedObject will be set. But not both.
Either the metadata was changed (had it’s value set) or was simply touched (value didn’t change). So either YapDatabaseHooksChangedMetadata or YapDatabaseHooksTouchedMetadata will be set. But not both.
Declaration
Objective-C
YapDatabaseHooksChangedObject = 1 << 2
Swift
static var changedObject: YapDatabaseHooksBitMask { get }
-
When a row is inserted, modified or touched, both the object & metadata flags will be set appropriately.
Either the object was changed (had it’s value set) or was simply touched (value didn’t change). So either YapDatabaseHooksChangedObject or YapDatabaseHooksTouchedObject will be set. But not both.
Either the metadata was changed (had it’s value set) or was simply touched (value didn’t change). So either YapDatabaseHooksChangedMetadata or YapDatabaseHooksTouchedMetadata will be set. But not both.
Declaration
Objective-C
YapDatabaseHooksChangedMetadata = 1 << 3
Swift
static var changedMetadata: YapDatabaseHooksBitMask { get }
-
When a row is inserted, modified or touched, both the object & metadata flags will be set appropriately.
Either the object was changed (had it’s value set) or was simply touched (value didn’t change). So either YapDatabaseHooksChangedObject or YapDatabaseHooksTouchedObject will be set. But not both.
Either the metadata was changed (had it’s value set) or was simply touched (value didn’t change). So either YapDatabaseHooksChangedMetadata or YapDatabaseHooksTouchedMetadata will be set. But not both.
Declaration
Objective-C
YapDatabaseHooksTouchedObject = 1 << 4
Swift
static var touchedObject: YapDatabaseHooksBitMask { get }
-
When a row is inserted, modified or touched, both the object & metadata flags will be set appropriately.
Either the object was changed (had it’s value set) or was simply touched (value didn’t change). So either YapDatabaseHooksChangedObject or YapDatabaseHooksTouchedObject will be set. But not both.
Either the metadata was changed (had it’s value set) or was simply touched (value didn’t change). So either YapDatabaseHooksChangedMetadata or YapDatabaseHooksTouchedMetadata will be set. But not both.
Declaration
Objective-C
YapDatabaseHooksTouchedMetadata = 1 << 5
Swift
static var touchedMetadata: YapDatabaseHooksBitMask { get }