15using PluginsByName = std::map<std::string, const PluginManifest*, std::less<>>;
87 list.Refused.push_back({name, std::move(
reason)});
94 std::span<const PluginManifest>
loaded)
LoadList Resolve(std::span< const PluginManifest > installed)
Decide which of installed the host loads.
std::vector< std::string > RequiredDependents(std::string_view plugin, std::span< const PluginManifest > loaded)
static void RefuseUnsatisfied(const PluginsByName &plugins, RefusalsByName &refused)
static std::string ReadFile(const std::filesystem::path &path)
std::map< std::string, const PluginManifest *, std::less<> > PluginsByName
std::map< std::string, Error, std::less<> > RefusalsByName
One failure: a code to branch on, text for the log, and an optional translation key.
static Error Invalid(std::string detail)
static Error NotFound(std::string detail)
static Error NotReady(std::string detail)
std::vector< std::string > ToLoad