public virtual DiffSet Read(TextReader source)
{
if (source == null) { throw new ArgumentNullException("source"); }
LineReader reader = new LineReader(source);
reader.NextLine();
// Scan for a file start line ("---")
ICollection<FileDiff> files = new List<FileDiff>();
while (!reader.EndOfFile)
{
while (!reader.EndOfFile && !reader.Current.StartsWith("---")) { reader.NextLine(); }
if (!reader.EndOfFile)
{
files.Add(ReadFile(reader));
}
}
return new DiffSet(files);
}