void (@Nullable JsonSchemaType type) { if (JsonSchemaVersion.isSchemaSchemaId(myRootSchema.getId()) && type == JsonSchemaType._string) { JsonPropertyAdapter propertyAdapter = myWalker.getParentPropertyAdapter(myOriginalPosition); if (propertyAdapter == null) { return; } String name = propertyAdapter.getName(); if (name == null) { return; } switch (name) { case "required" -> addRequiredPropVariants(); case JsonSchemaObject.X_INTELLIJ_LANGUAGE_INJECTION -> addInjectedLanguageVariants(); case "language" -> { JsonObjectValueAdapter parent = propertyAdapter.getParentObject(); if (parent != null) { JsonPropertyAdapter adapter = myWalker.getParentPropertyAdapter(parent.getDelegate()); if (adapter != null && JsonSchemaObject.X_INTELLIJ_LANGUAGE_INJECTION.equals(adapter.getName())) { addInjectedLanguageVariants(); } } } } } }