private void Zeilen_zählen(Quellcode quellcode) { quellcode = kommentarSchlucker.Leerzeilen_schlucken(quellcode); quellcode = kommentarSchlucker.Einzeilige_Kommentare_schlucken(quellcode); quellcode = kommentarSchlucker.Mehrzeilige_Kommentare_schlucken(quellcode); stats.LOC_summieren(quellcode); }
public Quellcode Mehrzeilige_Kommentare_schlucken(Quellcode quellcode) { var puffer = new List<string>(); var mehrzeiliger_kommentar = false; foreach (var codeZeile in quellcode.Codezeilen) { var zeile = codeZeile.TrimStart(' '); if (!zeile.StartsWith("/*") && !mehrzeiliger_kommentar) { puffer.Add(codeZeile); } else { mehrzeiliger_kommentar = true; } if (zeile.EndsWith("*/")) { mehrzeiliger_kommentar = false; } } quellcode.Codezeilen = puffer.ToArray(); return quellcode; }
public void TestSummeLoc() { var quellcode = new Quellcode(); string[] lines = { "Eins", "// Zwei", "Drei", "/* Vier", "Fünf", "Sechs */", "Sieben", "" }; quellcode.Codezeilen = lines; var testclass = new Statistik(); testclass.LOC_summieren(quellcode); Assert.AreEqual(8, testclass.SummeLOC); }
public Quellcode Leerzeilen_schlucken(Quellcode quellcode) { var puffer = new List<string>(); foreach (var codeZeile in quellcode.Codezeilen) { var zeile = codeZeile.Trim(' '); if (!string.IsNullOrEmpty(zeile)) { puffer.Add(codeZeile); } } quellcode.Codezeilen = puffer.ToArray(); return quellcode; }
public Quellcode Einzeilige_Kommentare_schlucken(Quellcode quellcode) { var puffer = new List<string>(); foreach (var codeZeile in quellcode.Codezeilen) { var zeile = codeZeile.TrimStart(' '); if (!zeile.StartsWith("//")) { puffer.Add(codeZeile); } } quellcode.Codezeilen = puffer.ToArray(); return quellcode; }
public void Quellcode_auslesen(string dateiname, Action<Quellcode> beiQuellcode) { var quellcode = new Quellcode(); quellcode.Codezeilen = File.ReadAllLines(dateiname); beiQuellcode(quellcode); }
public void LOC_summieren(Quellcode quellcode) { this.summeLoc += quellcode.Codezeilen.Length; }