def _analyze_ast(self) -> None:
        """Run the AstArcAnalyzer and save its results.

        `_all_arcs` is the set of arcs in the code.

        """
        assert self._ast_root is not None
        aaa = AstArcAnalyzer(self.filename, self._ast_root, self.raw_statements, self._multiline)
        aaa.analyze()
        arcs = aaa.arcs
        if env.PYBEHAVIOR.exit_through_with:
            self._with_jump_fixers = aaa.with_jump_fixers()
            if self._with_jump_fixers:
                arcs = self.fix_with_jumps(arcs)

        self._all_arcs = set()
        for l1, l2 in arcs:
            fl1 = self.first_line(l1)
            fl2 = self.first_line(l2)
            if fl1 != fl2:
                self._all_arcs.add((fl1, fl2))

        self._missing_arc_fragments = aaa.missing_arc_fragments
Run the AstArcAnalyzer and save its results.

        `_all_arcs` is the set of arcs in the code.

        
coverage/parser.py