<commit_before>// Copyright 2000-2021 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
package org.jetbrains.idea.devkit.dom;

import com.intellij.ide.presentation.Presentation;
import com.intellij.psi.PsiPackage;
import com.intellij.util.xml.*;
import org.jetbrains.annotations.ApiStatus;
import org.jetbrains.annotations.NotNull;

import java.util.List;

@ApiStatus.Experimental
public interface ContentDescriptor extends DomElement {

  @NotNull
  @Stubbed
  @SubTagList("module")
  List<DependencyDescriptor.ModuleDescriptor> getModuleEntry();

  @SubTagList("module")
  DependencyDescriptor.ModuleDescriptor addModuleEntry();

  @Presentation(icon = "AllIcons.Nodes.Module")
  interface ModuleDescriptor extends DomElement {
    @NotNull
    @Required
    @Stubbed
    @NameValue
    GenericAttributeValue<String> getName();

    @NotNull
    @Required
    @Stubbed
    @NameValue
    @Convert(PsiPackageConverter.class)
    GenericAttributeValue<PsiPackage> getPackage();
  }
}<commit_msg>IDEA-261707 Devkit: plugin.xml code insight/highlighting for <content> and <dependencies> - fix ContentDescriptor<commit_after>// Copyright 2000-2021 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
package org.jetbrains.idea.devkit.dom;

import com.intellij.ide.presentation.Presentation;
import com.intellij.psi.PsiPackage;
import com.intellij.util.xml.*;
import org.jetbrains.annotations.ApiStatus;
import org.jetbrains.annotations.NotNull;

import java.util.List;

@ApiStatus.Experimental
public interface ContentDescriptor extends DomElement {

  @NotNull
  @Stubbed
  @SubTagList("module")
  List<ModuleDescriptor> getModuleEntry();

  @SubTagList("module")
  ModuleDescriptor addModuleEntry();

  @Presentation(icon = "AllIcons.Nodes.Module")
  interface ModuleDescriptor extends DomElement {

    @NotNull
    @Required
    @Stubbed
    @NameValue
    GenericAttributeValue<String> getName();

    @NotNull
    @Required
    @Stubbed
    @NameValue
    @Convert(PsiPackageConverter.class)
    GenericAttributeValue<PsiPackage> getPackage();
  }
}
{'fraction_non_alphanumeric': 0.09465020576131687, 'fraction_numerical': 0.01188843164151806, 'mean_word_length': 4.773087071240106, 'pattern_counts': {'":': 0, '<': 11, '<?xml version=': 0, '>': 11, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 3}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '134398', 'n_tokens_mistral': 667, 'n_tokens_neox': 631, 'n_words': 154}