X-Git-Url: https://git.madduck.net/etc/vim.git/blobdiff_plain/a44dc3d59eb46901f9fe893727280903df41fc20..9c8464ca7ddd48d1c19112d895ae12d783f01563:/src/black/nodes.py

diff --git a/src/black/nodes.py b/src/black/nodes.py
index a11fb7c..a588077 100644
--- a/src/black/nodes.py
+++ b/src/black/nodes.py
@@ -563,6 +563,17 @@ def is_one_tuple(node: LN) -> bool:
     )
 
 
+def is_tuple_containing_walrus(node: LN) -> bool:
+    """Return True if `node` holds a tuple that contains a walrus operator."""
+    if node.type != syms.atom:
+        return False
+    gexp = unwrap_singleton_parenthesis(node)
+    if gexp is None or gexp.type != syms.testlist_gexp:
+        return False
+
+    return any(child.type == syms.namedexpr_test for child in gexp.children)
+
+
 def is_one_sequence_between(
     opening: Leaf,
     closing: Leaf,