aboutsummaryrefslogtreecommitdiffstats
path: root/staging_vespalib
diff options
context:
space:
mode:
authorHenning Baldersheim <balder@yahoo-inc.com>2021-03-18 12:15:55 +0000
committerHenning Baldersheim <balder@yahoo-inc.com>2021-03-18 12:15:55 +0000
commita6d3b9e13a770c6ed8746dad52495dc7c53f5fbc (patch)
treee3c479f0657f2123648b1268a6b08b2739cf6376 /staging_vespalib
parentfc9f3de365151ca3de8d70f4d60f4f7da66d2fc3 (diff)
Ensure NameCollection can not be copied
Diffstat (limited to 'staging_vespalib')
-rw-r--r--staging_vespalib/src/vespa/vespalib/metrics/metrics_manager.h2
-rw-r--r--staging_vespalib/src/vespa/vespalib/metrics/name_collection.cpp10
-rw-r--r--staging_vespalib/src/vespa/vespalib/metrics/name_collection.h10
-rw-r--r--staging_vespalib/src/vespa/vespalib/metrics/name_repo.h7
4 files changed, 12 insertions, 17 deletions
diff --git a/staging_vespalib/src/vespa/vespalib/metrics/metrics_manager.h b/staging_vespalib/src/vespa/vespalib/metrics/metrics_manager.h
index 4bd919cd1bf..5095c2acdbf 100644
--- a/staging_vespalib/src/vespa/vespalib/metrics/metrics_manager.h
+++ b/staging_vespalib/src/vespa/vespalib/metrics/metrics_manager.h
@@ -4,7 +4,6 @@
#include <memory>
#include <thread>
#include <vespa/vespalib/stllike/string.h>
-#include "name_collection.h"
#include "counter.h"
#include "gauge.h"
#include "current_samples.h"
@@ -16,7 +15,6 @@
namespace vespalib::metrics {
-
/**
* Interface for a Metrics manager, for creating metrics
* and for fetching snapshots.
diff --git a/staging_vespalib/src/vespa/vespalib/metrics/name_collection.cpp b/staging_vespalib/src/vespa/vespalib/metrics/name_collection.cpp
index 6683908a9cd..747d3b5a5cf 100644
--- a/staging_vespalib/src/vespa/vespalib/metrics/name_collection.cpp
+++ b/staging_vespalib/src/vespa/vespalib/metrics/name_collection.cpp
@@ -1,9 +1,8 @@
// Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
#include "name_collection.h"
-#include <assert.h>
+#include <cassert>
-namespace vespalib {
-namespace metrics {
+namespace vespalib::metrics {
using Guard = std::lock_guard<std::mutex>;
@@ -17,6 +16,8 @@ NameCollection::NameCollection()
(void) first; // in case of NOP asserts
}
+NameCollection::~NameCollection() = default;
+
const vespalib::string &
NameCollection::lookup(size_t id) const
{
@@ -44,5 +45,4 @@ NameCollection::size() const
return _names_by_id.size();
}
-} // namespace vespalib::metrics
-} // namespace vespalib
+}
diff --git a/staging_vespalib/src/vespa/vespalib/metrics/name_collection.h b/staging_vespalib/src/vespa/vespalib/metrics/name_collection.h
index 6e939cd372d..d961e1df3f7 100644
--- a/staging_vespalib/src/vespa/vespalib/metrics/name_collection.h
+++ b/staging_vespalib/src/vespa/vespalib/metrics/name_collection.h
@@ -6,8 +6,7 @@
#include <vector>
#include <vespa/vespalib/stllike/string.h>
-namespace vespalib {
-namespace metrics {
+namespace vespalib::metrics {
// internal
class NameCollection {
@@ -22,10 +21,11 @@ public:
size_t size() const;
NameCollection();
- ~NameCollection() {}
+ NameCollection(const NameCollection &) = delete;
+ NameCollection & operator = (const NameCollection &) = delete;
+ ~NameCollection();
static constexpr size_t empty_id = 0;
};
-} // namespace vespalib::metrics
-} // namespace vespalib
+}
diff --git a/staging_vespalib/src/vespa/vespalib/metrics/name_repo.h b/staging_vespalib/src/vespa/vespalib/metrics/name_repo.h
index 217fc2e3219..a8c0d77d8b9 100644
--- a/staging_vespalib/src/vespa/vespalib/metrics/name_repo.h
+++ b/staging_vespalib/src/vespa/vespalib/metrics/name_repo.h
@@ -10,8 +10,7 @@
#include "name_collection.h"
#include "point_map_collection.h"
-namespace vespalib {
-namespace metrics {
+namespace vespalib::metrics {
/**
* Simple repo class
@@ -42,6 +41,4 @@ public:
static NameRepo instance;
};
-} // namespace vespalib::metrics
-} // namespace vespalib
-
+}