private JsonToken PopToken() { if (pushedToken != null) { JsonToken result = pushedToken; pushedToken = null; return(result); } if (scanner.ScanNext()) { return(scanner.GetCurrentToken()); } throw new Exception("Scanner failed."); }