Skip to content

Instantly share code, notes, and snippets.

@scribblecat
scribblecat / Optional+Extensions.swift
Created November 24, 2017 22:03
Get Array from Optional NSSet. Especially useful for getting an Array of objects in a Core Data many relationship.
/*
* Returns Array from optional NSSet. Returns empty array if NSSet is nil.
* It's useful for when you want an Array of objects from a Core Data many relationship.
*
* Example usage with managed object `game` with 1-to-many relationship to `Goal` entity:
* let goalArray = game.goals.array(of: Goal.self)
*/
extension Optional where Wrapped == NSSet {
func array<T: Hashable>(of: T.Type) -> [T] {