From 82ef0886bf89339bfe7a1855e697e61959eeb486 Mon Sep 17 00:00:00 2001 From: rsgowman Date: Wed, 11 Jul 2018 21:59:49 -0400 Subject: Move creation of FSTFilter objects to static create method on FSTFilter. (#1512) Rather than previously inlining it in the calling code. This is to unify filter creation across platforms. (This change involves altering FSTFilter from a protocol to an abstract class.) --- Firestore/Source/Remote/FSTSerializerBeta.mm | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) (limited to 'Firestore/Source/Remote') diff --git a/Firestore/Source/Remote/FSTSerializerBeta.mm b/Firestore/Source/Remote/FSTSerializerBeta.mm index 263fe6d..81c6958 100644 --- a/Firestore/Source/Remote/FSTSerializerBeta.mm +++ b/Firestore/Source/Remote/FSTSerializerBeta.mm @@ -802,7 +802,7 @@ NS_ASSUME_NONNULL_BEGIN path = path.Append(util::MakeString(from.collectionId)); } - NSArray> *filterBy; + NSArray *filterBy; if (query.hasWhere) { filterBy = [self decodedFilters:query.where]; } else { @@ -841,14 +841,14 @@ NS_ASSUME_NONNULL_BEGIN #pragma mark Filters -- (GCFSStructuredQuery_Filter *_Nullable)encodedFilters:(NSArray> *)filters { +- (GCFSStructuredQuery_Filter *_Nullable)encodedFilters:(NSArray *)filters { if (filters.count == 0) { return nil; } NSMutableArray *protos = [NSMutableArray array]; - for (id filter in filters) { + for (FSTFilter *filter in filters) { if ([filter isKindOfClass:[FSTRelationFilter class]]) { - [protos addObject:[self encodedRelationFilter:filter]]; + [protos addObject:[self encodedRelationFilter:(FSTRelationFilter *)filter]]; } else { [protos addObject:[self encodedUnaryFilter:filter]]; } @@ -864,8 +864,8 @@ NS_ASSUME_NONNULL_BEGIN return composite; } -- (NSArray> *)decodedFilters:(GCFSStructuredQuery_Filter *)proto { - NSMutableArray> *result = [NSMutableArray array]; +- (NSArray *)decodedFilters:(GCFSStructuredQuery_Filter *)proto { + NSMutableArray *result = [NSMutableArray array]; NSArray *filters; if (proto.filterTypeOneOfCase == @@ -913,7 +913,7 @@ NS_ASSUME_NONNULL_BEGIN return [FSTRelationFilter filterWithField:fieldPath filterOperator:filterOperator value:value]; } -- (GCFSStructuredQuery_Filter *)encodedUnaryFilter:(id)filter { +- (GCFSStructuredQuery_Filter *)encodedUnaryFilter:(FSTFilter *)filter { GCFSStructuredQuery_Filter *proto = [GCFSStructuredQuery_Filter message]; proto.unaryFilter.field = [self encodedFieldPath:filter.field]; if ([filter isKindOfClass:[FSTNanFilter class]]) { @@ -926,7 +926,7 @@ NS_ASSUME_NONNULL_BEGIN return proto; } -- (id)decodedUnaryFilter:(GCFSStructuredQuery_UnaryFilter *)proto { +- (FSTFilter *)decodedUnaryFilter:(GCFSStructuredQuery_UnaryFilter *)proto { FieldPath field = FieldPath::FromServerFormat(util::MakeString(proto.field.fieldPath)); switch (proto.op) { case GCFSStructuredQuery_UnaryFilter_Operator_IsNan: -- cgit v1.2.3