about summary refs log tree commit diff
path: root/src/libutil/archive.hh
diff options
context:
space:
mode:
Diffstat (limited to 'src/libutil/archive.hh')
-rw-r--r--src/libutil/archive.hh13
1 files changed, 13 insertions, 0 deletions
diff --git a/src/libutil/archive.hh b/src/libutil/archive.hh
index 5f85e1beb0cf..06f09cd1ec45 100644
--- a/src/libutil/archive.hh
+++ b/src/libutil/archive.hh
@@ -56,6 +56,19 @@ extern PathFilter defaultPathFilter;
 void dumpPath(const Path & path, Sink & sink,
     PathFilter & filter = defaultPathFilter);
 
+struct ParseSink
+{
+    virtual void createDirectory(const Path & path) { };
+    
+    virtual void createRegularFile(const Path & path) { };
+    virtual void isExecutable() { };
+    virtual void receiveContents(unsigned char * data, unsigned int len) { };
+
+    virtual void createSymlink(const Path & path, const string & target) { };
+};
+    
+void parseDump(ParseSink & sink, Source & source);
+
 void restorePath(const Path & path, Source & source);