コード例 #1
0
 public JsonReader(TextReader reader, JsonParseErrorHandler errorHandler)
 {
     this.tokenizer    = new JsonTokenizer(reader, errorHandler);
     this.nodeStack    = new Stack <NodeInfo>();
     this.state        = State.Start;
     this.errorHandler = CapErrors(errorHandler, DefaultMaxErrors);
 }
コード例 #2
0
 public JsonTokenizer(TextReader reader, JsonParseErrorHandler errorHandler, int bufferSize)
 {
     this.reader           = reader;
     buffer                = new char[bufferSize];
     this.bufferPos        = 0;
     this.bufferEnd        = 0;
     this.bufferTokenStart = 0;
     this.line             = 1;
     this.column           = 1;
     this.errorHandler     = errorHandler;
 }
コード例 #3
0
        JsonParseErrorHandler CapErrors(JsonParseErrorHandler handler, int maxErrors)
        {
            int c = 0;

            return
                ((error, location) =>
            {
                if (c++ > maxErrors)
                {
                    return false;
                }
                return handler(error, location);
            });
        }
コード例 #4
0
 public JsonTokenizer(TextReader reader, JsonParseErrorHandler errorHandler) : this(reader, errorHandler, DefaultBufferSize)
 {
 }