summaryrefslogtreecommitdiffstats
path: root/persistence
diff options
context:
space:
mode:
authorHenning Baldersheim <balder@yahoo-inc.com>2016-11-23 11:32:38 +0000
committerHenning Baldersheim <balder@yahoo-inc.com>2016-11-23 11:32:38 +0000
commita7ace0984d67e689d54cc0b1c6e1519fc210a0ee (patch)
tree35f2da6ba644f9f72dddedb48b9b9bc2464a4843 /persistence
parenta97fc5b65d2a733fe27e7aac8f2dcfafb3bfc5ba (diff)
Avoid inlining the iostream stuff.
Diffstat (limited to 'persistence')
-rw-r--r--persistence/src/vespa/persistence/spi/bucket.cpp28
-rw-r--r--persistence/src/vespa/persistence/spi/bucket.h10
-rw-r--r--persistence/src/vespa/persistence/spi/bucketinfo.cpp18
-rw-r--r--persistence/src/vespa/persistence/spi/bucketinfo.h8
4 files changed, 33 insertions, 31 deletions
diff --git a/persistence/src/vespa/persistence/spi/bucket.cpp b/persistence/src/vespa/persistence/spi/bucket.cpp
index 423ffdd496c..d055f0eef59 100644
--- a/persistence/src/vespa/persistence/spi/bucket.cpp
+++ b/persistence/src/vespa/persistence/spi/bucket.cpp
@@ -7,21 +7,27 @@
namespace storage {
namespace spi {
-std::string Bucket::toString() const {
- std::ostringstream ost;
- print(ost);
+vespalib::string
+Bucket::toString() const {
+ vespalib::asciistream ost;
+ ost << *this;
return ost.str();
}
-void
-Bucket::print(std::ostream& out) const
+vespalib::asciistream&
+operator<<(vespalib::asciistream& os, const Bucket& bucket)
{
- out << "Bucket(0x"
- << std::hex << std::setw(sizeof(document::BucketId::Type) * 2)
- << std::setfill('0') << _bucket.getId()
- << std::dec
- << ", partition " << _partition
- << ")";
+ return os << "BucketId(0x"
+ << vespalib::hex << vespalib::setw(sizeof(document::BucketId::Type)*2) << vespalib::setfill('0')
+ << bucket.getBucketId()
+ << std::dec
+ << ", partition " << bucket.getPartition()
+ << ")";
+}
+
+std::ostream&
+operator<<(std::ostream& os, const Bucket& bucket) {
+ return os << bucket.toString();
}
} // spi
diff --git a/persistence/src/vespa/persistence/spi/bucket.h b/persistence/src/vespa/persistence/spi/bucket.h
index dc9419bbdae..b969f6363bf 100644
--- a/persistence/src/vespa/persistence/spi/bucket.h
+++ b/persistence/src/vespa/persistence/spi/bucket.h
@@ -38,15 +38,11 @@ public:
return (_bucket == o._bucket && _partition == o._partition);
}
- void print(std::ostream& out) const;
-
- std::string toString() const;
+ vespalib::string toString() const;
};
-inline std::ostream& operator<<(std::ostream& out, const Bucket& bucket) {
- bucket.print(out);
- return out;
-}
+vespalib::asciistream& operator<<(vespalib::asciistream& out, const Bucket& bucket);
+std::ostream& operator<<(std::ostream& out, const Bucket& bucket);
} // spi
} // storage
diff --git a/persistence/src/vespa/persistence/spi/bucketinfo.cpp b/persistence/src/vespa/persistence/spi/bucketinfo.cpp
index 4637b5b598b..3b298cfc2b2 100644
--- a/persistence/src/vespa/persistence/spi/bucketinfo.cpp
+++ b/persistence/src/vespa/persistence/spi/bucketinfo.cpp
@@ -46,9 +46,9 @@ BucketInfo::operator==(const BucketInfo& o) const
&& _active == o._active);
}
-void
-BucketInfo::print(std::ostream& out) const
-{
+vespalib::string
+BucketInfo::toString() const {
+ vespalib::asciistream out;
out << "BucketInfo(";
out << "crc 0x" << std::hex << _checksum << std::dec
<< ", documentCount " << _documentCount;
@@ -62,13 +62,15 @@ BucketInfo::print(std::ostream& out) const
out << ", ready " << (_ready ? "true" : "false")
<< ", active " << (_active ? "true" : "false");
out << ")";
+ return out.str();
}
-std::string
-BucketInfo::toString() const {
- std::ostringstream ost;
- print(ost);
- return ost.str();
+vespalib::asciistream& operator<<(vespalib::asciistream& out, const BucketInfo& info) {
+ return out << info.toString();
+}
+
+std::ostream& operator<<(std::ostream& out, const BucketInfo& info) {
+ return out << info.toString();
}
} // spi
diff --git a/persistence/src/vespa/persistence/spi/bucketinfo.h b/persistence/src/vespa/persistence/spi/bucketinfo.h
index fe6a95661fc..b4019c3c6cf 100644
--- a/persistence/src/vespa/persistence/spi/bucketinfo.h
+++ b/persistence/src/vespa/persistence/spi/bucketinfo.h
@@ -37,7 +37,7 @@ public:
bool operator==(const BucketInfo& o) const;
void print(std::ostream& out) const;
- std::string toString() const;
+ vespalib::string toString() const;
/**
* Get the checksum of the bucket. An empty bucket should have checksum of
@@ -99,10 +99,8 @@ private:
ActiveState _active;
};
-inline std::ostream& operator<<(std::ostream& out, const BucketInfo& info) {
- info.print(out);
- return out;
-}
+vespalib::asciistream& operator<<(vespalib::asciistream& out, const BucketInfo& info);
+std::ostream& operator<<(std::ostream& out, const BucketInfo& info);
} // spi
} // storage