From 0432b9b7a4be92e891c256eae19378c87a4de553 Mon Sep 17 00:00:00 2001 From: Luca Chiodini Date: Sun, 6 Mar 2022 15:26:28 +0100 Subject: [PATCH] [3.10] Update grammar_grapher with the new forced (&&) directive (GH-31704) (cherry picked from commit 7f07b5ee9c2d17f837c44440bf066c73f92dac14) Co-authored-by: Luca Chiodini --- Tools/peg_generator/scripts/grammar_grapher.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/Tools/peg_generator/scripts/grammar_grapher.py b/Tools/peg_generator/scripts/grammar_grapher.py index 4afdbce8f966f2..c527e19b209979 100755 --- a/Tools/peg_generator/scripts/grammar_grapher.py +++ b/Tools/peg_generator/scripts/grammar_grapher.py @@ -29,6 +29,7 @@ from pegen.grammar import ( Alt, Cut, + Forced, Grammar, Group, Leaf, @@ -57,6 +58,8 @@ def references_for_item(item: Any) -> List[Any]: return [_ref for _item in item.items for _ref in references_for_item(_item)] elif isinstance(item, Cut): return [] + elif isinstance(item, Forced): + return references_for_item(item.node) elif isinstance(item, Group): return references_for_item(item.rhs) elif isinstance(item, Lookahead):