ilya-biryukov added a comment.

Another alternative that I've considered was evicting the ASTs from memory 
after a certain period of time, e.g. after 30 seconds of inactivity for some 
file. This might be simpler and also cover the use-case of speeding up multiple 
code navigation requests (findDefinition/documentHighlight) in a row.
Yet another thing that came to mind: walking over **all** of the AST to find 
reference under the cursor is terribly inefficient, we should be able to build 
a cheap data structure that speeds up this operation. Maybe we can even store 
enough information to not need the AST for navigation at all and build it only 
for features like refactorings.
@sammccall, let me know what are your thoughts on all of this.


Repository:
  rCTE Clang Tools Extra

https://reviews.llvm.org/D47063



_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to