about summary refs log tree commit diff
path: root/src/libexpr/attr-path.hh (follow)
AgeCommit message (Collapse)AuthorFilesLines
2013-09-03 Work on Values instead of ExprsEelco Dolstra1-2/+2
This prevents some duplicate evaluation in nix-env and nix-instantiate. Also, when traversing ~/.nix-defexpr, only read regular files with the extension .nix. Previously it was reading files like .../channels/binary-caches/<name>. The only reason this didn't cause problems is pure luck (namely, <name> shadows an actual Nix expression, the binary-caches files happen to be syntactically valid Nix expressions, and we iterate over the directory contents in just the right order).
2012-07-18 Use "#pragma once" to prevent repeated header file inclusionEelco Dolstra1-8/+1
2010-10-22 * Store Value nodes outside of attribute sets. I.e., Attr now storesEelco Dolstra1-1/+1
a pointer to a Value, rather than the Value directly. This improves the effectiveness of garbage collection a lot: if the Value is stored inside the set directly, then any live pointer to the Value causes all other attributes in the set to be live as well.
2010-10-04 * Make sure that config.h is included before the system headers,Eelco Dolstra1-2/+2
because it defines _FILE_OFFSET_BITS. Without this, on OpenSolaris the system headers define it to be 32, and then the 32-bit stat() ends up being called with a 64-bit "struct stat", or vice versa. This also ensures that we get 64-bit file sizes everywhere. * Remove the redundant call to stat() in parseExprFromFile(). The file cannot be a symlink because that's the exit condition of the loop before.
2010-04-12 * Don't use ATerms for the abstract syntax trees anymore. NotEelco Dolstra1-1/+1
finished yet.
2010-04-07 * Update autoCallFunction() and findAlongAttrPath().Eelco Dolstra1-2/+2
2006-09-04 * Use a proper namespace.Eelco Dolstra1-0/+6
* Optimise header file usage a bit. * Compile the parser as C++.
2006-08-23 * Pass the autoArgs to findAlongAttrPath so that "nix-instantiateEelco Dolstra1-1/+2
foo.nix -A attr --arg name value" will work if (name, value) is needed in the evaluation leading up to "attr".
2006-07-26 * Refactoring: get the selection path stuff out of getDerivations()Eelco Dolstra1-0/+13
and put it into a separate function findAlongAttrPath().