Optimize simplify name analyzer (#2254)
* remove unnecessary filtering and deduplication * write lazy early return functions for SimplifyName analyzer * make the rest of nr lazy add cache * fix cache locking * do not try to resolve ctors for non-ctor Item * more lazyness to NameResolution * optimize GetBestEnvForPos by indexing nameres environments (scopes) by line number * look for best resolution env on previous line as well * Reformat ResolveObjectConstructorPrim * remove double hash table lookup in NotifyNameResolution * make CurrentSink non-optional * eliminate a list creation * renaming * optimize ValRef * small optimizations * make Ident a struct * add MaybeLazy * SimplifyNameDiagnosticAnalyzer should do semantic analysis, not syntax one * remove dead code * fix after merge * Revert "make CurrentSink non-optional" This reverts commit a2f791dceccf6e243232cf4858a7e49654a4c741. # Conflicts: # src/fsharp/TypeChecker.fs * Revert "optimize GetBestEnvForPos by indexing nameres environments (scopes) by line number" This reverts commit c8edcc36e699b745dc11d118d00d6020cad9e7c1. # Conflicts: # src/fsharp/vs/service.fs # src/fsharp/vs/service.fsi * turn off SimplifyNameDiagnosticAnalyzer for now
Showing
想要评论请 注册 或 登录