qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] [PATCH v2 0/9] Our QAPI parser is a hack, replace it


From: Markus Armbruster
Subject: [Qemu-devel] [PATCH v2 0/9] Our QAPI parser is a hack, replace it
Date: Sat, 27 Jul 2013 17:41:52 +0200

If you think I'm exaggerating, check out the list of issues in PATCH
3/9.

v2:
* Straightforward rebase
* A few more tests in 1/9, in part suggested by Eric

Markus Armbruster (9):
  tests: QAPI schema parser tests
  tests: Use qapi-schema-test.json as schema parser test
  qapi.py: Restructure lexer and parser
  qapi.py: Decent syntax error reporting
  qapi.py: Reject invalid characters in schema file
  qapi.py: Fix schema parser to check syntax systematically
  qapi.py: Fix diagnosing non-objects at a schema's top-level
  qapi.py: Rename expr_eval to expr in parse_schema()
  qapi.py: Permit comments starting anywhere on the line

 configure                                          |   2 +-
 scripts/qapi.py                                    | 227 +++++++++++++--------
 tests/Makefile                                     |  30 ++-
 tests/qapi-schema/comments.exit                    |   1 +
 tests/qapi-schema/comments.json                    |   4 +
 tests/qapi-schema/comments.out                     |   3 +
 tests/qapi-schema/empty.exit                       |   1 +
 tests/qapi-schema/empty.out                        |   3 +
 tests/qapi-schema/funny-char.err                   |   1 +
 tests/qapi-schema/funny-char.exit                  |   1 +
 tests/qapi-schema/funny-char.json                  |   2 +
 tests/qapi-schema/indented-expr.exit               |   1 +
 tests/qapi-schema/indented-expr.json               |   2 +
 tests/qapi-schema/indented-expr.out                |   3 +
 tests/qapi-schema/missing-colon.err                |   1 +
 tests/qapi-schema/missing-colon.exit               |   1 +
 tests/qapi-schema/missing-colon.json               |   2 +
 tests/qapi-schema/missing-comma-list.err           |   1 +
 tests/qapi-schema/missing-comma-list.exit          |   1 +
 tests/qapi-schema/missing-comma-list.json          |   2 +
 tests/qapi-schema/missing-comma-object.err         |   1 +
 tests/qapi-schema/missing-comma-object.exit        |   1 +
 tests/qapi-schema/missing-comma-object.json        |   2 +
 tests/qapi-schema/non-objects.err                  |   1 +
 tests/qapi-schema/non-objects.exit                 |   1 +
 tests/qapi-schema/non-objects.json                 |   2 +
 tests/qapi-schema/qapi-schema-test.exit            |   1 +
 .../qapi-schema/qapi-schema-test.json              |   0
 tests/qapi-schema/qapi-schema-test.out             |  19 ++
 tests/qapi-schema/quoted-structural-chars.err      |   1 +
 tests/qapi-schema/quoted-structural-chars.exit     |   1 +
 tests/qapi-schema/quoted-structural-chars.json     |   1 +
 tests/qapi-schema/test-qapi.py                     |  27 +++
 tests/qapi-schema/trailing-comma-list.err          |   1 +
 tests/qapi-schema/trailing-comma-list.exit         |   1 +
 tests/qapi-schema/trailing-comma-list.json         |   2 +
 tests/qapi-schema/trailing-comma-object.err        |   1 +
 tests/qapi-schema/trailing-comma-object.exit       |   1 +
 tests/qapi-schema/trailing-comma-object.json       |   2 +
 tests/qapi-schema/unclosed-list.err                |   1 +
 tests/qapi-schema/unclosed-list.exit               |   1 +
 tests/qapi-schema/unclosed-list.json               |   1 +
 tests/qapi-schema/unclosed-object.err              |   1 +
 tests/qapi-schema/unclosed-object.exit             |   1 +
 tests/qapi-schema/unclosed-object.json             |   1 +
 tests/qapi-schema/unclosed-string.err              |   1 +
 tests/qapi-schema/unclosed-string.exit             |   1 +
 tests/qapi-schema/unclosed-string.json             |   2 +
 48 files changed, 271 insertions(+), 94 deletions(-)
 create mode 100644 tests/qapi-schema/comments.err
 create mode 100644 tests/qapi-schema/comments.exit
 create mode 100644 tests/qapi-schema/comments.json
 create mode 100644 tests/qapi-schema/comments.out
 create mode 100644 tests/qapi-schema/empty.err
 create mode 100644 tests/qapi-schema/empty.exit
 create mode 100644 tests/qapi-schema/empty.json
 create mode 100644 tests/qapi-schema/empty.out
 create mode 100644 tests/qapi-schema/funny-char.err
 create mode 100644 tests/qapi-schema/funny-char.exit
 create mode 100644 tests/qapi-schema/funny-char.json
 create mode 100644 tests/qapi-schema/funny-char.out
 create mode 100644 tests/qapi-schema/indented-expr.err
 create mode 100644 tests/qapi-schema/indented-expr.exit
 create mode 100644 tests/qapi-schema/indented-expr.json
 create mode 100644 tests/qapi-schema/indented-expr.out
 create mode 100644 tests/qapi-schema/missing-colon.err
 create mode 100644 tests/qapi-schema/missing-colon.exit
 create mode 100644 tests/qapi-schema/missing-colon.json
 create mode 100644 tests/qapi-schema/missing-colon.out
 create mode 100644 tests/qapi-schema/missing-comma-list.err
 create mode 100644 tests/qapi-schema/missing-comma-list.exit
 create mode 100644 tests/qapi-schema/missing-comma-list.json
 create mode 100644 tests/qapi-schema/missing-comma-list.out
 create mode 100644 tests/qapi-schema/missing-comma-object.err
 create mode 100644 tests/qapi-schema/missing-comma-object.exit
 create mode 100644 tests/qapi-schema/missing-comma-object.json
 create mode 100644 tests/qapi-schema/missing-comma-object.out
 create mode 100644 tests/qapi-schema/non-objects.err
 create mode 100644 tests/qapi-schema/non-objects.exit
 create mode 100644 tests/qapi-schema/non-objects.json
 create mode 100644 tests/qapi-schema/non-objects.out
 create mode 100644 tests/qapi-schema/qapi-schema-test.err
 create mode 100644 tests/qapi-schema/qapi-schema-test.exit
 rename qapi-schema-test.json => tests/qapi-schema/qapi-schema-test.json (100%)
 create mode 100644 tests/qapi-schema/qapi-schema-test.out
 create mode 100644 tests/qapi-schema/quoted-structural-chars.err
 create mode 100644 tests/qapi-schema/quoted-structural-chars.exit
 create mode 100644 tests/qapi-schema/quoted-structural-chars.json
 create mode 100644 tests/qapi-schema/quoted-structural-chars.out
 create mode 100644 tests/qapi-schema/test-qapi.py
 create mode 100644 tests/qapi-schema/trailing-comma-list.err
 create mode 100644 tests/qapi-schema/trailing-comma-list.exit
 create mode 100644 tests/qapi-schema/trailing-comma-list.json
 create mode 100644 tests/qapi-schema/trailing-comma-list.out
 create mode 100644 tests/qapi-schema/trailing-comma-object.err
 create mode 100644 tests/qapi-schema/trailing-comma-object.exit
 create mode 100644 tests/qapi-schema/trailing-comma-object.json
 create mode 100644 tests/qapi-schema/trailing-comma-object.out
 create mode 100644 tests/qapi-schema/unclosed-list.err
 create mode 100644 tests/qapi-schema/unclosed-list.exit
 create mode 100644 tests/qapi-schema/unclosed-list.json
 create mode 100644 tests/qapi-schema/unclosed-list.out
 create mode 100644 tests/qapi-schema/unclosed-object.err
 create mode 100644 tests/qapi-schema/unclosed-object.exit
 create mode 100644 tests/qapi-schema/unclosed-object.json
 create mode 100644 tests/qapi-schema/unclosed-object.out
 create mode 100644 tests/qapi-schema/unclosed-string.err
 create mode 100644 tests/qapi-schema/unclosed-string.exit
 create mode 100644 tests/qapi-schema/unclosed-string.json
 create mode 100644 tests/qapi-schema/unclosed-string.out

-- 
1.7.11.7




reply via email to

[Prev in Thread] Current Thread [Next in Thread]