Eric Blake <ebl...@redhat.com> writes: > On 08/08/2018 07:02 AM, Markus Armbruster wrote: >> Signed-off-by: Markus Armbruster <arm...@redhat.com> >> --- >> qobject/json-lexer.c | 80 +++++++++++++++++++++++++++++++++++++++----- >> 1 file changed, 71 insertions(+), 9 deletions(-) >> > >> + * >> + * [Numbers:] > > Worth also calling out: > > [Objects:] > object = begin-object [ member *( value-separator member ) ] > end-object > > member = string name-separator value > [Arrays:] > array = begin-array [ value *( value-separator value ) ] end-array > > so as to completely cover the RFC grammar?
Should this go into json-parser.c? >> + * >> + * Extensions over RFC 7159: >> + * - Extra escape sequence in strings: >> + * 0x27 (apostrophe) is recognized after escape, too >> + * - Single-quoted strings: >> + * Like double-quoted strings, except they're delimited by %x27 >> + * (apostrophe) instead of %x22 (quotation mark), and can't contain >> + * unescaped apostrophe, but can contain unescaped quotation mark. >> + * - Interpolation: >> + * interpolation = %((l|ll|I64)[du]|[ipsf]) > > Not in your series, but we recently discussed adding %% (only inside > strings); coupled with enforcing that all other interpolation occurs > outside of strings. I guess we can update this comment at that time. Message-ID: <87bmaoszf0....@dusky.pond.sub.org> https://lists.nongnu.org/archive/html/qemu-devel/2018-07/msg05844.html I meant to do that in this series, but got overwhelmed by all the other stuff, and forgot. Thanks for the reminder. I may still do it in v2. If not, we can do it on top. >> + * >> + * Note: >> + * - Input must be encoded in UTF-8. >> + * - Decoding and validating is left to the parser. >> */ >> enum json_lexer_state { >> > > Reviewed-by: Eric Blake <ebl...@redhat.com> Thanks!