Generating trees for Modelica files is fast but parsing all standard libraries on every startup isn't any more.
Tree-Sitter trees tend to be very large, about 10 times the size of the original file.
Desired Features
[ ] Save generated trees
Find a good file format and location on the client machine.
Find good time points to save. Don't save every change but ensure not to much is lost when closing an editor.
Smaller trees are faster to save than one giant tree, so this is related to https://github.com/OpenModelica/modelica-language-server/issues/7 and how large packages are handles.
This should be a non-blocking operation working on a copy of a tree in a separate thread. Nobody likes to wait for an LS to save stuff before the hover provider is working again.
[ ] Check for available saved trees before generating a new one
Check if the file was changed since the tree was parsed. If yes update it.
Description
Generating trees for Modelica files is fast but parsing all standard libraries on every startup isn't any more. Tree-Sitter trees tend to be very large, about 10 times the size of the original file.
Desired Features