aboutsummaryrefslogtreecommitdiff
path: root/toolsrc/include
diff options
context:
space:
mode:
authorRobert Schumacher <roschuma@microsoft.com>2018-01-23 02:21:47 -0800
committerRobert Schumacher <roschuma@microsoft.com>2018-01-23 02:21:47 -0800
commitff8a2d17266f1c601d04ac7b3c3e85ad674c8491 (patch)
tree8eaf00b0ab95aa9139d2f5c7da528cb473e6dc13 /toolsrc/include
parent10d712ed018fe3b2cd8d485e41f32ad555d9a1f1 (diff)
downloadvcpkg-ff8a2d17266f1c601d04ac7b3c3e85ad674c8491.tar.gz
vcpkg-ff8a2d17266f1c601d04ac7b3c3e85ad674c8491.zip
[vcpkg] Remove AnyParagraph and InstallPlanType::INSTALL
Diffstat (limited to 'toolsrc/include')
-rw-r--r--toolsrc/include/vcpkg/dependencies.h36
-rw-r--r--toolsrc/include/vcpkg/statusparagraphs.h2
2 files changed, 20 insertions, 18 deletions
diff --git a/toolsrc/include/vcpkg/dependencies.h b/toolsrc/include/vcpkg/dependencies.h
index 84886c8dc..14f51c216 100644
--- a/toolsrc/include/vcpkg/dependencies.h
+++ b/toolsrc/include/vcpkg/dependencies.h
@@ -23,23 +23,10 @@ namespace vcpkg::Dependencies
const Build::BuildPackageOptions& options);
std::string to_output_string(RequestType request_type, const CStringView s);
- struct AnyParagraph
- {
- std::vector<PackageSpec> dependencies(const Triplet& triplet) const;
-
- Optional<StatusParagraph> status_paragraph;
- Optional<BinaryControlFile> binary_control_file;
- Optional<const SourceControlFile&> source_control_file;
- };
-}
-
-namespace vcpkg::Dependencies
-{
enum class InstallPlanType
{
UNKNOWN,
BUILD_AND_INSTALL,
- INSTALL,
ALREADY_INSTALLED,
EXCLUDED
};
@@ -51,18 +38,22 @@ namespace vcpkg::Dependencies
InstallPlanAction();
InstallPlanAction(const PackageSpec& spec,
+ std::vector<const StatusParagraph*>&& spghs,
const std::unordered_set<std::string>& features,
const RequestType& request_type);
- InstallPlanAction(const PackageSpec& spec, const AnyParagraph& any_paragraph, const RequestType& request_type);
+
InstallPlanAction(const PackageSpec& spec,
- const SourceControlFile& any_paragraph,
+ const SourceControlFile& scf,
const std::unordered_set<std::string>& features,
const RequestType& request_type);
std::string displayname() const;
PackageSpec spec;
- AnyParagraph any_paragraph;
+
+ Optional<const SourceControlFile&> source_control_file;
+ Optional<std::vector<const StatusParagraph*>> status_paragraphs;
+
InstallPlanType plan_type;
RequestType request_type;
Build::BuildPackageOptions build_options;
@@ -111,12 +102,21 @@ namespace vcpkg::Dependencies
static bool compare_by_name(const ExportPlanAction* left, const ExportPlanAction* right);
ExportPlanAction();
- ExportPlanAction(const PackageSpec& spec, const AnyParagraph& any_paragraph, const RequestType& request_type);
+ ExportPlanAction(const PackageSpec& spec,
+ std::vector<const StatusParagraph*>&& status_paragraphs,
+ const RequestType& request_type);
+
+ ExportPlanAction(const PackageSpec& spec, const RequestType& request_type);
PackageSpec spec;
- AnyParagraph any_paragraph;
ExportPlanType plan_type;
RequestType request_type;
+
+ Optional<const BinaryParagraph&> core_paragraph() const;
+ std::vector<PackageSpec> dependencies(const Triplet& triplet) const;
+
+ private:
+ std::vector<const StatusParagraph*> m_spghs;
};
struct PortFileProvider
diff --git a/toolsrc/include/vcpkg/statusparagraphs.h b/toolsrc/include/vcpkg/statusparagraphs.h
index 747a0c1ab..51fbd14dd 100644
--- a/toolsrc/include/vcpkg/statusparagraphs.h
+++ b/toolsrc/include/vcpkg/statusparagraphs.h
@@ -21,6 +21,8 @@ namespace vcpkg
std::vector<std::unique_ptr<StatusParagraph>*> find_all(const std::string& name, const Triplet& triplet);
+ std::vector<const std::unique_ptr<StatusParagraph>*> find_all_installed(const PackageSpec& spec) const;
+
const_iterator find_installed(const PackageSpec& spec) const
{
return find_installed(spec.name(), spec.triplet());