aboutsummaryrefslogtreecommitdiff
path: root/src/libexpr/eval.hh
diff options
context:
space:
mode:
authorEelco Dolstra <edolstra@gmail.com>2018-11-29 19:18:36 +0100
committerEelco Dolstra <edolstra@gmail.com>2019-02-11 12:00:13 +0100
commit7a5cf31060289de61370643937277b5d0d5d178c (patch)
tree9b5b2060a0f9b65d3cfae2ad826015a9ba1d77a8 /src/libexpr/eval.hh
parentf216c76c56cdffb5214d074a7d44812843dd174f (diff)
Initial flake support
Diffstat (limited to 'src/libexpr/eval.hh')
-rw-r--r--src/libexpr/eval.hh20
1 files changed, 19 insertions, 1 deletions
diff --git a/src/libexpr/eval.hh b/src/libexpr/eval.hh
index 60cf0f87f..674b08f45 100644
--- a/src/libexpr/eval.hh
+++ b/src/libexpr/eval.hh
@@ -72,7 +72,8 @@ public:
sSystem, sOverrides, sOutputs, sOutputName, sIgnoreNulls,
sFile, sLine, sColumn, sFunctor, sToString,
sRight, sWrong, sStructuredAttrs, sBuilder, sArgs,
- sOutputHash, sOutputHashAlgo, sOutputHashMode;
+ sOutputHash, sOutputHashAlgo, sOutputHashMode,
+ sDescription;
Symbol sDerivationNix;
/* If set, force copying files to the Nix store even if they
@@ -311,6 +312,23 @@ private:
friend struct ExprOpConcatLists;
friend struct ExprSelect;
friend void prim_getAttr(EvalState & state, const Pos & pos, Value * * args, Value & v);
+
+public:
+
+ struct FlakeRegistry
+ {
+ struct Entry
+ {
+ std::string uri;
+ };
+ std::map<std::string, Entry> entries;
+ };
+
+ const FlakeRegistry & getFlakeRegistry();
+
+private:
+ std::unique_ptr<FlakeRegistry> _flakeRegistry;
+ std::once_flag _flakeRegistryInit;
};