summary refs log tree commit diff
path: root/src/util.hh
diff options
context:
space:
mode:
authorEelco Dolstra <e.dolstra@tudelft.nl>2003-06-16 13:33:38 +0000
committerEelco Dolstra <e.dolstra@tudelft.nl>2003-06-16 13:33:38 +0000
commit822794001cb4260b8c04a7bd2d50d890edae709a (patch)
treec4c3a86f638422c8d756752050ebcbb45eba2ee7 /src/util.hh
parentb9f09b3268bf0c3d9ecd512dd3a0aa1247550cc2 (diff)
downloadguix-822794001cb4260b8c04a7bd2d50d890edae709a.tar.gz
* Started implementing the new evaluation model.
* Lots of refactorings.
* Unit tests.

Diffstat (limited to 'src/util.hh')
-rw-r--r--src/util.hh29
1 files changed, 21 insertions, 8 deletions
diff --git a/src/util.hh b/src/util.hh
index d1a1956095..5b41fcea89 100644
--- a/src/util.hh
+++ b/src/util.hh
@@ -12,13 +12,21 @@ using namespace std;
 
 class Error : public exception
 {
+protected:
     string err;
 public:
+    Error() { }
     Error(string _err) { err = _err; }
-    ~Error() throw () { };
+    ~Error() throw () { }
     const char * what() const throw () { return err.c_str(); }
 };
 
+class SysError : public Error
+{
+public:
+    SysError(string msg);
+};
+
 class UsageError : public Error
 {
 public:
@@ -33,15 +41,20 @@ typedef vector<string> Strings;
 extern string thisSystem;
 
 
-/* The prefix of the Nix installation, and the environment variable
-   that can be used to override the default. */
-extern string nixHomeDir;
-extern string nixHomeDirEnvVar;
+/* Return an absolutized path, resolving paths relative to the
+   specified directory, or the current directory otherwise. */
+string absPath(string path, string dir = "");
+
+/* Return the directory part of the given path, i.e., everything
+   before the final `/'. */
+string dirOf(string path);
+
+/* Return the base name of the given path, i.e., everything following
+   the final `/'. */
+string baseNameOf(string path);
 
 
-string absPath(string filename, string dir = "");
-string dirOf(string s);
-string baseNameOf(string s);
+void debug(string s);
 
 
 #endif /* !__UTIL_H */