示例#1
0
 def visit_assignattr(self, node, parent, assign_ctx=None):
     """visit a AssAttr node by returning a fresh instance of it"""
     newnode = new.AssignAttr()
     _lineno_parent(node, newnode, parent)
     newnode.expr = self.visit(node.expr, newnode, assign_ctx)
     self._delayed_assattr.append(newnode)
     return newnode
示例#2
0
 def visit_attribute(self, node, parent):
     """visit an Attribute node by returning a fresh instance of it"""
     context = self._get_context(node)
     if context == astroid.Del:
         # FIXME : maybe we should reintroduce and visit_delattr ?
         # for instance, deactivating assign_ctx
         newnode = nodes.DelAttr(node.attr, node.lineno, node.col_offset, parent)
     elif context == astroid.Store:
         newnode = nodes.AssignAttr(node.attr, node.lineno, node.col_offset, parent)
         # Prohibit a local save if we are in an ExceptHandler.
         if not isinstance(parent, astroid.ExceptHandler):
             self._delayed_assattr.append(newnode)
     else:
         newnode = nodes.Attribute(node.attr, node.lineno, node.col_offset, parent)
     newnode.postinit(self.visit(node.value, newnode))
     return newnode
示例#3
0
 def visit_attribute(self, node, parent, assign_ctx=None):
     """visit a Getattr node by returning a fresh instance of it"""
     # pylint: disable=redefined-variable-type
     if assign_ctx == "Del":
         # FIXME : maybe we should reintroduce and visit_delattr ?
         # for instance, deactivating asscontext
         newnode = new.DelAttr()
     elif assign_ctx == "Assign":
         # FIXME : maybe we should call visit_assattr ?
         newnode = new.AssignAttr()
         self._delayed_assattr.append(newnode)
     else:
         newnode = new.Attribute()
     _lineno_parent(node, newnode, parent)
     newnode.expr = self.visit(node.value, newnode, None)
     newnode.attrname = node.attr
     return newnode
示例#4
0
 def infer_func(
     node: Name,
     context: Optional[Any] = None
 ) -> Iterator[Union[Iterator, Iterator[AssignAttr]]]:  # pylint: disable=unused-argument
     new_node = nodes.AssignAttr(attrname="alpha", parent=node)
     yield new_node
示例#5
0
 def infer_func(
     node: Name, context: Any | None = None  # pylint: disable=unused-argument
 ) -> Iterator[Iterator | Iterator[AssignAttr]]:
     new_node = nodes.AssignAttr(attrname="alpha", parent=node)
     yield new_node