I use the documentSymbol request to move around in .ml buffers, and just noticed that it ignores classes and class types.
Cf.
|
(module_decl_document_symbol pmd) |
|
| Psig_recmodule modules -> |
|
List.iter modules ~f:(iterator.module_declaration iterator) |
|
| Psig_modtype decl -> |
|
descend |
|
(fun () -> Ast_iterator.default_iterator.module_type_declaration iterator decl) |
|
(module_type_decl_symbol decl) |
|
| _ -> Ast_iterator.default_iterator.signature_item iterator item |
|
in |
The linked sample concerns signature items, but the same wildcard pattern is present a few lines down for structure items.
I haven't checked if items other than classes (types) are missing, though removing the wildcard pattern should answer that.
I use the documentSymbol request to move around in .ml buffers, and just noticed that it ignores classes and class types.
Cf.
ocaml-lsp/ocaml-lsp-server/src/document_symbol.ml
Lines 224 to 232 in aae6986
The linked sample concerns signature items, but the same wildcard pattern is present a few lines down for structure items.
I haven't checked if items other than classes (types) are missing, though removing the wildcard pattern should answer that.