diff options
| author | Alexander Karatarakis <alkarata@microsoft.com> | 2017-01-30 17:52:53 -0800 |
|---|---|---|
| committer | Alexander Karatarakis <alkarata@microsoft.com> | 2017-01-30 21:52:44 -0800 |
| commit | 4e64dc598a53493a85d65f94c81a33c4862fc89a (patch) | |
| tree | 4df6a79acf4d1a01d6d455862a10978fb92b2eab /toolsrc/include | |
| parent | 4252d9436e6d4104f6acc5560aef461046aae853 (diff) | |
| download | vcpkg-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.h | 22 |
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; }; |
