Пример #1
0
 private void InvalidateReferencingModules(IPsiModule psiModule)
 {
     using (CompilationContextCookie.GetOrCreate(psiModule.GetContextFromModule()))
     {
         var resolveContext = CompilationContextCookie.GetContext();
         foreach (var psiModuleReference in PsiModules.GetReverseModuleReferences(psiModule, resolveContext))
         {
             if (myPsiModules.TryGetValue(psiModuleReference.Module, out var moduleSymbols))
             {
                 moduleSymbols.Invalidate();
             }
         }
     }
 }
        private void InvalidateReferencingModules(IPsiModule psiModule)
        {
            if (PsiModulesCaches.IsEmpty())
            {
                return;
            }

            // todo: reuse FcsProjectProvider references
            using (CompilationContextCookie.GetOrCreate(psiModule.GetContextFromModule()))
            {
                var resolveContext = CompilationContextCookie.GetContext();
                foreach (var psiModuleReference in PsiModules.GetReverseModuleReferences(psiModule, resolveContext))
                {
                    if (PsiModulesCaches.TryGetValue(psiModuleReference.Module, out var moduleSymbols))
                    {
                        moduleSymbols.Invalidate();
                    }
                }
            }
        }