List<String> (PsiFile file, String type) { final VirtualFile virtualFile = file.getVirtualFile(); List<String> result = virtualFile != null ? virtualFile.getUserData(ITEM_PROP_KEYS) : null; if (virtualFile != null && result == null) { result = collectNames(file, type); virtualFile.putUserData(ITEM_PROP_KEYS, result); } return result; }