about summary refs log tree commit diff
path: root/src/libexpr/primops.hh
diff options
context:
space:
mode:
authorShea Levy <shea@shealevy.com>2018-02-08T18·00-0500
committerShea Levy <shea@shealevy.com>2018-02-08T19·35-0500
commit081f14a169d36243f97263acb41fb108af243619 (patch)
tree563a1287be33bff5b2d36d38a9e77338425d45b4 /src/libexpr/primops.hh
parent88cd2d41acb994684a3e4ead1b1676019f43b4b6 (diff)
Allow using RegisterPrimop to define constants.
This enables plugins to add new constants, as well as new primops.
Diffstat (limited to 'src/libexpr/primops.hh')
-rw-r--r--src/libexpr/primops.hh3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/libexpr/primops.hh b/src/libexpr/primops.hh
index 39d23b04a5..31bf3f84f6 100644
--- a/src/libexpr/primops.hh
+++ b/src/libexpr/primops.hh
@@ -9,6 +9,9 @@ struct RegisterPrimOp
 {
     typedef std::vector<std::tuple<std::string, size_t, PrimOpFun>> PrimOps;
     static PrimOps * primOps;
+    /* You can register a constant by passing an arity of 0. fun
+       will get called during EvalState initialization, so there
+       may be primops not yet added and builtins is not yet sorted. */
     RegisterPrimOp(std::string name, size_t arity, PrimOpFun fun);
 };