aboutsummaryrefslogtreecommitdiff
path: root/src/libexpr/primops.hh
AgeCommit message (Collapse)Author
2020-06-18Don't provide 'getFlake' if the 'flakes' feature is not enabledEelco Dolstra
(cherry picked from commit 0a1d3c1dd311f94e9d1f56e1aa7fe1ab34314ec1)
2020-04-07Backport libfetchers from the flakes branchEelco Dolstra
This provides a pluggable mechanism for defining new fetchers. It adds a builtin function 'fetchTree' that generalizes existing fetchers like 'fetchGit', 'fetchMercurial' and 'fetchTarball'. 'fetchTree' takes a set of attributes, e.g. fetchTree { type = "git"; url = "https://example.org/repo.git"; ref = "some-branch"; rev = "abcdef..."; } The existing fetchers are just wrappers around this. Note that the input attributes to fetchTree are the same as flake input specifications and flake lock file entries. All fetchers share a common cache stored in ~/.cache/nix/fetcher-cache-v1.sqlite. This replaces the ad hoc caching mechanisms in fetchGit and download.cc (e.g. ~/.cache/nix/{tarballs,git-revs*}). This also adds support for Git worktrees (c169ea59049f861aaba429f48b828d0820b74d1d).
2018-04-09Make prim_exec and prim_importNative available to pluginsShea Levy
2018-02-08Allow using RegisterPrimop to define constants.Shea Levy
This enables plugins to add new constants, as well as new primops.
2016-04-14Make primop registration pluggableEelco Dolstra
This way we don't have to put all primops in one giant file.
2004-08-04* Allow primops with more that 1 arguments.Eelco Dolstra
2004-02-04* Use a map to lookup primops.Eelco Dolstra
* Various performance improvements in the evaluator. * Do not link against unused (and missing!) libraries (-lsglr, etc.).
2003-11-19* Refactoring: put the Nix expression evaluator in its own library soEelco Dolstra
that it can be used by multiple programs.