#pragma once #include #include #include namespace vcpkg { /// /// Built package metadata /// struct BinaryParagraph { BinaryParagraph(); explicit BinaryParagraph(Parse::RawParagraph fields); BinaryParagraph(const SourceParagraph& spgh, Triplet triplet, const std::string& abi_tag, const std::vector& deps); BinaryParagraph(const SourceParagraph& spgh, const FeatureParagraph& fpgh, Triplet triplet, const std::vector& deps); 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; std::string abi; Type type; }; struct BinaryControlFile { BinaryParagraph core_paragraph; std::vector features; }; void serialize(const BinaryParagraph& pgh, std::string& out_str); }