docs: def process(self, ast):  # type: (Dict[str, Any]) -> None
          """ Build a scope tree and links between scopes and identifiers by the
          specified ast. You can access the built scope tree and the built links
          by .scope_tree and .link_registry.
          """
          id_classifier = IdentifierClassifier()
          attached_ast = id_classifier.attach_identifier_attributes(ast)
  
          # We are already in script local scope.
          self._scope_tree_builder.enter_new_scope(ScopeVisibility.SCRIPT_LOCAL)
  
          traverse(attached_ast,
                   on_enter=self._enter_handler,
                   on_leave=self._leave_handler)
  
          self.scope_tree = self._scope_tree_builder.get_global_scope()
          self.link_registry = self._scope_tree_builder.link_registry