mirror_qemu/qapi
Laszlo Ersek d8754f40ac OptsVisitor: introduce list modes for interval flattening
The new modes are equal-rank, exclusive alternatives of LM_IN_PROGRESS.
Teach opts_next_list(), opts_type_int() and opts_type_uint64() to handle
them.

Also enumerate explicitly what functions are valid to call in what modes:
- opts_next_list() is valid to call while flattening a range,
- opts_end_list(): ditto,
- lookup_scalar() is invalid to call during flattening; generated qapi
  traversal code must continue asking for the same kind of signed/unsigned
  list element until the interval is fully flattened,
- processed(): ditto.

List mode restrictions are always formulated in positive / inclusive
sense. The restrictions for lookup_scalar() and processed() are
automatically satisfied by current qapi traversals if the schema to build
is compatible with OptsVisitor.

The new list modes are not entered yet.

Signed-off-by: Laszlo Ersek <lersek@redhat.com>
Tested-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>
Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>
2013-08-20 11:51:59 -04:00
..
Makefile.objs build: move base QAPI files to libqemuutil.a 2013-01-12 18:42:51 +01:00
opts-visitor.c OptsVisitor: introduce list modes for interval flattening 2013-08-20 11:51:59 -04:00
qapi-dealloc-visitor.c misc: move include files to include/qemu/ 2012-12-19 08:32:39 +01:00
qapi-visit-core.c qapi: make visit_type_size fallback to type_int 2013-07-29 19:33:33 -05:00
qmp-dispatch.c qapi: move include files to include/qobject/ 2012-12-19 08:31:31 +01:00
qmp-input-visitor.c qapi: Anonymous unions 2013-07-26 21:10:11 +02:00
qmp-output-visitor.c misc: move include files to include/qemu/ 2012-12-19 08:32:39 +01:00
qmp-registry.c qapi: Fix unchecked strdup() by converting to g_strdup() 2013-01-30 11:14:46 +01:00
string-input-visitor.c qapi: move include files to include/qobject/ 2012-12-19 08:31:31 +01:00
string-output-visitor.c qapi: move include files to include/qobject/ 2012-12-19 08:31:31 +01:00