static EasyJsonData __load(string json, ref int start) { JsonUtil.SkipIgnoredChar(json, ref start, false); if (start == json.Length) { return(null); } EasyJsonDataType type = EasyJsonDataType.Unknown; switch (json[start]) { case JsonUtil.OBJECT_START: type = EasyJsonDataType.JsonObject; break; case JsonUtil.ARRAY_START: type = EasyJsonDataType.JsonArray; break; case JsonUtil.STRING_QUOTE: type = EasyJsonDataType.JsonString; break; } EasyJsonData jsonData = new EasyJsonData(type); jsonData._load(json, ref start); return(jsonData); }
protected EasyJsonData(EasyJsonDataType type) { Type = type; switch (type) { case EasyJsonDataType.JsonObject: _object = new Dictionary <string, EasyJsonData>(); break; case EasyJsonDataType.JsonArray: _array = new List <EasyJsonData>(); break; default: _data = null; break; } }