Какао определяет классы предикатов ( NSPredicate
, NSExpression
и т. Д.), Которые «предоставляют общие средства определения запросы в Какао » Программирование предикатов . Этот набор классов описывает то, что мне нужно, но с одним небольшим недостатком: мне нужны дополнительные операторы.
NSComparisonPredicate
уже обрабатывает 14 операторов ( NSPredicateOperatorType ), но я хотел бы добавить, скажем, временные операторы ... или операторы для представления таких вещей, как:
Очевидно, мне нужно будет реализовать их самому, и модель данных, на которой выполняются такие запросы, должна будет поддерживать эти операторы. Но есть ли способ реализовать это и извлечь выгоду из существующих классов NSPredicate? Поскольку операторы были определены как enum
, я сомневаюсь, что смогу расширить это поле. Или я полностью скучаю по лодке на этом ?!