summaryrefslogtreecommitdiffstats
path: root/document
diff options
context:
space:
mode:
authorHenning Baldersheim <balder@yahoo-inc.com>2019-01-23 08:34:35 +0000
committerHenning Baldersheim <balder@yahoo-inc.com>2019-01-23 08:34:35 +0000
commit1a87e59592c7f402ac11371cb0ce0afa06ef30da (patch)
treeebbe48e6150e211437bcf59eca364a3fb451ee78 /document
parent261fc7a26287fad35437988acb1bc20ab883bc8a (diff)
Covariant return type.
Diffstat (limited to 'document')
-rw-r--r--document/src/vespa/document/fieldvalue/boolfieldvalue.cpp15
-rw-r--r--document/src/vespa/document/fieldvalue/boolfieldvalue.h10
2 files changed, 15 insertions, 10 deletions
diff --git a/document/src/vespa/document/fieldvalue/boolfieldvalue.cpp b/document/src/vespa/document/fieldvalue/boolfieldvalue.cpp
index 6eb5adc875c..e7cab34d3ea 100644
--- a/document/src/vespa/document/fieldvalue/boolfieldvalue.cpp
+++ b/document/src/vespa/document/fieldvalue/boolfieldvalue.cpp
@@ -82,23 +82,28 @@ BoolFieldValue::getAsString() const {
return _value ? "true" : "false";
}
-FieldValue& BoolFieldValue::operator=(vespalib::stringref v) {
+BoolFieldValue&
+BoolFieldValue::operator=(vespalib::stringref v) {
_value = (v == "true");
return *this;
}
-FieldValue& BoolFieldValue::operator=(int32_t v) {
+BoolFieldValue&
+BoolFieldValue::operator=(int32_t v) {
_value = (v != 0);
return *this;
}
-FieldValue& BoolFieldValue::operator=(int64_t v) {
+BoolFieldValue&
+BoolFieldValue::operator=(int64_t v) {
_value = (v != 0);
return *this;
}
-FieldValue& BoolFieldValue::operator=(float v) {
+BoolFieldValue&
+BoolFieldValue::operator=(float v) {
_value = (v != 0);
return *this;
}
-FieldValue& BoolFieldValue::operator=(double v) {
+BoolFieldValue&
+BoolFieldValue::operator=(double v) {
_value = (v != 0);
return *this;
}
diff --git a/document/src/vespa/document/fieldvalue/boolfieldvalue.h b/document/src/vespa/document/fieldvalue/boolfieldvalue.h
index e87a337856f..e453359214d 100644
--- a/document/src/vespa/document/fieldvalue/boolfieldvalue.h
+++ b/document/src/vespa/document/fieldvalue/boolfieldvalue.h
@@ -41,11 +41,11 @@ public:
double getAsDouble() const override;
vespalib::string getAsString() const override;
- FieldValue& operator=(vespalib::stringref) override;
- FieldValue& operator=(int32_t) override;
- FieldValue& operator=(int64_t) override;
- FieldValue& operator=(float) override;
- FieldValue& operator=(double) override;
+ BoolFieldValue& operator=(vespalib::stringref) override;
+ BoolFieldValue& operator=(int32_t) override;
+ BoolFieldValue& operator=(int64_t) override;
+ BoolFieldValue& operator=(float) override;
+ BoolFieldValue& operator=(double) override;
DECLARE_IDENTIFIABLE(BoolFieldValue);
};