public Resource Parse() { var body = new List <IEntry>(6); var errors = new List <ParseError>(); _reader.SkipBlankBlock(); while (_reader.IsNotEof) { var entryStart = _reader.Position; (var entry, ParseError? error) = GetEntryRuntime(entryStart); if (entry is { } and not Junk) { body.Add(entry); } if (error != null) { AddError(error, entryStart, errors, body); } _reader.SkipBlankBlock(); } return(new Resource(body, errors)); }
public void TestSkipBlank(string text, char postSkipChar) { ZeroCopyReader reader = new ZeroCopyReader(text); reader.SkipBlankBlock(); Assert.That(postSkipChar.EqualsSpans(reader.GetCharSpan())); }