diff options
author | Henning Baldersheim <balder@yahoo-inc.com> | 2020-08-07 17:23:06 +0000 |
---|---|---|
committer | Henning Baldersheim <balder@yahoo-inc.com> | 2020-08-07 17:23:06 +0000 |
commit | 3fa3912a3af1d75751425bf11eae1b4e3940a8c7 (patch) | |
tree | 29ebb03b74f25a672438f45e9159f4e0fc96bc4b /storage | |
parent | cab80fdeb028a82403eaf13a99b31a5b6483712e (diff) |
Make FieldCollection immutable.
Diffstat (limited to 'storage')
-rw-r--r-- | storage/src/vespa/storage/persistence/fieldvisitor.cpp | 2 | ||||
-rw-r--r-- | storage/src/vespa/storage/persistence/fieldvisitor.h | 7 |
2 files changed, 4 insertions, 5 deletions
diff --git a/storage/src/vespa/storage/persistence/fieldvisitor.cpp b/storage/src/vespa/storage/persistence/fieldvisitor.cpp index a544105be68..0071d7a010f 100644 --- a/storage/src/vespa/storage/persistence/fieldvisitor.cpp +++ b/storage/src/vespa/storage/persistence/fieldvisitor.cpp @@ -9,7 +9,7 @@ namespace storage { FieldVisitor::~FieldVisitor() = default; void FieldVisitor::visitFieldValueNode(const document::select::FieldValueNode & node) { - _fields.insertField(_docType.getField(node.getRealFieldName())); + _fields.insert(&_docType.getField(node.getRealFieldName())); } void FieldVisitor::visitComparison(const document::select::Compare & node) { diff --git a/storage/src/vespa/storage/persistence/fieldvisitor.h b/storage/src/vespa/storage/persistence/fieldvisitor.h index d34b7049b88..f2b07e193d6 100644 --- a/storage/src/vespa/storage/persistence/fieldvisitor.h +++ b/storage/src/vespa/storage/persistence/fieldvisitor.h @@ -16,18 +16,17 @@ namespace storage { class FieldVisitor : public document::select::Visitor { private: document::DocumentType _docType; - document::FieldCollection _fields; + document::Field::Set _fields; public: explicit FieldVisitor(const document::DocumentType & docType) : _docType(docType), - _fields(_docType) + _fields() {} ~FieldVisitor() override; document::FieldCollection getFieldSet() { - _fields.complete(); - return std::move(_fields); + return document::FieldCollection(_docType, std::move(_fields)); } void visitFieldValueNode(const document::select::FieldValueNode &) override; |