[clangd] Add ClangdServer::customAction() extension point
This lets basic AST-consuming actions be defined outside clangdserver. (it essentially exposes TUScheduler::runWithAST). Two use cases for now: - replace ClangdServer::dumpAST, which doesn't really belong in the public interface (a followup patch will do this) - allow embedders to add/experiment with extra features (e.g. I know some who want to try crazy AST+ML code completion...) Maybe in the future we should use this sort of mechanism to make ClangdServer less of a monolith, but that's not in scope for now. This would probably require a richer and more carefully-thought-out API. Differential Revision: https://reviews.llvm.org/D85883
Loading
Please sign in to comment