     }
 }
 
+public enum SearchComparisonPredicateOption: String {
+    
+    case CaseInsensitive = "[c]"
+    case DiacriticInsensitive = "[d]"
+    case Normalized = "[n]"
+    case LocaleSensitive = "[l]"
+    
+    public func toComparisonPredicateOptions() -> NSComparisonPredicateOptions {
+        switch self {
+        case .CaseInsensitive: return .CaseInsensitivePredicateOption
+        case .DiacriticInsensitive: return .DiacriticInsensitivePredicateOption
+        case .Normalized: return .NormalizedPredicateOption
+        case .LocaleSensitive: return NSComparisonPredicateOptions(rawValue: 0x08)
+        }
+    }
+    
+    public init?(comparisonPredicateOptionsValue: NSComparisonPredicateOptions) {
+        
+        
+    }
+}
+
+public enum
+
 // MARK: - Compound Predicate
 
 /** The parameters for a compound predicate. */

    case Key = "Key"
    case Value = "Value"
    case Operator = "Operator"
    case Option = "Option"
    case Modifier = "Modifier"
}


    }
}

// MARK: Functions

func SearchComparisonPredicateOptionsToNSComparisonPredicateOptions(comparisonPredicateOptions: [SearchComparisonPredicateOption]) -> NSComparisonPredicateOptions {
    
    var rawOptionValue: UInt = NSComparisonPredicateOptions.allZeros.rawValue
    
    for option in comparisonPredicateOptions {
        
        let convertedOption = option.toComparisonPredicateOptions()
        
        rawOptionValue = rawOptionValue | convertedOption.rawValue
    }
    
    return NSComparisonPredicateOptions(rawOptionValue)
}

// MARK: - Enumerations
