method scan_module_list l =
      let f m =
        let g_bak = current_group in
        let g = Tdl.group ~title: (Name.simple m.m_name) () in
        current_group <- g;
        g_bak.group_groups <- g_bak.group_groups @ [g];
        self#scan_module m;
        current_group <- g_bak
      in
      List.iter f l