public override bool Read() { LBTOK l = (LBTOK)_r.ReadByte(); switch (l) { case LBTOK.StartArray: _t = JsonToken.StartArray; _v = null; break; case LBTOK.EndArray: _t = JsonToken.EndArray; _v = null; break; case LBTOK.StartObject: _t = JsonToken.StartObject; _v = null; break; case LBTOK.EndObject: _t = JsonToken.EndObject; _v = null; break; case LBTOK.Null: _t = JsonToken.Null; _v = null; break; case LBTOK.False: _t = JsonToken.Boolean; _v = false; break; case LBTOK.True: _t = JsonToken.Boolean; _v = true; break; case LBTOK.Property: _t = JsonToken.PropertyName; _v = _r.ReadString(); break; case LBTOK.Undefined: _t = JsonToken.Undefined; _v = null; break; case LBTOK.S8: _t = JsonToken.Integer; _v = _r.ReadSByte(); break; case LBTOK.U8: _t = JsonToken.Integer; _v = _r.ReadByte(); break; case LBTOK.S16: _t = JsonToken.Integer; _v = _r.ReadInt16(); break; case LBTOK.U16: _t = JsonToken.Integer; _v = _r.ReadUInt16(); break; case LBTOK.S32: _t = JsonToken.Integer; _v = _r.ReadInt32(); break; case LBTOK.U32: _t = JsonToken.Integer; _v = _r.ReadUInt32(); break; case LBTOK.S64: _t = JsonToken.Integer; _v = _r.ReadInt64(); break; case LBTOK.U64: _t = JsonToken.Integer; _v = _r.ReadUInt64(); break; case LBTOK.String: _t = JsonToken.String; _v = _r.ReadString(); break; case LBTOK.F32: _t = JsonToken.Float; _v = _r.ReadSingle(); break; case LBTOK.F64: _t = JsonToken.Float; _v = _r.ReadDouble(); break; case LBTOK.ByteArray: _t = JsonToken.Bytes; _v = _r.ReadBytes(_r.ReadInt32()); break; default: throw new InvalidOperationException(); } return(true); }
private void WT(LBTOK t) { w.Write((byte)t); }