reader.mark(MARK_LIMIT); // We need the ability to move back on the
// reader, for the benefit of fixParseError and
// validPartialSentence
if (kind != null) {
CharStream cs = new NoCloseReaderStream(reader);
BaseParser parser = new BaseParser(cs, filename, cflags.encoding);
return kind.dispatch(parser);
} else {
throw Py.ValueError("parse kind must be eval, exec, or single");
}
}