aboutsummaryrefslogtreecommitdiff
path: root/src/eval.hh
diff options
context:
space:
mode:
authorEelco Dolstra <e.dolstra@tudelft.nl>2003-07-06 14:20:47 +0000
committerEelco Dolstra <e.dolstra@tudelft.nl>2003-07-06 14:20:47 +0000
commit82e3d8fafe0ac08589349094e3ea11022d995959 (patch)
treed085bac2628f3ead46397e8d94c264991ca45232 /src/eval.hh
parentf826e432aa442e569faaf3cb04d83bfa28bcf260 (diff)
* Got Fix working again.
Diffstat (limited to 'src/eval.hh')
-rw-r--r--src/eval.hh11
1 files changed, 9 insertions, 2 deletions
diff --git a/src/eval.hh b/src/eval.hh
index 553c7c40b..b04588e7b 100644
--- a/src/eval.hh
+++ b/src/eval.hh
@@ -15,9 +15,9 @@ using namespace std;
A Nix file system state expression, or FState, describes a
(partial) state of the file system.
- File : Path * Content * [FState] -> FState
+ Path : Path * Content * [FState] -> FState
- File(path, content, refs) specifies a file object (its full path
+ Path(path, content, refs) specifies a file object (its full path
and contents), along with all file objects referenced by it (that
is, that it has pointers to). We assume that all files are
self-referential. This prevents us from having to deal with
@@ -66,8 +66,15 @@ FState realiseFState(FState fs);
/* Return a canonical textual representation of an expression. */
string printTerm(ATerm t);
+/* Throw an exception with an error message containing the given
+ aterm. */
+Error badTerm(const format & f, ATerm t);
+
/* Hash an aterm. */
Hash hashTerm(ATerm t);
+/* Write an aterm to the Nix store directory, and return its hash. */
+Hash writeTerm(ATerm t);
+
#endif /* !__EVAL_H */