From f9b0976ef1d941081f4e50c703f9e5534813f094 Mon Sep 17 00:00:00 2001 From: erri120 Date: Sun, 3 Nov 2019 16:26:51 +0100 Subject: [PATCH] Created abstract Compiler class --- Wabbajack.Lib/ACompiler.cs | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 Wabbajack.Lib/ACompiler.cs diff --git a/Wabbajack.Lib/ACompiler.cs b/Wabbajack.Lib/ACompiler.cs new file mode 100644 index 00000000..ce5c1e3e --- /dev/null +++ b/Wabbajack.Lib/ACompiler.cs @@ -0,0 +1,38 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using VFS; +using Wabbajack.Lib.CompilationSteps; + +namespace Wabbajack.Lib +{ + public abstract class ACompiler + { + protected string GamePath; + + protected string ModListOutputFolder; + protected string ModListOutputFile; + + protected List InstallDirectives; + protected List AllFiles; + protected ModList ModList; + protected VirtualFileSystem VFS; + protected List IndexedArchives; + protected Dictionary> IndexedFiles; + + public abstract void Info(string msg); + public abstract void Status(string msg); + public abstract void Error(string msg); + + internal abstract string IncludeFile(byte[] data); + internal abstract string IncludeFile(string data); + + public abstract bool Compile(); + + public abstract Directive RunStack(IEnumerable stack, RawSourceFile source); + public abstract IEnumerable GetStack(); + public abstract IEnumerable MakeStack(); + } +}