qemu/tests/qapi-schema
Benoît Canet 24fd848950 qapi: skip redundant includes
The purpose of this change is to help create a json file containing
common definitions; each bit of generated C code must be emitted
only one time.

A second history global to all QAPISchema instances has been added
to detect when a file is included more than one time and skip these
includes.
It does not act as a stack and the changes made to it by the
__init__ function are propagated back to the caller so it's really
a global state.

Signed-off-by: Benoit Canet <benoit@irqsave.net>
Reviewed-by: Eric Blake <eblake@redhat.com>
Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>
2014-05-16 10:35:59 -04:00
..
include qapi: Add a primitive to include other files from a QAPI schema file 2014-05-08 14:19:58 -04:00
comments.err qapi.py: Permit comments starting anywhere on the line 2013-07-29 10:37:11 -05:00
comments.exit qapi.py: Permit comments starting anywhere on the line 2013-07-29 10:37:11 -05:00
comments.json
comments.out qapi script: remember explicitly defined enum values 2014-03-11 09:07:41 -04:00
duplicate-key.err qapi: Use an explicit input file 2014-05-08 14:19:58 -04:00
duplicate-key.exit qapi script: add check for duplicated key 2014-03-11 09:07:41 -04:00
duplicate-key.json qapi script: add check for duplicated key 2014-03-11 09:07:41 -04:00
duplicate-key.out qapi script: add check for duplicated key 2014-03-11 09:07:41 -04:00
empty.err
empty.exit
empty.json
empty.out
flat-union-invalid-branch-key.err qapi: Use an explicit input file 2014-05-08 14:19:58 -04:00
flat-union-invalid-branch-key.exit qapi script: check correctness of union 2014-03-11 09:07:41 -04:00
flat-union-invalid-branch-key.json qapi script: check correctness of union 2014-03-11 09:07:41 -04:00
flat-union-invalid-branch-key.out qapi script: check correctness of union 2014-03-11 09:07:41 -04:00
flat-union-invalid-discriminator.err qapi: Use an explicit input file 2014-05-08 14:19:58 -04:00
flat-union-invalid-discriminator.exit qapi script: check correctness of union 2014-03-11 09:07:41 -04:00
flat-union-invalid-discriminator.json qapi script: check correctness of union 2014-03-11 09:07:41 -04:00
flat-union-invalid-discriminator.out qapi script: check correctness of union 2014-03-11 09:07:41 -04:00
flat-union-no-base.err qapi: Use an explicit input file 2014-05-08 14:19:58 -04:00
flat-union-no-base.exit qapi script: check correctness of union 2014-03-11 09:07:41 -04:00
flat-union-no-base.json qapi script: check correctness of union 2014-03-11 09:07:41 -04:00
flat-union-no-base.out qapi script: check correctness of union 2014-03-11 09:07:41 -04:00
flat-union-reverse-define.err qapi script: support enum type as discriminator in union 2014-03-11 09:07:42 -04:00
flat-union-reverse-define.exit qapi script: support enum type as discriminator in union 2014-03-11 09:07:42 -04:00
flat-union-reverse-define.json qapi script: support enum type as discriminator in union 2014-03-11 09:07:42 -04:00
flat-union-reverse-define.out qapi script: support enum type as discriminator in union 2014-03-11 09:07:42 -04:00
flat-union-string-discriminator.err qapi: Use an explicit input file 2014-05-08 14:19:58 -04:00
flat-union-string-discriminator.exit qapi script: do not allow string discriminator 2014-03-11 09:07:42 -04:00
flat-union-string-discriminator.json qapi script: do not allow string discriminator 2014-03-11 09:07:42 -04:00
flat-union-string-discriminator.out qapi script: do not allow string discriminator 2014-03-11 09:07:42 -04:00
funny-char.err qapi: Use an explicit input file 2014-05-08 14:19:58 -04:00
funny-char.exit qapi.py: Reject invalid characters in schema file 2013-07-29 10:37:11 -05:00
funny-char.json
funny-char.out qapi.py: Reject invalid characters in schema file 2013-07-29 10:37:11 -05:00
include-before-err.err qapi: Add a primitive to include other files from a QAPI schema file 2014-05-08 14:19:58 -04:00
include-before-err.exit qapi: Add a primitive to include other files from a QAPI schema file 2014-05-08 14:19:58 -04:00
include-before-err.json qapi: Add a primitive to include other files from a QAPI schema file 2014-05-08 14:19:58 -04:00
include-before-err.out qapi: Add a primitive to include other files from a QAPI schema file 2014-05-08 14:19:58 -04:00
include-cycle-b.json qapi: Add a primitive to include other files from a QAPI schema file 2014-05-08 14:19:58 -04:00
include-cycle-c.json qapi: Add a primitive to include other files from a QAPI schema file 2014-05-08 14:19:58 -04:00
include-cycle.err qapi: Add a primitive to include other files from a QAPI schema file 2014-05-08 14:19:58 -04:00
include-cycle.exit qapi: Add a primitive to include other files from a QAPI schema file 2014-05-08 14:19:58 -04:00
include-cycle.json qapi: Add a primitive to include other files from a QAPI schema file 2014-05-08 14:19:58 -04:00
include-cycle.out qapi: Add a primitive to include other files from a QAPI schema file 2014-05-08 14:19:58 -04:00
include-format-err.err qapi: Add a primitive to include other files from a QAPI schema file 2014-05-08 14:19:58 -04:00
include-format-err.exit qapi: Add a primitive to include other files from a QAPI schema file 2014-05-08 14:19:58 -04:00
include-format-err.json qapi: Add a primitive to include other files from a QAPI schema file 2014-05-08 14:19:58 -04:00
include-format-err.out qapi: Add a primitive to include other files from a QAPI schema file 2014-05-08 14:19:58 -04:00
include-nested-err.err qapi: Add a primitive to include other files from a QAPI schema file 2014-05-08 14:19:58 -04:00
include-nested-err.exit qapi: Add a primitive to include other files from a QAPI schema file 2014-05-08 14:19:58 -04:00
include-nested-err.json qapi: Add a primitive to include other files from a QAPI schema file 2014-05-08 14:19:58 -04:00
include-nested-err.out qapi: Add a primitive to include other files from a QAPI schema file 2014-05-08 14:19:58 -04:00
include-no-file.err qapi: Add a primitive to include other files from a QAPI schema file 2014-05-08 14:19:58 -04:00
include-no-file.exit qapi: Add a primitive to include other files from a QAPI schema file 2014-05-08 14:19:58 -04:00
include-no-file.json qapi: Add a primitive to include other files from a QAPI schema file 2014-05-08 14:19:58 -04:00
include-no-file.out qapi: Add a primitive to include other files from a QAPI schema file 2014-05-08 14:19:58 -04:00
include-non-file.err qapi: Add a primitive to include other files from a QAPI schema file 2014-05-08 14:19:58 -04:00
include-non-file.exit qapi: Add a primitive to include other files from a QAPI schema file 2014-05-08 14:19:58 -04:00
include-non-file.json qapi: Add a primitive to include other files from a QAPI schema file 2014-05-08 14:19:58 -04:00
include-non-file.out qapi: Add a primitive to include other files from a QAPI schema file 2014-05-08 14:19:58 -04:00
include-relpath-sub.json qapi: Add a primitive to include other files from a QAPI schema file 2014-05-08 14:19:58 -04:00
include-relpath.err qapi: Add a primitive to include other files from a QAPI schema file 2014-05-08 14:19:58 -04:00
include-relpath.exit qapi: Add a primitive to include other files from a QAPI schema file 2014-05-08 14:19:58 -04:00
include-relpath.json qapi: Add a primitive to include other files from a QAPI schema file 2014-05-08 14:19:58 -04:00
include-relpath.out qapi: Add a primitive to include other files from a QAPI schema file 2014-05-08 14:19:58 -04:00
include-repetition-sub.json qapi: skip redundant includes 2014-05-16 10:35:59 -04:00
include-repetition.err qapi: skip redundant includes 2014-05-16 10:35:59 -04:00
include-repetition.exit qapi: skip redundant includes 2014-05-16 10:35:59 -04:00
include-repetition.json qapi: skip redundant includes 2014-05-16 10:35:59 -04:00
include-repetition.out qapi: skip redundant includes 2014-05-16 10:35:59 -04:00
include-self-cycle.err qapi: Add a primitive to include other files from a QAPI schema file 2014-05-08 14:19:58 -04:00
include-self-cycle.exit qapi: Add a primitive to include other files from a QAPI schema file 2014-05-08 14:19:58 -04:00
include-self-cycle.json qapi: Add a primitive to include other files from a QAPI schema file 2014-05-08 14:19:58 -04:00
include-self-cycle.out qapi: Add a primitive to include other files from a QAPI schema file 2014-05-08 14:19:58 -04:00
include-simple-sub.json qapi: Add a primitive to include other files from a QAPI schema file 2014-05-08 14:19:58 -04:00
include-simple.err qapi: Add a primitive to include other files from a QAPI schema file 2014-05-08 14:19:58 -04:00
include-simple.exit qapi: Add a primitive to include other files from a QAPI schema file 2014-05-08 14:19:58 -04:00
include-simple.json qapi: Add a primitive to include other files from a QAPI schema file 2014-05-08 14:19:58 -04:00
include-simple.out qapi: Add a primitive to include other files from a QAPI schema file 2014-05-08 14:19:58 -04:00
indented-expr.err
indented-expr.exit
indented-expr.json
indented-expr.out qapi.py: Restructure lexer and parser 2013-07-29 10:37:10 -05:00
missing-colon.err qapi: Use an explicit input file 2014-05-08 14:19:58 -04:00
missing-colon.exit qapi.py: Fix schema parser to check syntax systematically 2013-07-29 10:37:11 -05:00
missing-colon.json
missing-colon.out qapi.py: Fix schema parser to check syntax systematically 2013-07-29 10:37:11 -05:00
missing-comma-list.err qapi: Use an explicit input file 2014-05-08 14:19:58 -04:00
missing-comma-list.exit qapi.py: Fix schema parser to check syntax systematically 2013-07-29 10:37:11 -05:00
missing-comma-list.json
missing-comma-list.out qapi.py: Fix schema parser to check syntax systematically 2013-07-29 10:37:11 -05:00
missing-comma-object.err qapi: Use an explicit input file 2014-05-08 14:19:58 -04:00
missing-comma-object.exit qapi.py: Fix schema parser to check syntax systematically 2013-07-29 10:37:11 -05:00
missing-comma-object.json
missing-comma-object.out qapi.py: Fix schema parser to check syntax systematically 2013-07-29 10:37:11 -05:00
non-objects.err qapi: Use an explicit input file 2014-05-08 14:19:58 -04:00
non-objects.exit
non-objects.json
non-objects.out
qapi-schema-test.err
qapi-schema-test.exit
qapi-schema-test.json qapi script: do not allow string discriminator 2014-03-11 09:07:42 -04:00
qapi-schema-test.out qapi script: do not allow string discriminator 2014-03-11 09:07:42 -04:00
quoted-structural-chars.err qapi: Use an explicit input file 2014-05-08 14:19:58 -04:00
quoted-structural-chars.exit qapi.py: Restructure lexer and parser 2013-07-29 10:37:10 -05:00
quoted-structural-chars.json
quoted-structural-chars.out qapi.py: Restructure lexer and parser 2013-07-29 10:37:10 -05:00
test-qapi.py qapi: Use an explicit input file 2014-05-08 14:19:58 -04:00
trailing-comma-list.err qapi: Use an explicit input file 2014-05-08 14:19:58 -04:00
trailing-comma-list.exit qapi.py: Fix schema parser to check syntax systematically 2013-07-29 10:37:11 -05:00
trailing-comma-list.json
trailing-comma-list.out qapi.py: Fix schema parser to check syntax systematically 2013-07-29 10:37:11 -05:00
trailing-comma-object.err qapi: Use an explicit input file 2014-05-08 14:19:58 -04:00
trailing-comma-object.exit qapi.py: Fix schema parser to check syntax systematically 2013-07-29 10:37:11 -05:00
trailing-comma-object.json
trailing-comma-object.out qapi.py: Fix schema parser to check syntax systematically 2013-07-29 10:37:11 -05:00
unclosed-list.err qapi: Use an explicit input file 2014-05-08 14:19:58 -04:00
unclosed-list.exit
unclosed-list.json
unclosed-list.out
unclosed-object.err qapi: Use an explicit input file 2014-05-08 14:19:58 -04:00
unclosed-object.exit
unclosed-object.json
unclosed-object.out
unclosed-string.err qapi: Use an explicit input file 2014-05-08 14:19:58 -04:00
unclosed-string.exit
unclosed-string.json
unclosed-string.out
union-invalid-base.err qapi: Use an explicit input file 2014-05-08 14:19:58 -04:00
union-invalid-base.exit qapi script: check correctness of union 2014-03-11 09:07:41 -04:00
union-invalid-base.json qapi script: check correctness of union 2014-03-11 09:07:41 -04:00
union-invalid-base.out qapi script: check correctness of union 2014-03-11 09:07:41 -04:00