#pragma once #include "util.hh" #include "path.hh" #include #include namespace nix { class Store; struct BuildableOpaque { StorePath path; nlohmann::json toJSON(ref store) const; }; struct BuildableFromDrv { StorePath drvPath; std::map> outputs; nlohmann::json toJSON(ref store) const; }; typedef std::variant< BuildableOpaque, BuildableFromDrv > Buildable; typedef std::vector Buildables; nlohmann::json buildablesToJSON(const Buildables & buildables, ref store); }