aboutsummaryrefslogtreecommitdiff
path: root/toolsrc/include
diff options
context:
space:
mode:
authorAlexander Karatarakis <alkarata@microsoft.com>2017-01-30 17:52:53 -0800
committerAlexander Karatarakis <alkarata@microsoft.com>2017-01-30 21:52:44 -0800
commit4e64dc598a53493a85d65f94c81a33c4862fc89a (patch)
tree4df6a79acf4d1a01d6d455862a10978fb92b2eab /toolsrc/include
parent4252d9436e6d4104f6acc5560aef461046aae853 (diff)
downloadvcpkg-4e64dc598a53493a85d65f94c81a33c4862fc89a.tar.gz
vcpkg-4e64dc598a53493a85d65f94c81a33c4862fc89a.zip
[Dependencies] Specify constructors and fix bug with default remove_plan_action init
Diffstat (limited to 'toolsrc/include')
-rw-r--r--toolsrc/include/vcpkg_Dependencies.h22
1 files changed, 22 insertions, 0 deletions
diff --git a/toolsrc/include/vcpkg_Dependencies.h b/toolsrc/include/vcpkg_Dependencies.h
index ba84d1bd1..b63816089 100644
--- a/toolsrc/include/vcpkg_Dependencies.h
+++ b/toolsrc/include/vcpkg_Dependencies.h
@@ -9,12 +9,14 @@ namespace vcpkg::Dependencies
{
enum class request_type
{
+ UNKNOWN,
USER_REQUESTED,
AUTO_SELECTED
};
enum class install_plan_type
{
+ UNKNOWN,
BUILD_AND_INSTALL,
INSTALL,
ALREADY_INSTALLED
@@ -22,6 +24,13 @@ namespace vcpkg::Dependencies
struct install_plan_action
{
+ install_plan_action();
+ install_plan_action(const install_plan_type& plan_type, optional<BinaryParagraph> binary_pgh, optional<SourceParagraph> source_pgh);
+ install_plan_action(const install_plan_action&) = delete;
+ install_plan_action(install_plan_action&&) = default;
+ install_plan_action& operator=(const install_plan_action&) = delete;
+ install_plan_action& operator=(install_plan_action&&) = default;
+
install_plan_type plan_type;
optional<BinaryParagraph> binary_pgh;
optional<SourceParagraph> source_pgh;
@@ -29,24 +38,37 @@ namespace vcpkg::Dependencies
struct package_spec_with_install_plan
{
+ package_spec_with_install_plan(const package_spec& spec, install_plan_action&& plan);
+
package_spec spec;
install_plan_action plan;
};
enum class remove_plan_type
{
+ UNKNOWN,
NOT_INSTALLED,
REMOVE
};
struct remove_plan_action
{
+ remove_plan_action();
+ remove_plan_action(const remove_plan_type& plan_type, const request_type& request_type);
+ remove_plan_action(const remove_plan_action&) = delete;
+ remove_plan_action(remove_plan_action&&) = default;
+ remove_plan_action& operator=(const remove_plan_action&) = delete;
+ remove_plan_action& operator=(remove_plan_action&&) = default;
+
+
remove_plan_type plan_type;
request_type request_type;
};
struct package_spec_with_remove_plan
{
+ package_spec_with_remove_plan(const package_spec& spec, remove_plan_action&& plan);
+
package_spec spec;
remove_plan_action plan;
};