]> source.dussan.org Git - rspamd.git/commitdiff
[Minor] Move stuff
authorVsevolod Stakhov <vsevolod@rspamd.com>
Tue, 21 Jun 2022 18:13:35 +0000 (19:13 +0100)
committerVsevolod Stakhov <vsevolod@rspamd.com>
Tue, 21 Jun 2022 18:13:35 +0000 (19:13 +0100)
src/libserver/css/css_rule.hxx
src/libutil/cxx/hash_util.hxx
src/libutil/cxx/util.hxx

index 3385a0de1fea39f49b330f6c5fd5345d9f8942eb..acf44ba869c1f79b361afe5f12dc6d337999cd11 100644 (file)
@@ -23,6 +23,7 @@
 #include "css_parser.hxx"
 #include "contrib/robin-hood/robin_hood.h"
 #include "libutil/cxx/util.hxx"
+#include "libutil/cxx/hash_util.hxx"
 #include <vector>
 #include <memory>
 
index 6d20ddb93715d7f517ddef8cb4fe69fddf434da5..d8529774ece736041fd7217ab5fa084a0d63db58 100644 (file)
 
 
 namespace rspamd {
+/*
+ * Transparent smart pointers hashing
+ */
+template<typename T>
+struct smart_ptr_equal {
+       using is_transparent = void; /* We want to find values in a set of shared_ptr by reference */
+       auto operator()(const std::shared_ptr<T> &a, const std::shared_ptr<T> &b) const {
+               return (*a) == (*b);
+       }
+       auto operator()(const std::shared_ptr<T> &a, const T &b) const {
+               return (*a) == b;
+       }
+       auto operator()(const T &a, const std::shared_ptr<T> &b) const {
+               return a == (*b);
+       }
+       auto operator()(const std::unique_ptr<T> &a, const std::unique_ptr<T> &b) const {
+               return (*a) == (*b);
+       }
+       auto operator()(const std::unique_ptr<T> &a, const T &b) const {
+               return (*a) == b;
+       }
+       auto operator()(const T &a, const std::unique_ptr<T> &b) const {
+               return a == (*b);
+       }
+};
+
+template<typename T>
+struct smart_ptr_hash {
+       using is_transparent = void; /* We want to find values in a set of shared_ptr by reference */
+       auto operator()(const std::shared_ptr<T> &a) const {
+               return std::hash<T>()(*a);
+       }
+       auto operator()(const std::unique_ptr<T> &a) const {
+               return std::hash<T>()(*a);
+       }
+       auto operator()(const T &a) const {
+               return std::hash<T>()(a);
+       }
+};
 
 /* Enable lookup by string view */
 struct smart_str_equal {
index 68165569e0aafcb4391b0edaa7feda5d47367968..88a0229546e817f4505d5f316aa41454a2e71f34 100644 (file)
  */
 
 namespace rspamd {
-/*
- * Transparent smart pointers hashing
- */
-template<typename T>
-struct smart_ptr_equal {
-       using is_transparent = void; /* We want to find values in a set of shared_ptr by reference */
-       auto operator()(const std::shared_ptr<T> &a, const std::shared_ptr<T> &b) const {
-               return (*a) == (*b);
-       }
-       auto operator()(const std::shared_ptr<T> &a, const T &b) const {
-               return (*a) == b;
-       }
-       auto operator()(const T &a, const std::shared_ptr<T> &b) const {
-               return a == (*b);
-       }
-       auto operator()(const std::unique_ptr<T> &a, const std::unique_ptr<T> &b) const {
-               return (*a) == (*b);
-       }
-       auto operator()(const std::unique_ptr<T> &a, const T &b) const {
-               return (*a) == b;
-       }
-       auto operator()(const T &a, const std::unique_ptr<T> &b) const {
-               return a == (*b);
-       }
-};
-
-template<typename T>
-struct smart_ptr_hash {
-       using is_transparent = void; /* We want to find values in a set of shared_ptr by reference */
-       auto operator()(const std::shared_ptr<T> &a) const {
-               return std::hash<T>()(*a);
-       }
-       auto operator()(const std::unique_ptr<T> &a) const {
-               return std::hash<T>()(*a);
-       }
-       auto operator()(const T &a) const {
-               return std::hash<T>()(a);
-       }
-};
-
 /*
  * Creates std::array from a standard C style array with automatic size calculation
  */