boolean (List<JsonPropertyAdapter> adapters, YAMLKeyValue value) { String keyText = value.getKeyText(); if (!"<<".equals(keyText)) return false; YAMLValue yamlValue = value.getValue(); PsiElement resolved = resolveYamlAlias(yamlValue); if (resolved != null) { YAMLMapping mapping = ObjectUtils.tryCast(resolved, YAMLMapping.class); if (mapping == null) return false; List<JsonPropertyAdapter> propertyAdapters = RecursionManager.doPreventingRecursion(myObject, false, () -> new YamlObjectAdapter(mapping).getPropertyList()); if (propertyAdapters != null) { adapters.addAll(propertyAdapters); return true; } } if (yamlValue instanceof YAMLMapping) { if (PsiTreeUtil.getChildOfType(yamlValue, YAMLAnchor.class) == null) return false; adapters.addAll(new YamlObjectAdapter((YAMLMapping)yamlValue).getPropertyList()); return true; } return false; }