summaryrefslogtreecommitdiff
path: root/cpp
diff options
context:
space:
mode:
Diffstat (limited to 'cpp')
-rw-r--r--cpp/src/qpid/framing/FieldTable.cpp12
-rw-r--r--cpp/src/qpid/framing/FieldTable.h3
2 files changed, 15 insertions, 0 deletions
diff --git a/cpp/src/qpid/framing/FieldTable.cpp b/cpp/src/qpid/framing/FieldTable.cpp
index 4da5394479..7ff5a07c9a 100644
--- a/cpp/src/qpid/framing/FieldTable.cpp
+++ b/cpp/src/qpid/framing/FieldTable.cpp
@@ -30,6 +30,18 @@
namespace qpid {
namespace framing {
+FieldTable::FieldTable(const FieldTable& ft)
+{
+ *this = ft;
+}
+
+FieldTable& FieldTable::operator=(const FieldTable& ft)
+{
+ clear();
+ values = ft.values;
+ return *this;
+}
+
FieldTable::~FieldTable() {}
uint32_t FieldTable::encodedSize() const {
diff --git a/cpp/src/qpid/framing/FieldTable.h b/cpp/src/qpid/framing/FieldTable.h
index 600ee5356d..9e1214a28c 100644
--- a/cpp/src/qpid/framing/FieldTable.h
+++ b/cpp/src/qpid/framing/FieldTable.h
@@ -51,7 +51,10 @@ class FieldTable
typedef std::map<std::string, ValuePtr> ValueMap;
typedef ValueMap::iterator iterator;
+ FieldTable() {};
+ FieldTable(const FieldTable& ft);
~FieldTable();
+ FieldTable& operator=(const FieldTable& ft);
uint32_t encodedSize() const;
void encode(Buffer& buffer) const;
void decode(Buffer& buffer);