15 std::unique_ptr<nlohmann::json> structuredAttrs;
23 const nlohmann::json * getStructuredAttrs()
const
25 return structuredAttrs.get();
28 std::optional<std::string> getStringAttr(
const std::string &
name)
const;
30 bool getBoolAttr(
const std::string &
name,
bool def =
false)
const;
32 std::optional<Strings> getStringsAttr(
const std::string &
name)
const;
34 StringSet getRequiredSystemFeatures()
const;
36 bool canBuildLocally(
Store & localStore)
const;
38 bool willBuildLocally(
Store & localStore)
const;
40 bool substitutesAllowed()
const;
42 bool useUidRange()
const;
44 std::optional<nlohmann::json> prepareStructuredAttrs(
Store &
store,
const StorePathSet & inputPaths);