#pragma once #include "PackageSpec.h" #include "SourceParagraph.h" #include namespace vcpkg { /// /// Built package metadata /// struct BinaryParagraph { BinaryParagraph(); explicit BinaryParagraph(std::unordered_map fields); BinaryParagraph(const SourceParagraph& spgh, const Triplet& triplet); BinaryParagraph(const SourceParagraph& spgh, const FeatureParagraph& fpgh, const Triplet& triplet); std::string displayname() const; std::string fullstem() const; std::string dir() const; PackageSpec spec; std::string version; std::string description; std::string maintainer; std::string feature; std::vector default_features; std::vector depends; }; struct BinaryControlFile { BinaryParagraph core_paragraph; std::vector features; }; void serialize(const BinaryParagraph& pgh, std::string& out_str); }