aboutsummaryrefslogtreecommitdiff
path: root/src/libexpr/nixexpr.hh
diff options
context:
space:
mode:
Diffstat (limited to 'src/libexpr/nixexpr.hh')
-rw-r--r--src/libexpr/nixexpr.hh54
1 files changed, 1 insertions, 53 deletions
diff --git a/src/libexpr/nixexpr.hh b/src/libexpr/nixexpr.hh
index c7cdf46df..9f1050d80 100644
--- a/src/libexpr/nixexpr.hh
+++ b/src/libexpr/nixexpr.hh
@@ -34,34 +34,10 @@ typedef ATerm ATermBool;
typedef vector<ATerm> ATermVector;
-/* A substitution is a linked list of ATermMaps that map names to
- identifiers. We use a list of ATermMaps rather than a single to
- make it easy to grow or shrink a substitution when entering a
- scope. */
-struct Substitution
-{
- ATermMap * map;
- const Substitution * prev;
-
- Substitution(const Substitution * prev, ATermMap * map)
- {
- this->prev = prev;
- this->map = map;
- }
-
- Expr lookup(Expr name) const
- {
- Expr x;
- for (const Substitution * s(this); s; s = s->prev)
- if ((x = s->map->get(name))) return x;
- return 0;
- }
-};
-
-
/* Show a position. */
string showPos(ATerm pos);
+
/* Generic bottomup traversal over ATerms. The traversal first
recursively descends into subterms, and then applies the given term
function to the resulting term. */
@@ -73,37 +49,15 @@ struct TermFun
ATerm bottomupRewrite(TermFun & f, ATerm e);
-/* Query all attributes in an attribute set expression. The
- expression must be in normal form. */
-void queryAllAttrs(Expr e, ATermMap & attrs, bool withPos = false);
-
-/* Query a specific attribute from an attribute set expression. The
- expression must be in normal form. */
-Expr queryAttr(Expr e, const string & name);
-Expr queryAttr(Expr e, const string & name, ATerm & pos);
-
/* Create an attribute set expression from an Attrs value. */
Expr makeAttrs(const ATermMap & attrs);
-/* Perform a set of substitutions on an expression. */
-Expr substitute(const Substitution & subs, Expr e);
-
-
/* Check whether all variables are defined in the given expression.
Throw an exception if this isn't the case. */
void checkVarDefs(const ATermMap & def, Expr e);
-/* Canonicalise a Nix expression by sorting attributes and removing
- location information. */
-Expr canonicaliseExpr(Expr e);
-
-
-/* Create an expression representing a boolean. */
-Expr makeBool(bool b);
-
-
/* Manipulation of Str() nodes. Note: matchStr() does not clear
context! */
bool matchStr(Expr e, string & s, PathSet & context);
@@ -111,12 +65,6 @@ bool matchStr(Expr e, string & s, PathSet & context);
Expr makeStr(const string & s, const PathSet & context = PathSet());
-/* Showing types, values. */
-string showType(Expr e);
-
-string showValue(Expr e);
-
-
}