class_docstr: Annotates nodes with QN information.
  
  Note: Not using NodeAnnos to avoid circular dependencies.
class_docstr_tok: ["Annotates","nodes","with","QN","information",".","Note",":","Not","using","NodeAnnos","to","avoid","circular","dependencies","."]
code: def visit_Attribute(self, node):
      node = self.generic_visit(node)
      if anno.hasanno(node.value, anno.Basic.QN):
          anno.setanno(
              node,
              anno.Basic.QN,
              QN(
                  anno.getanno(node.value, anno.Basic.QN),
                  attr=node.attr,
              ),
          )
      return node
  
imports: import collections
  import gast
  from tensorflow.python.autograph.pyct import anno
  from tensorflow.python.autograph.pyct import parser
label_desc: Use image node_id 2 for calling the QnResolver obj's underlying member method code with example usage: obj.visit_Attribute(node) and returns: node