XmlAttributeDescriptor[] (@Nullable final XmlTag context) { if (context != null) { return getCachedValue(context, this, ATTRS_KEY, p -> { final XmlAttributeDescriptor[] value = p.collectAttributeDescriptors(context); return CachedValueProvider.Result.create(value, p.getDependencies(), context); }); } else { return collectAttributeDescriptors(null); } }