public JsonReadVisitor(JsonEncoding encoding, IFieldNameResolver fieldNameResolver, BinaryReadBuffer buffer) { _encoding = encoding; _fieldNameResolver = fieldNameResolver; _buffer = buffer; _reader = new JsonReader(buffer, _encoding); _parents = new Stack <JsonReadLevel>(); }
public void MakeReadVisitorCall(string json, Action <JsonReadVisitor> action) { var bytes = Encoding.UTF8.GetBytes(json); using (var memStream = new MemoryStream(bytes)) { var buffer = new BinaryReadBuffer(1024, memStream); var readVisitor = new JsonReadVisitor(_encoding, _fieldNameResolver, buffer); action(readVisitor); } }
public static JsonNumberReader Create(BinaryReadBuffer buffer, JsonEncoding encoding) { if (encoding.Zero.Length == 4) { return(new JsonNumberReader4(buffer, encoding)); } if (encoding.Zero.Length == 2) { return(new JsonNumberReader2(buffer, encoding)); } if (encoding.Zero.Length == 1) { return(new JsonNumberReader1(buffer, encoding)); } throw new NotSupportedException($"Does not support encodings with numbers encoded with {encoding.Zero.Length} bytes"); }
public JsonReader(BinaryReadBuffer buffer, JsonEncoding encoding) { _buffer = buffer; _encoding = encoding; _numberReader = JsonNumberReader.Create(buffer, encoding); }
public JsonNumberReader2(BinaryReadBuffer buffer, JsonEncoding encoding) : base(buffer, encoding) { }
public static UnexpectedJsonException From(string expected, BinaryReadBuffer buffer, JsonEncoding encoding) { return(new UnexpectedJsonException("Unexpected token in json. Expected " + expected)); }
protected JsonNumberReader(BinaryReadBuffer buffer, JsonEncoding encoding) { Buffer = buffer; Encoding = encoding; }