#pragma once #include #include #include #include namespace vcpkg::Paragraphs { using Paragraph = Parse::Paragraph; ExpectedS parse_single_paragraph(const std::string& str, const std::string& origin); ExpectedS get_single_paragraph(const Files::Filesystem& fs, const fs::path& control_path); ExpectedS> get_paragraphs(const Files::Filesystem& fs, const fs::path& control_path); ExpectedS> parse_paragraphs(const std::string& str, const std::string& origin); bool is_port_directory(const Files::Filesystem& fs, const fs::path& path); Parse::ParseExpected try_load_manifest(const Files::Filesystem& fs, const std::string& port_name, const fs::path& path_to_manifest, std::error_code& ec); Parse::ParseExpected try_load_port(const Files::Filesystem& fs, const fs::path& path); ExpectedS try_load_cached_package(const VcpkgPaths& paths, const PackageSpec& spec); struct LoadResults { std::vector> paragraphs; std::vector> errors; }; LoadResults try_load_all_ports(const Files::Filesystem& fs, const fs::path& ports_dir); std::vector> load_all_ports(const Files::Filesystem& fs, const fs::path& ports_dir); }