    - parameter inContext: context for search
    - parameter delegate: NSFetchedResultsControllerDelegate
    */
+  @available(OSX 10.12, *)
   static func fetchAll<T>(sortedBy: String, ascending: Bool, delegate: NSFetchedResultsControllerDelegate) -> NSFetchedResultsController<T>? {
     
     // Initialize Fetch Request

    return fetchedResultsController as? NSFetchedResultsController<T>
  }
  
  #endif
  
  #if os(iOS)
  
  /**
   Fetch all objects with predicate in context
   

   - parameter inContext: context for search
   - parameter delegate: NSFetchedResultsControllerDelegate
   */
  @available(OSX 10.12, *)
  static func fetchAll<T>(byAttribute attribute: String, withInt64Value value: Int64, sortBy: String, ascending: Bool, inContext context: NSManagedObjectContext, delegate: NSFetchedResultsControllerDelegate) -> NSFetchedResultsController<T>? {
    
    // Build predicate with value
