public override void ExportToCsv(string filename) { var output = new StreamWriter(filename); var orderedLookaheads = Lookaheads.OrderBy(l => l.Value); output.WriteLine("," + String.Join(",", orderedLookaheads.Select(l => l.Key))); for (var i = 0; i < Items.Count; ++i) { output.Write($"{i},"); output.Write(String.Join(",", orderedLookaheads.Select(l => this[i, l.Key]) .Select(alts => alts.Count == 0 ? "" : alts.Count == 1 ? alts.Single().ToString() : String.Join("/", alts)))); output.WriteLine(); } output.Close(); }
public override void ExportToCsv(string filename) { var output = new StreamWriter(filename); var orderedLookaheads = Lookaheads.OrderBy(l => l.Value); output.WriteLine("," + String.Join(",", orderedLookaheads.Select(l => l.Key))); foreach (var nt in NonterminalSymbols.Keys) { output.Write($"{nt},"); output.Write(String.Join(",", orderedLookaheads.Select(l => this[nt, l.Key]) .Select(alts => alts.Count == 0 ? "" : alts.Count == 1 ? alts.Single().ToString() : String.Join("/", alts)))); output.WriteLine(); } output.Close(); }