|
JSON parser
|
|||
---|---|---|---|
#18+
Добрый день. Недавно на форуме https://groups.google.com/forum/#!forum/comp.lang.mumps появился парсер Winfrid-а Bantel-а для GT.M (YottaDB) https://github.com/informatik-aalen/JSON-streaming-parser-for-M В этих системах он работает Я пробую его в Каше но почему-то получаю ошибку... Неужели не стыковка стандартов ? Ошибку получаю здесь Код: vbnet 1. 2. 3. 4. 5. 6. 7. 8. 9. 10.
USER>d ^JSONTEST0 cbstart^JSONTEST0 cbstart^JSONTEST0(.level,tpair) d @(data("callback","start")_"(.level,tpair)") ^ <NOLINE>pair+6^JSONPARSER USER 7d1>w c=""" data="{"a1": 123.1, "a2": [1,2], "a3": {"a":"1"}}" data("callback","end")="cbend^JSONTEST0" data("callback","getc")="getc" data("callback","skalar")="cbskalar^JSONTEST0" data("callback","start")="cbstart^JSONTEST0" data("callback","ungetc")="ungetc" data("nr")=5 error=0 level=1 level(1)=0 text="a1" token="string" tpair="a1" USER 7d1> Если нетрудно, можете проверить у вас ? Спасибо ... |
|||
:
Нравится:
Не нравится:
|
|||
31.03.2020, 12:35 |
|
JSON parser
|
|||
---|---|---|---|
#18+
Нашел ошибку, пока еще тестирую ... |
|||
:
Нравится:
Не нравится:
|
|||
31.03.2020, 13:41 |
|
JSON parser
|
|||
---|---|---|---|
#18+
DAiMor, Я пользуюсь разными. Просто хотел потестить в Каше. Нашел он ошибочку, и , моя оплошность .. Каше вроде не привередлив к пустым строкам , я даже не посмотрел. Оказывается сохранил рутину до первой пустой строки. Примерно так как скачал : Код: vbnet 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29.
В других языках хоть сотню пустых строк. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.03.2020, 15:10 |
|
JSON parser
|
|||
---|---|---|---|
#18+
Я всегда был приверженцем СТАНДАРТА. те, что работает в одной М системе, должно работать и в другой . В интерсистемсе решили что нет. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.03.2020, 15:15 |
|
JSON parser
|
|||
---|---|---|---|
#18+
Valeriu Каше вроде не привередлив к пустым строкам , я даже не посмотрел. Оказывается сохранил рутину до первой пустой строки. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.03.2020, 15:35 |
|
JSON parser
|
|||
---|---|---|---|
#18+
Valeriu, здесь небольшая несовместимость не языка, а, скорее всего, "классического" формата экспорта программ (%RO). В GT.M при экспорте утилита ^%RO заменяет пустые строки на пробелы. В Cache аналогичная утилита ^%RO пустую строку заменяет на ".", а при импорте ^%RI делает обратную замену. Однако у меня получилось импортировать в Cache YDB-шный файл *.ro, полученный их исходника, в котором были пустые строки. Вот протокол: Код: javascript 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24.
ну и компиляция прошла без ошибок, ничего не пропало; пустые строки заменились на "однопробельные", что вряд ли можно счесть дефектом. File written by OLD GT.M - улыбнуло; я его свежей YottaDB записал. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.04.2020, 19:14 |
|
JSON parser
|
|||
---|---|---|---|
#18+
Alexey Maslov, Спасибо. Я понял свою ошибку потом. Я тупо копипастил и компилировал текст. Мне так легче было, а вот о последствиях не подумал. К стати, там тоже была пару несоответствий с Каше в самом парсере. Человек исправил на гитхабе. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.04.2020, 15:25 |
|
|
start [/forum/topic.php?fid=39&msg=39942528&tid=1556139]: |
0ms |
get settings: |
10ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
4ms |
track hit: |
38ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
47ms |
get tp. blocked users: |
1ms |
others: | 15ms |
total: | 146ms |
0 / 0 |