aboutsummaryrefslogtreecommitdiffstats
path: root/src/utils/stl_util.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/utils/stl_util.h')
-rw-r--r--src/utils/stl_util.h94
1 files changed, 0 insertions, 94 deletions
diff --git a/src/utils/stl_util.h b/src/utils/stl_util.h
deleted file mode 100644
index 0710d61a5..000000000
--- a/src/utils/stl_util.h
+++ /dev/null
@@ -1,94 +0,0 @@
-/*
-* STL Utility Functions
-* (C) 1999-2007 Jack Lloyd
-*
-* Distributed under the terms of the Botan license
-*/
-
-#ifndef BOTAN_STL_UTIL_H__
-#define BOTAN_STL_UTIL_H__
-
-#include <vector>
-#include <string>
-#include <map>
-
-namespace Botan {
-
-inline std::vector<byte> to_byte_vector(const std::string& s)
- {
- return std::vector<byte>(reinterpret_cast<const byte*>(&s[0]),
- reinterpret_cast<const byte*>(&s[s.size()]));
- }
-
-/*
-* Searching through a std::map
-* @param mapping the map to search
-* @param key is what to look for
-* @param null_result is the value to return if key is not in mapping
-* @return mapping[key] or null_result
-*/
-template<typename K, typename V>
-inline V search_map(const std::map<K, V>& mapping,
- const K& key,
- const V& null_result = V())
- {
- auto i = mapping.find(key);
- if(i == mapping.end())
- return null_result;
- return i->second;
- }
-
-template<typename K, typename V, typename R>
-inline R search_map(const std::map<K, V>& mapping, const K& key,
- const R& null_result, const R& found_result)
- {
- auto i = mapping.find(key);
- if(i == mapping.end())
- return null_result;
- return found_result;
- }
-
-/*
-* Insert a key/value pair into a multimap
-*/
-template<typename K, typename V>
-void multimap_insert(std::multimap<K, V>& multimap,
- const K& key, const V& value)
- {
-#if defined(BOTAN_BUILD_COMPILER_IS_SUN_STUDIO)
- // Work around a strange bug in Sun Studio
- multimap.insert(std::make_pair<const K, V>(key, value));
-#else
- multimap.insert(std::make_pair(key, value));
-#endif
- }
-
-/**
-* Existence check for values
-*/
-template<typename T>
-bool value_exists(const std::vector<T>& vec,
- const T& val)
- {
- for(size_t i = 0; i != vec.size(); ++i)
- if(vec[i] == val)
- return true;
- return false;
- }
-
-template<typename T, typename Pred>
-void map_remove_if(Pred pred, T& assoc)
- {
- auto i = assoc.begin();
- while(i != assoc.end())
- {
- if(pred(i->first))
- assoc.erase(i++);
- else
- i++;
- }
- }
-
-}
-
-#endif