List
List<T>
is the container type in Realm used to define to-many relationships.
Lists hold a single Object
subclass (T
) which defines the type
of the list.
Lists can be filtered and sorted with the same predicates as Results<T>
.
When added as a property on Object
models, the property must be declared as let
and cannot be dynamic
.
-
Returns the object at the given
index
on get. Replaces the object at the givenindex
on set.Declaration
Swift
public subscript(index: Int) -> T
Parameters
index
The index.
Return Value
The object at the given
index
. -
The Realm the objects in this list belong to, or
nil
if the list’s owning object does not belong to a realm (the list is standalone).Declaration
Swift
public var realm: Realm?
-
Creates a
List
that holds objects of typeT
.Declaration
Swift
public override init()
-
Returns the index of the given object, or
nil
if the object is not in the list.Declaration
Swift
public func indexOf(object: T) -> Int?
Parameters
object
The object whose index is being queried.
Return Value
The index of the given object, or
nil
if the object is not in the list. -
Returns the index of the first object matching the given predicate, or
nil
no objects match.Declaration
Swift
public func indexOf(predicate: NSPredicate) -> Int?
Parameters
predicate
The
NSPredicate
used to filter the objects.Return Value
The index of the given object, or
nil
if no objects match. -
Returns the index of the first object matching the given predicate, or
nil
if no objects match.Declaration
Swift
public func indexOf(predicateFormat: String, _ args: CVarArgType...) -> Int?
Parameters
predicateFormat
The predicate format string, optionally followed by a variable number of arguments.
Return Value
The index of the given object, or
nil
if no objects match.
-
Returns the first object in the list, or
nil
if empty.Declaration
Swift
public var first: T? { return _rlmArray.firstObject() as! T? }
-
Returns the last object in the list, or
nil
if empty.Declaration
Swift
public var last: T? { return _rlmArray.lastObject() as! T? }
-
Returns an Array containing the results of invoking
valueForKey:
using key on each of the collection’s objects.Declaration
Swift
public override func valueForKey(key: String) -> AnyObject?
Parameters
key
The name of the property.
Return Value
Array containing the results of invoking
valueForKey:
using key on each of the collection’s objects. -
Invokes
setValue:forKey:
on each of the collection’s objects using the specified value and key.Declaration
Swift
public override func setValue(value: AnyObject?, forKey key: String)
Parameters
value
The object value.
key
The name of the property.
-
Returns
Results
containing list elements that match the given predicate.Declaration
Swift
public func filter(predicateFormat: String, _ args: CVarArgType...) -> Results<T>
Parameters
predicateFormat
The predicate format string which can accept variable arguments.
Return Value
Results
containing list elements that match the given predicate. -
Returns
Results
containing list elements that match the given predicate.Declaration
Swift
public func filter(predicate: NSPredicate) -> Results<T>
Parameters
predicate
The predicate to filter the objects.
Return Value
Results
containing list elements that match the given predicate.
-
Returns
Results
containing list elements sorted by the given property.Declaration
Swift
public func sorted(property: String, ascending: Bool = true) -> Results<T>
Parameters
property
The property name to sort by.
ascending
The direction to sort by.
Return Value
Results
containing list elements sorted by the given property. -
Returns
Results
with elements sorted by the given sort descriptors.Declaration
Swift
public func sorted<S: SequenceType where S.Generator.Element == SortDescriptor>(sortDescriptors: S) -> Results<T>
Parameters
sortDescriptors
SortDescriptor
s to sort by.Return Value
Results
with elements sorted by the given sort descriptors.
-
Appends the given object to the end of the list. If the object is from a different Realm it is copied to the List’s Realm.
Declaration
Swift
public func append(object: T)
Parameters
object
An object.
-
Appends the objects in the given sequence to the end of the list.
Declaration
Swift
public func extend<S: SequenceType where S.Generator.Element == T>(objects: S)
Parameters
objects
A sequence of objects.
-
Inserts the given object at the given index.
Declaration
Swift
public func insert(object: T, atIndex index: Int)
Parameters
object
An object.
index
The index at which to insert the object.
-
Removes the object at the given index from the list. Does not remove the object from the Realm.
Declaration
Swift
public func removeAtIndex(index: Int)
Parameters
index
The index at which to remove the object.
-
Removes the last object in the list. Does not remove the object from the Realm.
Declaration
Swift
public func removeLast()
-
Removes all objects from the List. Does not remove the objects from the Realm.
Declaration
Swift
public func removeAll()
-
Replaces an object at the given index with a new object.
Declaration
Swift
public func replace(index: Int, object: T)
Parameters
index
The list index of the object to be replaced.
object
An object to replace at the specified index.