CachedValue<XmlAttlistDecl[]> (final XmlElement owner, Object o) { return CachedValuesManager.getManager(owner.getProject()).createCachedValue(() -> { XmlAttlistDecl[] decls = doCollectAttlistDeclarations(owner); return new CachedValueProvider.Result<>(decls, (Object[])ArrayUtil.append(decls, owner, XmlElement.class)); }); }