diff options
author | Tor Egge <Tor.Egge@broadpark.no> | 2020-12-04 13:50:02 +0100 |
---|---|---|
committer | Tor Egge <Tor.Egge@broadpark.no> | 2020-12-04 13:50:02 +0100 |
commit | bc11fd2a0c0138b60f51989c67c684423886e2f6 (patch) | |
tree | 3824da48775328816c68a69137605063ed4b874c /document | |
parent | 28ea00bcf2f4e4935a0f9da4f42072b26bd00a67 (diff) |
Add operator overloads to avoid ambiguous reversed operators.
Diffstat (limited to 'document')
-rw-r--r-- | document/src/vespa/document/datatype/documenttype.h | 1 | ||||
-rw-r--r-- | document/src/vespa/document/datatype/referencedatatype.h | 1 | ||||
-rw-r--r-- | document/src/vespa/document/datatype/structureddatatype.h | 1 |
3 files changed, 3 insertions, 0 deletions
diff --git a/document/src/vespa/document/datatype/documenttype.h b/document/src/vespa/document/datatype/documenttype.h index fae65addb48..5aff0a91f75 100644 --- a/document/src/vespa/document/datatype/documenttype.h +++ b/document/src/vespa/document/datatype/documenttype.h @@ -87,6 +87,7 @@ public: std::unique_ptr<FieldValue> createFieldValue() const override; void print(std::ostream&, bool verbose, const std::string& indent) const override; bool operator==(const DataType& type) const override; + bool operator==(const DocumentType& type) const { return operator==(static_cast<const DataType&>(type)); } uint32_t getFieldCount() const override { return _fields->getFieldCount(); } diff --git a/document/src/vespa/document/datatype/referencedatatype.h b/document/src/vespa/document/datatype/referencedatatype.h index bc7db7800aa..8f3d2a366cc 100644 --- a/document/src/vespa/document/datatype/referencedatatype.h +++ b/document/src/vespa/document/datatype/referencedatatype.h @@ -26,6 +26,7 @@ public: void onBuildFieldPath(FieldPath & path, vespalib::stringref remainingFieldName) const override; bool operator==(const DataType &type) const override; + bool operator==(const ReferenceDataType& type) const { return operator==(static_cast<const DataType&>(type)); } }; } // document diff --git a/document/src/vespa/document/datatype/structureddatatype.h b/document/src/vespa/document/datatype/structureddatatype.h index e940629553f..5bfcbcd19f0 100644 --- a/document/src/vespa/document/datatype/structureddatatype.h +++ b/document/src/vespa/document/datatype/structureddatatype.h @@ -37,6 +37,7 @@ public: virtual StructuredDataType* clone() const override = 0; bool operator==(const DataType& type) const override; + bool operator==(const StructuredDataType& type) const { return operator==(static_cast<const DataType&>(type)); } static int32_t createId(vespalib::stringref name); |