diff options
author | Gil <mcg@google.com> | 2018-01-31 11:23:55 -0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-01-31 11:23:55 -0800 |
commit | 729b8d176c75ecc0cbbd137cc6811116a64e310a (patch) | |
tree | 22b793b03611ce5ad615b7c7d9579f5ba5206b4a /Firestore/Source/Core/FSTSnapshotVersion.m | |
parent | 693d0649bfcc9c32201e2431ae08ea85fdbdb617 (diff) |
Move all Firestore Objective-C to Objective-C++ (#734)
* Move all Firestore files to Objective-C++
* Update project file references
* Don't use module imports from Objective-C++
* Use extern "C" for C-accessible globals
* Work around more stringent type checking in Objective-C++
* NSMutableDictionary ivars aren't implicitly casted to NSDictionary
* FSTMaybeDocument callback can't be passed a function that accepts
FSTDocument
* NSComparisonResult can't be multiplied by -1 without casting
* Add a #include <inttypes.h> where needed
* Avoid using C++ keywords as variables
* Remove #if __cplusplus guards
Diffstat (limited to 'Firestore/Source/Core/FSTSnapshotVersion.m')
-rw-r--r-- | Firestore/Source/Core/FSTSnapshotVersion.m | 80 |
1 files changed, 0 insertions, 80 deletions
diff --git a/Firestore/Source/Core/FSTSnapshotVersion.m b/Firestore/Source/Core/FSTSnapshotVersion.m deleted file mode 100644 index 980ae52..0000000 --- a/Firestore/Source/Core/FSTSnapshotVersion.m +++ /dev/null @@ -1,80 +0,0 @@ -/* - * Copyright 2017 Google - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#import "Firestore/Source/Core/FSTSnapshotVersion.h" - -#import "Firestore/Source/Core/FSTTimestamp.h" - -NS_ASSUME_NONNULL_BEGIN - -@implementation FSTSnapshotVersion - -+ (instancetype)noVersion { - static FSTSnapshotVersion *min; - static dispatch_once_t onceToken; - dispatch_once(&onceToken, ^{ - FSTTimestamp *timestamp = [[FSTTimestamp alloc] initWithSeconds:0 nanos:0]; - min = [FSTSnapshotVersion versionWithTimestamp:timestamp]; - }); - return min; -} - -+ (instancetype)versionWithTimestamp:(FSTTimestamp *)timestamp { - return [[FSTSnapshotVersion alloc] initWithTimestamp:timestamp]; -} - -- (instancetype)initWithTimestamp:(FSTTimestamp *)timestamp { - self = [super init]; - if (self) { - _timestamp = timestamp; - } - return self; -} - -#pragma mark - NSObject methods - -- (BOOL)isEqual:(id)object { - if (self == object) { - return YES; - } - if (![object isKindOfClass:[FSTSnapshotVersion class]]) { - return NO; - } - return [self.timestamp isEqual:((FSTSnapshotVersion *)object).timestamp]; -} - -- (NSUInteger)hash { - return self.timestamp.hash; -} - -- (NSString *)description { - return [NSString stringWithFormat:@"<FSTSnapshotVersion: %@>", self.timestamp]; -} - -- (id)copyWithZone:(NSZone *_Nullable)zone { - // Implements NSCopying without actually copying because timestamps are immutable. - return self; -} - -#pragma mark - Public methods - -- (NSComparisonResult)compare:(FSTSnapshotVersion *)other { - return [self.timestamp compare:other.timestamp]; -} - -@end - -NS_ASSUME_NONNULL_END |