def process(self, ast):
        id_classifier = IdentifierClassifier()
        attached_ast = id_classifier.attach_identifier_attributes(ast)

        self._scope_tree_builder = ScopeLinker.ScopeTreeBuilder()

        # 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
Build a scope tree and links between scopes and identifiers by the
dataset/ETHPy150Open Kuniwak/vint/vint/ast/plugin/scope_plugin/scope_linker.py/ScopeLinker.process