diff options
author | Friedemann Kleint <Friedemann.Kleint@qt.io> | 2022-09-19 14:19:55 +0200 |
---|---|---|
committer | Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> | 2022-09-21 09:19:24 +0000 |
commit | 67b4ed2c16fecae7efbdcb9aadfbff8434333230 (patch) | |
tree | 2e183abe35a260cd36e38997ea384555f0929ed8 | |
parent | ddecba2421d9f64c00e6ee22faf24364de1cb179 (diff) |
snippets_translate: Handle more qualifiers
Use a set instead of regexps.
Change-Id: If9c05fffd4f5ebb880d21cd24fafc0be5698ee66
Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
Reviewed-by: Adrian Herrmann <adrian.herrmann@qt.io>
Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
(cherry picked from commit 2a3c2d88940e44c658e1a54e9834765683c127ff)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
-rw-r--r-- | tools/snippets_translate/converter.py | 16 |
1 files changed, 7 insertions, 9 deletions
diff --git a/tools/snippets_translate/converter.py b/tools/snippets_translate/converter.py index a0650b3af..1de3fd051 100644 --- a/tools/snippets_translate/converter.py +++ b/tools/snippets_translate/converter.py @@ -61,8 +61,6 @@ ELSE_REPLACEMENT_PATTERN = re.compile(r"}? *else *{?") CLASS_PATTERN = re.compile(r"^ *class ") STRUCT_PATTERN = re.compile(r"^ *struct ") DELETE_PATTERN = re.compile(r"^ *delete ") -PUBLIC_PATTERN = re.compile(r"^public:$") -PRIVATE_PATTERN = re.compile(r"^private:$") VAR1_PATTERN = re.compile(r"^[a-zA-Z0-9]+(<.*?>)? [\w\*\&]+(\(.*?\))? ?(?!.*=|:).*$") VAR2_PATTERN = re.compile(r"^[a-zA-Z0-9]+(<.*?>)? [\w]+::[\w\*\&]+\(.*\)$") VAR3_PATTERN = re.compile(r"^[a-zA-Z0-9]+(<.*?>)? [\w\*]+ *= *[\w\.\"\']*(\(.*?\))?") @@ -75,6 +73,10 @@ ITERATOR_PATTERN = re.compile(r"(std::)?[\w]+<[\w]+>::(const_)?iterator") SCOPE_PATTERN = re.compile(r"[\w]+::") +QUALIFIERS = {"public:", "protected:", "private:", "public slots:", + "protected slots:", "private slots:", "signals:"} + + def snippet_translate(x): ## Cases which are not C++ @@ -251,13 +253,9 @@ def snippet_translate(x): if DELETE_PATTERN.search(x): return x.replace("delete", "del") - # 'public:' - if PUBLIC_PATTERN.search(xs): - return x.replace("public:", "# public") - - # 'private:' - if PRIVATE_PATTERN.search(xs): - return x.replace("private:", "# private") + # 'public:', etc + if xs in QUALIFIERS: + return f"# {x}".replace(":", "") # For expressions like: `Type var` # which does not contain a `= something` on the right side |