Минималистичный удобочитаемый парсер формата сериализации для встраиваемой системы.

Под "человекочитаемым форматом сериализации" я подразумеваю YAML, JSON, INI или что-то подобное. Обратите внимание, что XML слишком многословен и слишком неудобен для моих целей, так что давайте оставим его в покое на крайний случай.

Формат должен хранить данные в виде пар "именованный ключ -- значение" и допускать вложенность и массивы. Впрочем, отсутствие массивов не критично. Кроме того, высоко ценится распознавание типов (возможность возвращать данные не только в виде простых строк).

Что мне точно нужно, так это чистая библиотека C, которая предоставляет API для синтаксического анализа данных (кодирование является необязательным и менее важным). Он должен умещаться примерно в 16-20 КиБ при компиляции для ARM7.

Я искал в Google и вики, но не смог найти артефакт, удовлетворяющий всем вышеперечисленным требованиям.


person vines    schedule 20.09.2011    source источник


Ответы (2)


Недавно я нашел Jansson, и он может соответствовать вашим требованиям.

person Burton Samograd    schedule 20.09.2011
comment
Хотя я наконец придумал написанный от руки анализатор DSL, я принимаю этот ответ, так как он действительно соответствует требованиям :) - person vines; 21.09.2011

http://igagis.github.io/stob/ может быть хорошим вариантом, так как он очень просто. Хотя нет простой библиотеки C, есть библиотека C++.

person igagis    schedule 29.01.2015