20 std::optional<StorePath> deriver;
21 StorePathSet references;
32using SubstitutablePathInfos = std::map<StorePath, SubstitutablePathInfo>;
35struct UnkeyedValidPathInfo
37 std::optional<StorePath> deriver;
42 StorePathSet references;
43 time_t registrationTime = 0;
72 std::optional<ContentAddress>
ca;
74 UnkeyedValidPathInfo(
const UnkeyedValidPathInfo & other) =
default;
83struct ValidPathInfo : UnkeyedValidPathInfo {
112 static const size_t maxSigs = std::numeric_limits<size_t>::max();
124 bool checkSignature(
const Store & store,
const PublicKeys & publicKeys,
const std::string & sig)
const;
126 Strings shortRefs()
const;
128 ValidPathInfo(
const ValidPathInfo & other) =
default;
130 ValidPathInfo(
StorePath && path, UnkeyedValidPathInfo info) : UnkeyedValidPathInfo(info), path(std::move(path)) { };
131 ValidPathInfo(
const StorePath & path, UnkeyedValidPathInfo info) : UnkeyedValidPathInfo(info), path(path) { };
133 ValidPathInfo(
const Store & store,
136 virtual ~ValidPathInfo() { }
139using ValidPathInfos = std::map<StorePath, ValidPathInfo>;
Definition store-api.hh:195
#define DECLARE_CMP(my_type)
Definition comparator.hh:33
Definition content-address.hh:242
Definition path-info.hh:19
uint64_t downloadSize
Definition path-info.hh:25
uint64_t narSize
Definition path-info.hh:29
Definition path-info.hh:36
std::optional< ContentAddress > ca
Definition path-info.hh:72
bool ultimate
Definition path-info.hh:51
Hash narHash
Definition path-info.hh:41
bool checkSignature(const Store &store, const PublicKeys &publicKeys, const std::string &sig) const
Definition path-info.cc:106
std::string fingerprint(const Store &store) const
Definition path-info.cc:26
size_t checkSignatures(const Store &store, const PublicKeys &publicKeys) const
Definition path-info.cc:94
bool isContentAddressed(const Store &store) const
Definition path-info.cc:76
std::optional< ContentAddressWithReferences > contentAddressWithReferences() const
Definition path-info.cc:44