RFC qapi: rewrite string-input-visitor
Get series with b4
b4 am [email protected]Versions newest first
- v1 RFC Latest6 patches 13 repliesIn review
Patches in v1 No applies recorded yet
| # | Subject and files | Size | Replies | Applied |
|---|---|---|---|---|
| 1/6 | cutils: add qemu_strtod()include/ util/ | +23 | 0 replies | |
| 2/6 | qapi: use qemu_strtod() in string-input-visitorqapi/ | +2 | 5 replies | |
| 3/6 | qapi: rewrite string-input-visitorinclude/ qapi/ tests/ | +264 | 5 replies | |
| 4/6 | test-string-input-visitor: use virtual walktests/ | +12 | 0 replies | |
| 5/6 | test-string-input-visitor: split off uint64 list teststests/ | +67 | 3 replies | |
| 6/6 | test-string-input-visitor: add range overflow teststests/ | +10 | 0 replies |
Reviews trailers per patch
No Reviewed-by, Acked-by or Tested-by trailers for v1 yet.
Cover letter [Qemu-devel] [PATCH RFC 0/6] qapi: rewrite string-input-visitor
Rewrite string-input-visitor to be (hopefully) less ugly. Support int and uint lists (including ranges, but not implemented via type "Range").
Virtual walks are now supported and more errors are cought (and some bugs fixed). Fix and extend the tests. Parsing of uint64_t is now properly supported.
Importantly, when parsing a list we now return the list and not an ordered set (we are not an ordered set parser after all). Whoever needs that can add it on top. As far as I can see, current code can deal with it but I'll have to look at the details.
Guess once this part here is done, the output visitor is the next thing to rework.
David Hildenbrand (6):
cutils: add qemu_strtod()
qapi: use qemu_strtod() in string-input-visitor
qapi: rewrite string-input-visitor
test-string-input-visitor: use virtual walk
test-string-input-visitor: split off uint64 list tests
test-string-input-visitor: add range overflow tests
include/qapi/string-input-visitor.h | 3 +- include/qemu/cutils.h | 1 + qapi/string-input-visitor.c | 444 ++++++++++++++++------------ tests/test-string-input-visitor.c | 131 +++++--- util/cutils.c | 22 ++ 5 files changed, 377 insertions(+), 224 deletions(-)
Signature · 1 line
2.17.2