public LanguageEntry ParseLine(int lineNumber, string line) { var reader = new StringReader(line); ParseWhitespace(reader, lineNumber, 0); char c; if (reader.TryPeek(out c)) { switch (c) { case '#': return null; case '[': ParseGroupObject(reader, lineNumber); return null; case '<': ParseGroupScenario(reader, lineNumber); return null; default: ParseEntry(reader, lineNumber); return null; } } return null; }