Enums
The following enums are available globally.
-
Error
is an enum representing all recoverable errors. It is associated with the Realm error domain specified inRLMErrorDomain
.Error
is a SwiftErrorType
:
See morelet realm: Realm? do { realm = try Realm() } catch RealmSwift.Error.IncompatibleLockFile() { print("Incompatible lock file. The Realm Browser app might be attached to a Realm on the device.") }
Declaration
Swift
public enum Error: ErrorType
-
A notification indicating that changes were made to a Realm.
See moreDeclaration
Swift
public enum Notification: String
-
A
RealmCollectionChange
value encapsulates information about changes to collections that are reported by Realm notifications.The change information is available in two formats: a simple array of row indices in the collection for each type of change, and an array of index paths in a requested section suitable for passing directly to
UITableView
’s batch update methods.The arrays of indices in the
.Update
case followUITableView
’s batching conventions, and can be passed as-is to a table view’s batch update functions after being converted to index paths. For example, for a simple one-section table view, you can do the following:
See moreself.notificationToken = results.addNotificationBlock { changes in switch changes { case .Initial: // Results are now populated and can be accessed without blocking the UI self.tableView.reloadData() break case .Update(_, let deletions, let insertions, let modifications): // Query results have changed, so apply them to the TableView self.tableView.beginUpdates() self.tableView.insertRowsAtIndexPaths(insertions.map { NSIndexPath(forRow: $0, inSection: 0) }, withRowAnimation: .Automatic) self.tableView.deleteRowsAtIndexPaths(deletions.map { NSIndexPath(forRow: $0, inSection: 0) }, withRowAnimation: .Automatic) self.tableView.reloadRowsAtIndexPaths(modifications.map { NSIndexPath(forRow: $0, inSection: 0) }, withRowAnimation: .Automatic) self.tableView.endUpdates() break case .Error(let err): // An error occurred while opening the Realm file on the background worker thread fatalError("\(err)") break } }
Declaration
Swift
public enum RealmCollectionChange<T>