| Inherits from | |
| Conforms to | |
| Framework | /System/Library/Frameworks/Foundation.framework |
| Availability | Available in Mac OS X v10.4 and later. |
| Companion guide | |
| Declared in | NSCompoundPredicate.h |
| Related sample code |
NSCompoundPredicate is a subclass of NSPredicate used to represent logical “gate” operations (AND/OR/NOT) and comparison operations.
Comparison operations are based on two expressions, as represented by instances of the NSExpression class. Expressions are created for constant values, key paths, and so on.
In Mac OS X v10.5 and later and in iPhone OS, you can use NSCompoundPredicate to create an AND or OR compound predicate (but not a NOT compound predicate) using an array with 0, 1, or more elements:
An AND predicate with no subpredicates evaluates to TRUE.
An OR predicate with no subpredicates evaluates to FALSE.
A compound predicate with one or more subpredicates evaluates to the truth of its subpredicates.
+ andPredicateWithSubpredicates:
+ notPredicateWithSubpredicate:
+ orPredicateWithSubpredicates:
– initWithType:subpredicates:
Returns a new predicate formed by AND-ing the predicates in a given array.
+ (NSPredicate *)andPredicateWithSubpredicates:(NSArray *)subpredicates
An array of NSPredicate objects.
A new predicate formed by AND-ing the predicates specified by subpredicates.
An AND predicate with no subpredicates evaluates to TRUE.
For applications linked on Mac OS X v10.5 or later, the subpredicates array is copied. For applications linked on Mac OS X v10.4, the subpredicates array is retained (for binary compatibility).
NSCompoundPredicate.hReturns a new predicate formed by NOT-ing a given predicate.
+ (NSPredicate *)notPredicateWithSubpredicate:(NSPredicate *)predicate
A predicate.
A new predicate formed by NOT-ing the predicate specified by predicate.
For applications linked on Mac OS X v10.5 or later, the subpredicates array is copied. For applications linked on Mac OS X v10.4, the subpredicates array is retained (for binary compatibility).
NSCompoundPredicate.hReturns a new predicate formed by OR-ing the predicates in a given array.
+ (NSPredicate *)orPredicateWithSubpredicates:(NSArray *)subpredicates
An array of NSPredicate objects.
A new predicate formed by OR-ing the predicates specified by subpredicates.
An OR predicate with no subpredicates evaluates to FALSE.
For applications linked on Mac OS X v10.5 or later, the subpredicates array is copied. For applications linked on Mac OS X v10.4, the subpredicates array is retained (for binary compatibility).
NSCompoundPredicate.hReturns the predicate type for the receiver.
- (NSCompoundPredicateType)compoundPredicateType
The predicate type for the receiver.
NSCompoundPredicate.hReturns the receiver initialized to a given type using predicates from a given array.
- (id)initWithType:(NSCompoundPredicateType)type subpredicates:(NSArray *)subpredicates
The type of the new predicate.
An array of NSPredicate objects.
The receiver initialized with its type set to type and subpredicates array to subpredicates.
For applications linked on Mac OS X v10.5 or later, the subpredicates array is copied. For applications linked on Mac OS X v10.4, the subpredicates array is retained (for binary compatibility).
NSCompoundPredicate.hReturns the array of the receiver’s subpredicates.
- (NSArray *)subpredicates
The array of the receiver’s subpredicates.
NSCompoundPredicate.hThese constants describe the possible types of NSCompoundPredicate.
typedef enum {
NSNotPredicateType = 0,
NSAndPredicateType,
NSOrPredicateType,
} NSCompoundPredicateType;
NSNotPredicateTypeA logical NOT predicate.
Available in Mac OS X v10.4 and later.
Declared in NSCompoundPredicate.h.
NSAndPredicateTypeA logical AND predicate.
Available in Mac OS X v10.4 and later.
Declared in NSCompoundPredicate.h.
NSOrPredicateTypeA logical OR predicate.
Available in Mac OS X v10.4 and later.
Declared in NSCompoundPredicate.h.
NSCompoundPredicate.hLast updated: 2009-10-14