about summary refs log tree commit diff
path: root/src/libexpr/eval.hh
diff options
context:
space:
mode:
Diffstat (limited to 'src/libexpr/eval.hh')
-rw-r--r--src/libexpr/eval.hh16
1 files changed, 12 insertions, 4 deletions
diff --git a/src/libexpr/eval.hh b/src/libexpr/eval.hh
index 0ea474447f1f..fb4dd802e0b0 100644
--- a/src/libexpr/eval.hh
+++ b/src/libexpr/eval.hh
@@ -144,10 +144,6 @@ public:
 private:
     SrcToStore srcToStore; 
 
-    unsigned long nrValues;
-    unsigned long nrEnvs;
-    unsigned long nrEvaluated;
-
     bool allowUnsafeEquality;
 
     ATermMap parseTrees;
@@ -155,6 +151,7 @@ private:
 public:
     
     EvalState();
+    ~EvalState();
 
     /* Evaluate an expression read from the given file to normal
        form. */
@@ -242,6 +239,17 @@ public:
 
     /* Print statistics. */
     void printStats();
+
+private:
+    
+    unsigned long nrValues;
+    unsigned long nrEnvs;
+    unsigned long nrEvaluated;
+    unsigned int recursionDepth;
+    unsigned int maxRecursionDepth;
+    char * deepestStack; /* for measuring stack usage */
+    
+    friend class RecursionCounter;
 };