Python ast.AsyncFor() Examples
The following are 6
code examples of ast.AsyncFor().
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example.
You may also want to check out all available functions/classes of the module
ast
, or try the search function
.
Example #1
Source File: annotate.py From pasta with Apache License 2.0 | 6 votes |
def visit_For(self, node): if hasattr(ast, 'AsyncFor') and isinstance(node, ast.AsyncFor): self.attr(node, 'for_keyword', ['async', self.ws, 'for', self.ws], default='async for ') else: self.attr(node, 'for_keyword', ['for', self.ws], default='for ') self.visit(node.target) self.attr(node, 'for_in', [self.ws, 'in', self.ws], default=' in ') self.visit(node.iter) self.attr(node, 'open_block', [self.ws, ':', self.ws_oneline], default=':\n') for stmt in self.indented(node, 'body'): self.visit(stmt) if node.orelse: self.attr(node, 'else', [self.ws, 'else', self.ws, ':', self.ws_oneline], default=self._indent + 'else:\n') for stmt in self.indented(node, 'orelse'): self.visit(stmt)
Example #2
Source File: helper.py From YAPyPy with MIT License | 5 votes |
def for_stmt_rewrite(target, iter, body, orelse, is_async=False): orelse = orelse or [] as_store(target) ty = ast.AsyncFor if is_async else ast.For return ty(target, iter, body, orelse)
Example #3
Source File: test_checker.py From pyflakes with MIT License | 5 votes |
def test_py35_node_types(self): """ Test that the PEP 492 node types are collected """ visitor = self._run_visitor( """\ async def f(): # async def async for x in y: pass # async for async with a as b: pass # async with """ ) self.assertEqual(visitor.typeable_lines, [1, 2, 3]) self.assertIsInstance(visitor.typeable_nodes[1], ast.AsyncFunctionDef) self.assertIsInstance(visitor.typeable_nodes[2], ast.AsyncFor) self.assertIsInstance(visitor.typeable_nodes[3], ast.AsyncWith)
Example #4
Source File: ast3.py From gast with BSD 3-Clause "New" or "Revised" License | 5 votes |
def visit_AsyncFor(self, node): new_node = gast.AsyncFor( self._visit(node.target), self._visit(node.iter), self._visit(node.body), self._visit(node.orelse), None, # type_comment ) gast.copy_location(new_node, node) return new_node
Example #5
Source File: ast3.py From gast with BSD 3-Clause "New" or "Revised" License | 5 votes |
def visit_AsyncFor(self, node): new_node = ast.AsyncFor( self._visit(node.target), self._visit(node.iter), self._visit(node.body), self._visit(node.orelse), None, # type_comment ) ast.copy_location(new_node, node) return new_node
Example #6
Source File: bugfixes.py From wemake-python-styleguide with MIT License | 5 votes |
def fix_async_offset(tree: ast.AST) -> ast.AST: """ Fixes ``col_offest`` values for async nodes. This is a temporary check for async-based expressions, because offset for them isn't calculated properly. We can calculate right version of offset with subscripting ``6`` (length of "async " part). Affected ``python`` versions: - all versions below ``python3.6.7`` Read more: https://bugs.python.org/issue29205 https://github.com/wemake-services/wemake-python-styleguide/issues/282 """ nodes_to_fix = ( ast.AsyncFor, ast.AsyncWith, ast.AsyncFunctionDef, ) for node in ast.walk(tree): if isinstance(node, nodes_to_fix): error = 6 if node.col_offset % 4 else 0 node.col_offset = node.col_offset - error return tree