Esempio n. 1
0
        public static ZMFile ToZMFile(this ZMFileData data, string filepath)
        {
            if (data == null)
                throw new ArgumentNullException("data");

            var pf = new ZMFile(filepath, data.BuildDir, data.SourceFiles, data.ReferenceFiles);

            return pf;
        }
Esempio n. 2
0
        public static void Save(this ZMFileRepo repo, ZMFile zmFile, string filepath)
        {
            if (repo == null)
                throw new ArgumentNullException("repo");

            using (var fs = File.Open(filepath, FileMode.Create, FileAccess.Write))
            {
                repo.Save(zmFile, fs);
            }
        }
Esempio n. 3
0
 public void Save(ZMFile zmFile, Stream stream)
 {
     using (var writer = new StreamWriter(stream))
     {
         using (var jsonWriter = new JsonTextWriter(writer))
         {
             var serializer = new JsonSerializer();
             serializer.Formatting = Formatting.Indented;
             var data = zmFile.ToData();
             serializer.Serialize(jsonWriter, data);
         }
     }
 }
Esempio n. 4
0
        public ProjectCompilerResult Compile(ZMFile projectFile)
        {
            var filename = Path.GetFileNameWithoutExtension(projectFile.FileName);
            var outputFilename = string.Format("{0}.dll", filename);
            var outputFilepath = Path.Combine(projectFile.BuildDir, outputFilename);
            var workDir = projectFile.FileDir;

            if (!Directory.Exists(projectFile.BuildDir))
                Directory.CreateDirectory(projectFile.BuildDir);

            var args = new CSharpCompilerArgs(workDir,
                outputFilepath,
                projectFile.SourceFiles,
                projectFile.ReferenceFiles);

            var csc = new CSharpCompiler();
            var cscResult = csc.Compile(args);

            var result = new ProjectCompilerResult(cscResult.OutputAssemblyFilepath);
            return result;
        }