10 #import <Foundation/Foundation.h>
12 #import <Bolts/BFTask.h>
14 #import <Parse/PFConstants.h>
15 #import <Parse/PFGeoPoint.h>
16 #import <Parse/PFObject.h>
17 #import <Parse/PFUser.h>
19 NS_ASSUME_NONNULL_BEGIN
30 typedef void (^PFQueryArrayResultBlock)(NSArray<PFGenericObject> *_Nullable objects, NSError * _Nullable error);
33 #pragma mark - Creating a Query for a Class
41 - (instancetype)initWithClassName:(NSString *)className;
50 + (instancetype)queryWithClassName:(NSString *)className;
74 + (instancetype)queryWithClassName:(NSString *)className predicate:(nullable NSPredicate *)predicate;
82 #pragma mark - Adding Basic Constraints
95 - (instancetype)includeKey:(NSString *)key;
104 - (instancetype)includeKeys:(NSArray<NSString *> *)keys;
115 - (instancetype)selectKeys:(NSArray<NSString *> *)keys;
124 - (instancetype)whereKeyExists:(NSString *)key;
133 - (instancetype)whereKeyDoesNotExist:(NSString *)key;
143 - (instancetype)whereKey:(NSString *)key equalTo:(
id)object;
153 - (instancetype)whereKey:(NSString *)key lessThan:(
id)object;
164 - (instancetype)whereKey:(NSString *)key lessThanOrEqualTo:(
id)object;
175 - (instancetype)whereKey:(NSString *)key greaterThan:(
id)object;
186 - (instancetype)whereKey:(NSString *)key greaterThanOrEqualTo:(
id)object;
197 - (instancetype)whereKey:(NSString *)key notEqualTo:(
id)object;
208 - (instancetype)whereKey:(NSString *)key containedIn:(NSArray *)array;
219 - (instancetype)whereKey:(NSString *)key notContainedIn:(NSArray *)array;
230 - (instancetype)whereKey:(NSString *)key containsAllObjectsInArray:(NSArray *)array;
233 #pragma mark - Adding Location Constraints
248 - (instancetype)whereKey:(NSString *)key nearGeoPoint:(
PFGeoPoint *)geopoint;
263 - (instancetype)whereKey:(NSString *)key
265 withinMiles:(
double)maxDistance;
280 - (instancetype)whereKey:(NSString *)key
282 withinKilometers:(
double)maxDistance;
295 - (instancetype)whereKey:(NSString *)key
297 withinRadians:(
double)maxDistance;
309 - (instancetype)whereKey:(NSString *)key withinGeoBoxFromSouthwest:(
PFGeoPoint *)southwest toNortheast:(
PFGeoPoint *)northeast;
312 #pragma mark - Adding String Constraints
325 - (instancetype)whereKey:(NSString *)key matchesRegex:(NSString *)regex;
340 - (instancetype)whereKey:(NSString *)key
341 matchesRegex:(NSString *)regex
342 modifiers:(nullable NSString *)modifiers;
354 - (instancetype)whereKey:(NSString *)key containsString:(nullable NSString *)substring;
366 - (instancetype)whereKey:(NSString *)key hasPrefix:(nullable NSString *)prefix;
378 - (instancetype)whereKey:(NSString *)key hasSuffix:(nullable NSString *)suffix;
381 #pragma mark - Adding Subqueries
391 + (instancetype)orQueryWithSubqueries:(NSArray<
PFQuery *> *)queries;
403 - (instancetype)whereKey:(NSString *)key
404 matchesKey:(NSString *)otherKey
417 - (instancetype)whereKey:(NSString *)key
418 doesNotMatchKey:(NSString *)otherKey
431 - (instancetype)whereKey:(NSString *)key matchesQuery:(
PFQuery *)query;
443 - (instancetype)whereKey:(NSString *)key doesNotMatchQuery:(
PFQuery *)query;
446 #pragma mark - Sorting
456 - (instancetype)orderByAscending:(NSString *)key;
465 - (instancetype)addAscendingOrder:(NSString *)key;
474 - (instancetype)orderByDescending:(NSString *)key;
483 - (instancetype)addDescendingOrder:(NSString *)key;
494 - (instancetype)orderBySortDescriptor:(NSSortDescriptor *)sortDescriptor;
505 - (instancetype)orderBySortDescriptors:(nullable NSArray<NSSortDescriptor *> *)sortDescriptors;
508 #pragma mark - Getting Objects by ID
521 - (
BFTask<PFGenericObject> *)getObjectInBackgroundWithId:(NSString *)objectId;
533 - (void)getObjectInBackgroundWithId:(NSString *)objectId
534 block:(nullable
void (^)(PFGenericObject _Nullable
object, NSError *_Nullable error))block;
537 #pragma mark - Getting User Objects
543 + (instancetype)queryForUser
PARSE_DEPRECATED("Use [PFUser query] instead.");
546 #pragma mark - Getting all Matches for a Query
562 - (void)findObjectsInBackgroundWithBlock:(nullable PFQueryArrayResultBlock)block;
565 #pragma mark - Getting the First Match in a Query
587 - (void)getFirstObjectInBackgroundWithBlock:(nullable
void (^)(PFGenericObject _Nullable
object, NSError *_Nullable error))block;
590 #pragma mark - Counting the Matches in a Query
606 - (void)countObjectsInBackgroundWithBlock:(nullable PFIntegerResultBlock)block;
609 #pragma mark - Cancelling a Query
618 #pragma mark - Paginating Results
627 @property (nonatomic, assign) NSInteger
limit;
632 @property (nonatomic, assign) NSInteger
skip;
635 #pragma mark - Controlling Caching Behavior
672 #pragma mark - Query Source
710 - (instancetype)fromPinWithName:(nullable NSString *)name;
724 #pragma mark - Advanced Settings
732 @property (nonatomic, assign) BOOL
trace;
736 NS_ASSUME_NONNULL_END
BFTask< NSNumber * > * countObjectsInBackground()
BFTask< NSArray< PFGenericObject > * > * findObjectsInBackground()
Definition: PFObject+Subclass.h:14
PFCachePolicy cachePolicy
Definition: PFQuery.h:647
BOOL trace
Definition: PFQuery.h:732
"Use [PFUser query] instead." PARSE_DEPRECATED()
NSString * parseClassName
Definition: PFQuery.h:79
instancetype fromLocalDatastore()
BFTask< PFGenericObject > * getFirstObjectInBackground()
Definition: PFObject.h:32
NSInteger limit
Definition: PFQuery.h:627
NSInteger skip
Definition: PFQuery.h:632
Definition: PFImageView.h:32
Definition: PFGeoPoint.h:25
void clearAllCachedResults()
BOOL hasCachedResult
Definition: PFQuery.h:659
NSTimeInterval maxCacheAge
Definition: PFQuery.h:652
instancetype ignoreACLs()