aboutsummaryrefslogtreecommitdiff
path: root/toolsrc/include
diff options
context:
space:
mode:
authorRobert Schumacher <roschuma@microsoft.com>2016-11-04 17:05:00 -0700
committerRobert Schumacher <roschuma@microsoft.com>2016-11-04 17:05:00 -0700
commit8c73539499f2211baa7cdf3248856bb1f45a7947 (patch)
treea86e0f81b295a9e5fcebe85dec1aad2ea3aca58b /toolsrc/include
parentd7ff71610b5eed96c86374ad0fb41857a49839cb (diff)
parentf413b423960ab6080681d460a042a2e09dc1c0e6 (diff)
downloadvcpkg-8c73539499f2211baa7cdf3248856bb1f45a7947.tar.gz
vcpkg-8c73539499f2211baa7cdf3248856bb1f45a7947.zip
Merge branch 'master' of https://github.com/microsoft/vcpkg
Diffstat (limited to 'toolsrc/include')
-rw-r--r--toolsrc/include/BinaryParagraph.h2
-rw-r--r--toolsrc/include/SourceParagraph.h2
-rw-r--r--toolsrc/include/vcpkg_Maps.h11
-rw-r--r--toolsrc/include/vcpkg_Strings.h3
-rw-r--r--toolsrc/include/vcpkglib_helpers.h2
5 files changed, 18 insertions, 2 deletions
diff --git a/toolsrc/include/BinaryParagraph.h b/toolsrc/include/BinaryParagraph.h
index 01979c924..dcb986423 100644
--- a/toolsrc/include/BinaryParagraph.h
+++ b/toolsrc/include/BinaryParagraph.h
@@ -10,7 +10,7 @@ namespace vcpkg
struct BinaryParagraph
{
BinaryParagraph();
- explicit BinaryParagraph(const std::unordered_map<std::string, std::string>& fields);
+ explicit BinaryParagraph(std::unordered_map<std::string, std::string> fields);
BinaryParagraph(const SourceParagraph& spgh, const triplet& target_triplet);
std::string displayname() const;
diff --git a/toolsrc/include/SourceParagraph.h b/toolsrc/include/SourceParagraph.h
index 72dca8324..bac005144 100644
--- a/toolsrc/include/SourceParagraph.h
+++ b/toolsrc/include/SourceParagraph.h
@@ -9,7 +9,7 @@ namespace vcpkg
{
SourceParagraph();
- explicit SourceParagraph(const std::unordered_map<std::string, std::string>& fields);
+ explicit SourceParagraph(std::unordered_map<std::string, std::string> fields);
std::string name;
std::string version;
diff --git a/toolsrc/include/vcpkg_Maps.h b/toolsrc/include/vcpkg_Maps.h
index 5b7b8ed46..886889294 100644
--- a/toolsrc/include/vcpkg_Maps.h
+++ b/toolsrc/include/vcpkg_Maps.h
@@ -15,4 +15,15 @@ namespace vcpkg { namespace Maps
}
return key_set;
}
+
+ template <typename K, typename V>
+ std::vector<K> extract_keys(const std::unordered_map<K, V>& input_map)
+ {
+ std::vector<K> key_set;
+ for (auto const& element : input_map)
+ {
+ key_set.push_back(element.first);
+ }
+ return key_set;
+ }
}}
diff --git a/toolsrc/include/vcpkg_Strings.h b/toolsrc/include/vcpkg_Strings.h
index 70526198c..d55a01224 100644
--- a/toolsrc/include/vcpkg_Strings.h
+++ b/toolsrc/include/vcpkg_Strings.h
@@ -1,6 +1,7 @@
#pragma once
#include <string>
+#include <vector>
namespace vcpkg {namespace Strings {namespace details
{
@@ -67,4 +68,6 @@ namespace vcpkg {namespace Strings
std::string::const_iterator case_insensitive_ascii_find(const std::string& s, const std::string& pattern);
std::string ascii_to_lowercase(const std::string& input);
+
+ std::string join(const std::vector<std::string>& v, const std::string& delimiter);
}}
diff --git a/toolsrc/include/vcpkglib_helpers.h b/toolsrc/include/vcpkglib_helpers.h
index 72711d63b..05c9e17df 100644
--- a/toolsrc/include/vcpkglib_helpers.h
+++ b/toolsrc/include/vcpkglib_helpers.h
@@ -5,8 +5,10 @@
namespace vcpkg {namespace details
{
std::string optional_field(const std::unordered_map<std::string, std::string>& fields, const std::string& fieldname);
+ std::string remove_optional_field(std::unordered_map<std::string, std::string>* fields, const std::string& fieldname);
std::string required_field(const std::unordered_map<std::string, std::string>& fields, const std::string& fieldname);
+ std::string remove_required_field(std::unordered_map<std::string, std::string>* fields, const std::string& fieldname);
std::vector<std::string> parse_depends(const std::string& depends_string);
}}