private char? NextChar()
{
if (this.chars.Count > 0)
return this.chars.Pop();
int ch;
if (this.isConsole && (this.isFirstChar || this.reader.Peek() < 0))
{
Console.Out.Write("> ");
Console.Out.Flush();
}
this.isFirstChar = false;
ch = this.reader.Read();
if (ch < 0)
return null;
return (char)ch;
}