#pragma once #include #include #include #include #include #include namespace vcpkg::Paragraphs { using RawParagraph = Parse::RawParagraph; Expected get_single_paragraph(const Files::Filesystem& fs, const fs::path& control_path); Expected> get_paragraphs(const Files::Filesystem& fs, const fs::path& control_path); Expected parse_single_paragraph(const std::string& str); Expected> parse_paragraphs(const std::string& str); Parse::ParseExpected try_load_port(const Files::Filesystem& fs, const fs::path& control_path); Expected try_load_cached_control_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); }