Requires these patches first ("v4 implicit types"):
https://lists.gnu.org/archive/html/qemu-devel/2016-03/msg01205.html
which in turn requires Markus' qapi-next branch:
https://lists.gnu.org/archive/html/qemu-devel/2016-03/msg01182.html

v13: Minor rebase improvements

v12: https://lists.gnu.org/archive/html/qemu-devel/2016-03/msg00002.html
This series (finally) finishes the review comments against the
tail end of my v9 subset E series:
https://lists.gnu.org/archive/html/qemu-devel/2016-01/msg03504.html

v10 and v11 of the series dealt with the first half, and are now
mostly applied (or part of the pre-requisite series).

Also available as a tag at this location:
git fetch git://repo.or.cz/qemu/ericb.git qapi-cleanupv13e

and will soon be part of my branch with the rest of the v5 series, at:
http://repo.or.cz/qemu/ericb.git/shortlog/refs/heads/qapi

001/18:[----] [--] 'qapi-visit: Add visitor.type classification'
002/18:[----] [--] 'qapi: Guarantee NULL obj on input visitor callback error'
003/18:[----] [--] 'qmp: Drop dead command->type'
004/18:[----] [--] 'qmp-input: Clean up stack handling'
005/18:[----] [--] 'qmp-input: Don't consume input when checking has_member'
006/18:[----] [--] 'qmp-input: Refactor when list is advanced'
007/18:[0011] [FC] 'qapi: Document visitor interfaces, add assertions'
008/18:[----] [--] 'tests: Add check-qnull'
009/18:[----] [--] 'qapi: Add visit_type_null() visitor'
010/18:[----] [--] 'qmp: Support explicit null during visits'
011/18:[----] [--] 'spapr_drc: Expose 'null' in qom-get when there is no fdt'
012/18:[----] [--] 'qmp: Tighten output visitor rules'
013/18:[0011] [FC] 'qapi: Split visit_end_struct() into pieces'
014/18:[0016] [FC] 'qapi-commands: Wrap argument visit in visit_start_struct'
015/18:[----] [--] 'qom: Wrap prop visit in visit_start_struct'
016/18:[----] [--] 'qmp-input: Require struct push to visit members of top dict'
017/18:[0017] [FC] 'qapi: Simplify semantics of visit_next_list()'
018/18:[0002] [FC] 'qapi: Change visit_type_FOO() to no longer return partial 
objects'

Eric Blake (18):
  qapi-visit: Add visitor.type classification
  qapi: Guarantee NULL obj on input visitor callback error
  qmp: Drop dead command->type
  qmp-input: Clean up stack handling
  qmp-input: Don't consume input when checking has_member
  qmp-input: Refactor when list is advanced
  qapi: Document visitor interfaces, add assertions
  tests: Add check-qnull
  qapi: Add visit_type_null() visitor
  qmp: Support explicit null during visits
  spapr_drc: Expose 'null' in qom-get when there is no fdt
  qmp: Tighten output visitor rules
  qapi: Split visit_end_struct() into pieces
  qapi-commands: Wrap argument visit in visit_start_struct
  qom: Wrap prop visit in visit_start_struct
  qmp-input: Require struct push to visit members of top dict
  qapi: Simplify semantics of visit_next_list()
  qapi: Change visit_type_FOO() to no longer return partial objects

 include/qapi/visitor.h               | 485 +++++++++++++++++++++++++++++++++--
 include/qapi/visitor-impl.h          |  80 ++++--
 scripts/qapi-commands.py             |  10 +
 scripts/qapi-event.py                |   5 +-
 scripts/qapi-visit.py                |  56 ++--
 include/qapi/dealloc-visitor.h       |   4 +
 include/qapi/opts-visitor.h          |   4 +
 include/qapi/qmp-output-visitor.h    |   1 +
 include/qapi/qmp/dispatch.h          |   6 -
 include/qapi/string-input-visitor.h  |   5 +
 include/qapi/string-output-visitor.h |   5 +
 qapi/qapi-visit-core.c               | 112 ++++++--
 hw/ppc/spapr_drc.c                   |  11 +-
 hw/virtio/virtio-balloon.c           |  15 +-
 qapi/opts-visitor.c                  |  65 ++---
 qapi/qapi-dealloc-visitor.c          |  43 +---
 qapi/qmp-dispatch.c                  |  18 +-
 qapi/qmp-input-visitor.c             | 168 +++++++-----
 qapi/qmp-output-visitor.c            |  72 +++---
 qapi/qmp-registry.c                  |   1 -
 qapi/string-input-visitor.c          |  39 +--
 qapi/string-output-visitor.c         |  43 ++--
 qom/object.c                         |   5 +-
 qom/object_interfaces.c              |  29 ++-
 tests/check-qnull.c                  |  68 +++++
 tests/test-qmp-commands.c            |  13 +-
 tests/test-qmp-input-strict.c        |  19 +-
 tests/test-qmp-input-visitor.c       |  27 +-
 tests/test-qmp-output-visitor.c      |  17 +-
 docs/qapi-code-gen.txt               |  33 ++-
 tests/.gitignore                     |   1 +
 tests/Makefile                       |   6 +-
 32 files changed, 1077 insertions(+), 389 deletions(-)
 create mode 100644 tests/check-qnull.c

-- 
2.5.0


Reply via email to