@Override
    protected void visitYAMLMapping(@NotNull YAMLMapping mapping) {
      final YamlMetaTypeProvider.MetaTypeProxy meta = myMetaTypeProvider.getMetaTypeProxy(mapping);

      if (meta == null) {
        return;
      }

      final YamlMetaType metaType = meta.getMetaType();
      if (metaType instanceof YamlScalarType) {
        return;
      }

      final Collection<String> missingKeys = getMissingKeys(mapping, metaType);
      if (!missingKeys.isEmpty()) {
        String msg = YAMLBundle.message("YamlMissingKeysInspectionBase.missing.keys", composeKeyList(missingKeys));
        PsiElement element = getElementToHighlight(mapping);
        myProblemsHolder.registerProblem(element, msg, ProblemHighlightType.GENERIC_ERROR_OR_WARNING,
                                         new AddMissingKeysQuickFix(missingKeys, element));
      }
    }
@Override
    protected void visitYAMLMapping(@NotNull YAMLMapping mapping)