AnyRealmCollection

public final class AnyRealmCollection<T: Object>: RealmCollectionType

A type-erased RealmCollectionType.

Forwards operations to an arbitrary underlying collection having the same Element type, hiding the specifics of the underlying RealmCollectionType.

  • Element type contained in this collection.

    Declaration

    Swift

    public typealias Element = T
  • Returns the object at the given index.

    Declaration

    Swift

    public subscript(index: Int) -> T { return base[index] }

    Parameters

    index

    The index.

    Return Value

    The object at the given index.

  • Creates an AnyRealmCollection wrapping base.

    Declaration

    Swift

    public init<C: RealmCollectionType where C.Element == T>(_ base: C)
  • The Realm the objects in this collection belong to, or nil if the collection’s owning object does not belong to a realm (the collection is standalone).

    Declaration

    Swift

    public var realm: Realm? { return base.realm }
  • Returns the number of objects in this collection.

    Declaration

    Swift

    public var count: Int { return base.count }
  • Returns a human-readable description of the objects contained in this collection.

    Declaration

    Swift

    public var description: String { return base.description }
  • Returns the index of the given object, or nil if the object is not in the collection.

    Declaration

    Swift

    public func indexOf(object: Element) -> Int? { return base.indexOf(object) }

    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 collection.

  • Returns the index of the first object matching the given predicate, or nil no objects match.

    Declaration

    Swift

    public func indexOf(predicate: NSPredicate) -> Int? { return base.indexOf(predicate) }

    Parameters

    predicate

    The NSPredicate used to filter the objects.

    Return Value

    The index of the first matching 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: AnyObject...) -> Int?

    Parameters

    predicateFormat

    The predicate format string, optionally followed by a variable number of arguments.

    Return Value

    The index of the first matching object, or nil if no objects match.

  • Returns Results containing collection elements that match the given predicate.

    Declaration

    Swift

    public func filter(predicateFormat: String, _ args: AnyObject...) -> Results<Element>

    Parameters

    predicateFormat

    The predicate format string which can accept variable arguments.

    Return Value

    Results containing collection elements that match the given predicate.

  • Returns Results containing collection elements that match the given predicate.

    Declaration

    Swift

    public func filter(predicate: NSPredicate) -> Results<Element> { return base.filter(predicate) }

    Parameters

    predicate

    The predicate to filter the objects.

    Return Value

    Results containing collection elements that match the given predicate.

  • Returns Results containing collection elements sorted by the given property.

    Declaration

    Swift

    public func sorted(property: String, ascending: Bool) -> Results<Element>

    Parameters

    property

    The property name to sort by.

    ascending

    The direction to sort by.

    Return Value

    Results containing collection 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<Element>

    Parameters

    sortDescriptors

    SortDescriptors to sort by.

    Return Value

    Results with elements sorted by the given sort descriptors.

  • Returns the minimum value of the given property.

    Warning

    Only names of properties of a type conforming to the MinMaxType protocol can be used.

    Declaration

    Swift

    public func min<U: MinMaxType>(property: String) -> U? { return base.min(property) }

    Parameters

    property

    The name of a property conforming to MinMaxType to look for a minimum on.

    Return Value

    The minimum value for the property amongst objects in the collection, or nil if the collection is empty.

  • Returns the maximum value of the given property.

    Warning

    Only names of properties of a type conforming to the MinMaxType protocol can be used.

    Declaration

    Swift

    public func max<U: MinMaxType>(property: String) -> U? { return base.max(property) }

    Parameters

    property

    The name of a property conforming to MinMaxType to look for a maximum on.

    Return Value

    The maximum value for the property amongst objects in the collection, or nil if the collection is empty.

  • Returns the sum of the given property for objects in the collection.

    Warning

    Only names of properties of a type conforming to the AddableType protocol can be used.

    Declaration

    Swift

    public func sum<U: AddableType>(property: String) -> U { return base.sum(property) }

    Parameters

    property

    The name of a property conforming to AddableType to calculate sum on.

    Return Value

    The sum of the given property over all objects in the collection.

  • Returns the average of the given property for objects in the collection.

    Warning

    Only names of properties of a type conforming to the AddableType protocol can be used.

    Declaration

    Swift

    public func average<U: AddableType>(property: String) -> U? { return base.average(property) }

    Parameters

    property

    The name of a property conforming to AddableType to calculate average on.

    Return Value

    The average of the given property over all objects in the collection, or nil if the collection is empty.

  • Returns a GeneratorOf<T> that yields successive elements in the collection.

    Declaration

    Swift

    public func generate() -> RLMGenerator<T> { return base.generate() }
  • The position of the first element in a non-empty collection. Identical to endIndex in an empty collection.

    Declaration

    Swift

    public var startIndex: Int { return base.startIndex }
  • The collection’s past the end position. endIndex is not a valid argument to subscript, and is always reachable from startIndex by zero or more applications of successor().

    Declaration

    Swift

    public var endIndex: Int { return base.endIndex }
  • Returns an Array containing the results of invoking valueForKey(_:) using key on each of the collection’s objects.

    Declaration

    Swift

    public func valueForKey(key: String) -> AnyObject? { return base.valueForKey(key) }

    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.

  • Returns an Array containing the results of invoking valueForKeyPath(_:) using keyPath on each of the collection’s objects.

    Declaration

    Swift

    public func valueForKeyPath(keyPath: String) -> AnyObject? { return base.valueForKeyPath(keyPath) }

    Parameters

    keyPath

    The key path to the property.

    Return Value

    Array containing the results of invoking valueForKeyPath(_:) using keyPath on each of the collection’s objects.

  • Invokes setValue(_:forKey:) on each of the collection’s objects using the specified value and key.

    Warning

    This method can only be called during a write transaction.

    Declaration

    Swift

    public func setValue(value: AnyObject?, forKey key: String) { base.setValue(value, forKey: key) }

    Parameters

    value

    The object value.

    key

    The name of the property.

  • Declaration

    Swift

    public func addNotificationBlock(block: (AnyRealmCollection<Element>?, NSError?) -> ()) -> NotificationToken

    Parameters

    block

    The block to be called each time the collection changes.

    Return Value

    A token which must be held for as long as you want notifications to be delivered.