| @@ -20,6 +20,19 namespace Implab.JSON { | |||||
| 20 | /// <summary> |
|
20 | /// <summary> | |
| 21 | /// Pull парсер JSON данных. |
|
21 | /// Pull парсер JSON данных. | |
| 22 | /// </summary> |
|
22 | /// </summary> | |
|
|
23 | /// <remarks> | |||
|
|
24 | /// Следует отметить отдельную интерпретацию свойства <see cref="Level"/>, | |||
|
|
25 | /// оно означает текущий уровень вложенности объектов, однако закрывающий | |||
|
|
26 | /// элемент объекта и массива имеет уровень меньше, чем сам объект. | |||
|
|
27 | /// <code> | |||
|
|
28 | /// { // Level = 1 | |||
|
|
29 | /// "name" : "Peter", // Level = 1 | |||
|
|
30 | /// "address" : { // Level = 2 | |||
|
|
31 | /// city : "Stern" // Level = 2 | |||
|
|
32 | /// } // Level = 1 | |||
|
|
33 | /// } // Level = 0 | |||
|
|
34 | /// </code> | |||
|
|
35 | /// </remarks> | |||
| 23 | public class JSONParser : DFAutomaton<JSONParserContext>, IDisposable { |
|
36 | public class JSONParser : DFAutomaton<JSONParserContext>, IDisposable { | |
| 24 |
|
37 | |||
| 25 | enum MemberContext { |
|
38 | enum MemberContext { | |
| @@ -251,8 +264,11 namespace Implab.JSON { | |||||
| 251 | Dispose(false); |
|
264 | Dispose(false); | |
| 252 | } |
|
265 | } | |
| 253 |
|
266 | |||
| 254 | public void Skip() { |
|
267 | /// <summary> | |
| 255 | var level = Level-1; |
|
268 | /// Переходит в конец текущего объекта. | |
|
|
269 | /// </summary> | |||
|
|
270 | public void SeekElementEnd() { | |||
|
|
271 | var level = Level - 1; | |||
| 256 |
|
272 | |||
| 257 | Debug.Assert(level >= 0); |
|
273 | Debug.Assert(level >= 0); | |
| 258 |
|
274 | |||
General Comments 0
You need to be logged in to leave comments.
Login now
