XmlNSDescriptorImpl (final FileKind kind) { CachedValue<XmlNSDescriptorImpl> result = myDescriptorsMap.get(kind); if (result == null) { result = CachedValuesManager.getManager(myProject).createCachedValue( () -> CachedValueProvider.Result.create(doCreateDescriptor(kind), PsiModificationTracker.MODIFICATION_COUNT), false); myDescriptorsMap.put(kind, result); } return result.getValue(); }