15typedef std::string FlakeId;
50 bool operator==(
const FlakeRef & other)
const;
57 std::string to_string()
const;
59 fetchers::Attrs toAttrs()
const;
61 kj::Promise<Result<FlakeRef>> resolve(
ref<Store> store)
const;
63 static FlakeRef fromAttrs(
const fetchers::Attrs & attrs);
65 kj::Promise<Result<std::pair<fetchers::Tree, FlakeRef>>> fetchTree(
ref<Store> store)
const;
68std::ostream & operator << (std::ostream & str,
const FlakeRef & flakeRef);
70FlakeRef parseFlakeRef(
71 const std::string & url,
72 const std::optional<Path> & baseDir = {},
73 bool allowMissing =
false,
76std::optional<FlakeRef> maybeParseFlake(
77 const std::string & url,
const std::optional<Path> & baseDir = {});
79std::pair<FlakeRef, std::string> parseFlakeRefWithFragment(
80 const std::string & url,
81 const std::optional<Path> & baseDir = {},
82 bool allowMissing =
false,
85std::optional<std::pair<FlakeRef, std::string>> maybeParseFlakeRefWithFragment(
86 const std::string & url,
const std::optional<Path> & baseDir = {});
88std::tuple<FlakeRef, std::string, ExtendedOutputsSpec> parseFlakeRefWithFragmentAndExtendedOutputsSpec(
89 const std::string & url,
90 const std::optional<Path> & baseDir = {},
91 bool allowMissing =
false,
Definition flakeref.hh:38
Path subdir
Definition flakeref.hh:48
fetchers::Input input
Definition flakeref.hh:43
std::string Path
Definition types.hh:28