diff options
author | Tor Egge <Tor.Egge@online.no> | 2022-02-28 11:41:01 +0100 |
---|---|---|
committer | Tor Egge <Tor.Egge@online.no> | 2022-02-28 11:41:01 +0100 |
commit | 075c28f6ce1f4f0f9199a9a15f8633d408accd0a (patch) | |
tree | c2db8d28e3740bc01be5af8f6dce7b5ce9ef6694 /document | |
parent | e0347064b1411fb294b2cd1a33e0b85f0d4d23e7 (diff) |
Enable assignment of document::DocumentType::FieldSet.
Diffstat (limited to 'document')
-rw-r--r-- | document/src/vespa/document/datatype/documenttype.h | 2 | ||||
-rw-r--r-- | document/src/vespa/document/fieldset/fieldsets.cpp | 2 | ||||
-rw-r--r-- | document/src/vespa/document/fieldset/fieldsets.h | 6 |
3 files changed, 7 insertions, 3 deletions
diff --git a/document/src/vespa/document/datatype/documenttype.h b/document/src/vespa/document/datatype/documenttype.h index bddc0a26e99..582cc25f1f1 100644 --- a/document/src/vespa/document/datatype/documenttype.h +++ b/document/src/vespa/document/datatype/documenttype.h @@ -34,6 +34,8 @@ public: FieldSet(const FieldSet&) = default; FieldSet(FieldSet&&) noexcept = default; + FieldSet& operator=(const FieldSet&) = default; + FieldSet& operator=(FieldSet&&) = default; const vespalib::string & getName() const noexcept { return _name; } const Fields & getFields() const noexcept { return _fields; } diff --git a/document/src/vespa/document/fieldset/fieldsets.cpp b/document/src/vespa/document/fieldset/fieldsets.cpp index 74dac80879a..0ed9ace7467 100644 --- a/document/src/vespa/document/fieldset/fieldsets.cpp +++ b/document/src/vespa/document/fieldset/fieldsets.cpp @@ -27,7 +27,7 @@ computeHash(const Field::Set & set) { FieldCollection::FieldCollection(const DocumentType& type, Field::Set set) : _set(std::move(set)), _hash(computeHash(_set)), - _docType(type) + _docType(&type) { } FieldCollection::FieldCollection(const FieldCollection&) = default; diff --git a/document/src/vespa/document/fieldset/fieldsets.h b/document/src/vespa/document/fieldset/fieldsets.h index c92453cc67e..1a3559ecd95 100644 --- a/document/src/vespa/document/fieldset/fieldsets.h +++ b/document/src/vespa/document/fieldset/fieldsets.h @@ -54,17 +54,19 @@ public: FieldCollection(const FieldCollection &); FieldCollection(FieldCollection&&) = default; ~FieldCollection() override; + FieldCollection& operator=(const FieldCollection&) = default; + FieldCollection& operator=(FieldCollection&&) = default; bool contains(const FieldSet& fields) const override; Type getType() const override { return Type::SET; } - const DocumentType& getDocumentType() const { return _docType; } + const DocumentType& getDocumentType() const { return *_docType; } const Field::Set& getFields() const { return _set; } uint64_t hash() const { return _hash; } private: Field::Set _set; uint64_t _hash; - const DocumentType& _docType; + const DocumentType* _docType; }; } |