         case .AllPredicateModifier: self = .All
         }
     }
+    
+    public func toComparisonPredicateModifier() -> NSComparisonPredicateModifier {
+        switch self {
+        case .Direct: return .DirectPredicateModifier
+        case .All: return .AllPredicateModifier
+        case .Any: return .AnyPredicateModifier
+        }
+    }
 }
 
 // MARK: - Compound Predicate

        default: return nil
        }
    }
}

public enum SearchComparisonPredicateOption: String {

    case In = "IN"
    case Contains = "CONTAINS"
    case Between = "BETWEEN"
    
    public init?(predicateOperatorTypeValue: NSPredicateOperatorType) {
        switch predicateOperatorTypeValue {
