Exemplo n.º 1
0
 public void ExportToFile(Codegram gram, string outputPath)
 {
     using (TextWriter writer = File.CreateText(outputPath))
     {
         writer.Write(Export(gram));
     }
 }
Exemplo n.º 2
0
        public Codegram GenerateCodegramFromDiffContent(DiffInfo diffInfo, int maxSize)
        {
            var codegram = new Codegram();

            codegram.Filegrams = new List <Filegram>();
            codegram.Author    = diffInfo.Author;
            codegram.Date      = diffInfo.Date;
            codegram.Message   = diffInfo.Message;

            CrossSimiliarity(diffInfo.Files);

            foreach (var file in diffInfo.Files)
            {
                var filegram = new Filegram();
                filegram.FileName = file.Hunks.First().FileName;

                foreach (var chunk in file.Hunks)
                {
                    var lines = SalientLines(maxSize, chunk);

                    filegram.Linegrams = lines.ToList();
                }
                codegram.Filegrams.Add(filegram);
            }

            // Temp placement: Apply patterns
            Pattern pattern = new RemovedFilePattern();

            pattern.Rewrite(codegram);

            return(codegram);
        }
Exemplo n.º 3
0
        public string Export(Codegram gram)
        {
            AsMarkdown formatter = new AsMarkdown();
            var        markdown  = formatter.Export(gram);

            var markdown2Html = new Markdown();
            var html          = markdown2Html.Transform(markdown);

            return(html);
        }
Exemplo n.º 4
0
        public string Export(Codegram gram)
        {
            StringWriter w = new StringWriter();

            w.WriteLine("## Codegram");
            w.WriteLine("{0} committed on {1}:", gram.Author, gram.Date);
            w.WriteLine("> {0}", gram.Message.Replace("\n", "\n> "));
            w.WriteLine();
            w.WriteLine("[Full Details]({0})", gram.CommitUrl);
            foreach (var file in gram.Filegrams)
            {
                w.WriteLine("### {0}", file.FileName);

                foreach (var line in file.Linegrams)
                {
                    w.WriteLine("     {1}", line.LineNumber, line.Line.TrimEnd());
                }
            }
            return(w.ToString());
        }
Exemplo n.º 5
0
 public abstract Codegram Rewrite(Codegram gram);