qt6-bb10/util/lexgen
Volker Hilsheimer e4495d8321 Fix build of lexgen tool
Use QMultiHash explicitly, and build list of values in a QSet via the
range constructor.

Task-number: QTBUG-131842
Change-Id: I9cbcddeada0bfd88b11515262f5476e5d59e0fad
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
(cherry picked from commit e1217cc52bd367b7e040edeb86700dc923df39a8)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
2024-12-05 02:29:48 +00:00
..
tests Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
README Make util/lexgen/ mention itself in its auto-gen line 2018-11-01 15:07:05 +00:00
REUSE.toml Add REUSE.toml files 2024-11-07 08:38:49 +01:00
configfile.cpp Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
configfile.h Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
css3-simplified.lexgen Make util/lexgen/ mention itself in its auto-gen line 2018-11-01 15:07:05 +00:00
generator.cpp Fix build of lexgen tool 2024-12-05 02:29:48 +00:00
generator.h Fix build of lexgen tool 2024-12-05 02:29:48 +00:00
global.h Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
lexgen.lexgen
lexgen.pri
lexgen.pro
main.cpp Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
nfa.cpp Fix build of lexgen tool 2024-12-05 02:29:48 +00:00
nfa.h Fix build of lexgen tool 2024-12-05 02:29:48 +00:00
re2nfa.cpp Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
re2nfa.h Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
test.lexgen
tokenizer.cpp Use SPDX license identifiers 2022-05-16 16:37:38 +02:00

README

Lexgen
------

This is a little tool to generate lexical scanners from a rather simplistic
configuration file. We use it internally in Qt to generate the scanner for the
CSS parser that is built into the toolkit (used for the widget styling and the
HTML import into QTextDocument).

Beware, it's very slow (in generating the code) and it may not generate what
you want. But I like that it generates code that operates on QChar and friends.

Use at your own risk ;-)

--
Simon Hausmann <simon.hausmann@qt.io>