qemu-e2k/scripts
Markus Armbruster cf40a0a5c2 qapi: Record 'include' directives in intermediate representation
The include directive permits modular QAPI schemata, but the generated
code is monolithic all the same.  To permit generating modular code,
the front end needs to pass more information on inclusions to the back
ends.  The commit before last added the necessary information to the
parse tree.  This commit adds it to the intermediate representation
and its QAPISchemaVisitor.  A later commit will use this to to
generate modular code.

New entity QAPISchemaInclude represents inclusions.  Call new visitor
method visit_include() for it, so visitors can see the sub-modules a
module includes.

Note that unlike other entities, QAPISchemaInclude has no name, and is
therefore not added to entity_dict.

New QAPISchemaEntity attribute @module names the entity's source file.
Call new visitor method visit_module() when it changes during a visit,
so visitors can keep track of the module being visited.

Signed-off-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Message-Id: <20180211093607.27351-18-armbru@redhat.com>
[eblake: avoid accidental deletion of self._predefining]
Signed-off-by: Eric Blake <eblake@redhat.com>
2018-03-02 13:14:10 -06:00
..
coccinelle target/*helper: don't check retaddr before calling cpu_restore_state 2017-12-27 17:20:44 -08:00
kvm
modules
qapi qapi: Record 'include' directives in intermediate representation 2018-03-02 13:14:10 -06:00
qemu-guest-agent
qemugdb scripts/qemu-gdb/timers.py: define encoding in header comment 2018-02-05 13:54:39 +01:00
qmp Use HTTPS for qemu.org and other domains 2017-11-21 13:34:13 +00:00
tracetool tracetool: For ust trace bool type as ctf_integer 2018-02-19 13:09:44 +00:00
analyse-9p-simpletrace.py
analyse-locks-simpletrace.py scripts/analyse-locks-simpletrace.py: script to analyse lock times 2018-01-16 14:54:52 +01:00
analyze-inclusions
analyze-migration.py migration: fix analyze-migration.py script with radix table 2018-01-15 12:47:58 +01:00
archive-source.sh ui: add keycodemapdb repository as a GIT submodule 2017-10-16 14:50:54 +02:00
argparse.py scripts/argparse.py: spelling (independant) 2018-02-10 10:03:39 +03:00
check-qerror.sh
checkpatch.pl configure: add dependency 2018-01-22 14:02:33 +00:00
clean-header-guards.pl
clean-includes
cleanup-trace-events.pl
cocci-macro-file.h
coverity-model.c
create_config Add --firmwarepath to configure 2017-09-26 13:05:32 +02:00
decodetree.py decodetree: Propagate return value from translate subroutines 2018-03-02 11:03:45 +00:00
device-crash-test scripts: Remove fixed entries from the device-crash-test 2018-01-19 11:18:51 -02:00
disas-objdump.pl
dump-guest-memory.py dump-guest-memory.py: skip vmcoreinfo section if not available 2018-02-01 12:13:52 +01:00
extract-vsssdk-headers
feature_to_c.sh
get_maintainer.pl Use qemu.org domain name 2017-11-21 13:34:13 +00:00
git-submodule.sh build: fix typo in error message 2018-02-10 10:17:06 +03:00
git.orderfile
gtester-cat
hxtool qemu-options: Remove stray colons from output of --help 2017-12-20 09:04:27 +01:00
make_device_config.sh
make-release scripts/make-release: Don't archive .git files 2018-02-10 10:11:20 +03:00
ordereddict.py
qapi-gen.py qapi: Lift error reporting from QAPISchema.__init__() to callers 2018-03-02 13:14:09 -06:00
qemu-binfmt-conf.sh linux-user: Activate armeb handler registration 2018-01-11 13:25:33 +00:00
qemu-gdb.py scripts/qemu-gdb/timers.py: new helper to dump timer state 2018-01-16 14:54:51 +01:00
qemu.py qemu.py: don't launch again before shutdown() 2018-02-05 19:53:55 -02:00
qtest.py qtest.py: Few pylint/style fixes 2017-09-15 20:12:00 -03:00
refresh-pxe-roms.sh
shaderinclude.pl
show-fixed-bugs.sh
signrom.py scripts: ensure signrom treats data as bytes 2018-02-05 19:53:54 -02:00
simpletrace.py
switch-timer-api
texi2pod.pl
tracetool.py
update-linux-headers.sh scripts/update-linux-headers: import pvrdma headers 2018-02-19 13:03:24 +02:00
vmstate-static-checker.py