cemu-vcpkg/toolsrc/include/vcpkg/binaryparagraph.h
Robert Schumacher 8db6db5dac
[vcpkg] Further parser improvements (#9895)
* [vcpkg] Consolidate several internal parsers together (packagespecs + logicexpression + control) and enhance error messages

* [vcpkg] Migrate Build-Depends parsing to new framework

* [vcpkg] Fix tests. Re-enable underscores in feature names due to libwebp[vwebp_sdl] -- todo: rename this feature and remove underscores.
2020-02-07 11:24:35 -08:00

50 lines
1.3 KiB
C++

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