def visit_Assign(self, node: ast.Assign): new_targets = [] for target in node.targets: new_targets.append(self.visit(target)) node.targets = new_targets orig_value_id = id(node.value) with fast.location_of(node.value): node.value = self._make_tuple_event_for( self.visit(node.value), TraceEvent.before_assign_rhs, orig_node_id=orig_value_id ) node.value = fast.Call( func=self._emitter_ast(), args=[TraceEvent.after_assign_rhs.to_ast(), self._get_copy_id_ast(orig_value_id)], keywords=fast.kwargs(ret=node.value), ) return node
def visit_Assign(self, node: Assign) -> Any: # if assigning to autogenerated variable if len(node.targets) == 1 and node.targets[0].id.startswith( # type:ignore self.context.prefix ): node.value = self.replace_with_call(node.value) # type: ignore return node
def visit_Assign(self, assign: ast.Assign) -> ast.Assign: if isinstance(assign.value, ast.expr): expr = ast.Expr(assign.value) self.modify_expr(expr) assign.value = expr.value return assign
def visit_Assign(self, node: ast.Assign) -> ast.Assign: self.found = False self.generic_visit(node) if self.found: node.value = self.do_placeholder(node.value) return node
def visit_Assign(self, node: ast.Assign) -> ast.Assign: if len(node.targets) == 1: target = node.targets[0] if isinstance(target, ast.Name): key = target.id if key in self.mutations: node.value = self.mutations[key] self._used_mutations.remove(key) return node
def visit_Assign(self, assign: ast.Assign) -> ast.Assign: assign.value = self.modify_expr( assign.value, return_stderr_and_returncode=isinstance(assign.targets[0], ast.Tuple), ) super().generic_visit(assign) return assign
def visit_Assign(self, node: ast.Assign): if not isinstance(node.value, (ast.List, ast.Tuple)): return self.generic_visit(node) new_targets = [] for target in node.targets: new_targets.append(self.visit(target)) node.targets = cast('List[ast.expr]', new_targets) replacement_literal = ast.Call(func=ast.Name(self.literal_tracer, ast.Load()), args=[node.value], keywords=[]) ast.copy_location(node.value, replacement_literal) node.value = replacement_literal return node
def visit_Assign(self, node: ast.Assign) -> ast.AST: """ For nodes: replace with static value """ if node in node_to_param: params = node_to_param[node] node.value = params.to_ast_node( lineno=node.value.lineno, col_offset=node.value.col_offset) return node elif isinstance(node.value, ast.Call) and len(node.value.keywords) > 0: new_keywords = [] for keyword in node.value.keywords: for n, p in node_to_param.items(): if n.value == keyword.value: keyword.value = p.to_ast_node( lineno=keyword.value.lineno, col_offset=keyword.value.col_offset) new_keywords.append(keyword) node.value.keywords = new_keywords return node else: return node