diff options
author | Michael Lehenbauer <mikelehen@gmail.com> | 2018-04-17 15:07:25 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-04-17 15:07:25 -0700 |
commit | f2ec9e11fba82d4a76d989293d270a37ad1373a2 (patch) | |
tree | 48df0f0900c8e379557d9e43e385c4fde9f2b90b /Firestore/Source/API | |
parent | 9329e6e09bed6925b3292aa05fea28e2bcd4d9ef (diff) |
Serialize array transform mutations. (#1107)
* Serialize array transform mutations.
* Improve ArrayTransform constructor to avoid extra copying.
Diffstat (limited to 'Firestore/Source/API')
-rw-r--r-- | Firestore/Source/API/FSTUserDataConverter.mm | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/Firestore/Source/API/FSTUserDataConverter.mm b/Firestore/Source/API/FSTUserDataConverter.mm index 719f6f5..cd32cef 100644 --- a/Firestore/Source/API/FSTUserDataConverter.mm +++ b/Firestore/Source/API/FSTUserDataConverter.mm @@ -606,16 +606,16 @@ typedef NS_ENUM(NSInteger, FSTUserDataSource) { } else if ([fieldValue isKindOfClass:[FSTArrayUnionFieldValue class]]) { std::vector<FSTFieldValue *> parsedElements = [self parseArrayTransformElements:((FSTArrayUnionFieldValue *)fieldValue).elements]; - auto array_union = - absl::make_unique<ArrayTransform>(TransformOperation::Type::ArrayUnion, parsedElements); + auto array_union = absl::make_unique<ArrayTransform>(TransformOperation::Type::ArrayUnion, + std::move(parsedElements)); [context appendToFieldTransformsWithFieldPath:*context.path transformOperation:std::move(array_union)]; } else if ([fieldValue isKindOfClass:[FSTArrayRemoveFieldValue class]]) { std::vector<FSTFieldValue *> parsedElements = [self parseArrayTransformElements:((FSTArrayRemoveFieldValue *)fieldValue).elements]; - auto array_remove = - absl::make_unique<ArrayTransform>(TransformOperation::Type::ArrayRemove, parsedElements); + auto array_remove = absl::make_unique<ArrayTransform>(TransformOperation::Type::ArrayRemove, + std::move(parsedElements)); [context appendToFieldTransformsWithFieldPath:*context.path transformOperation:std::move(array_remove)]; |