@ApiStatus.Internal
  public List<PsiMethod> getDefEnumMethods(@NotNull TransformationContext context) {
    PsiManagerEx manager = getManager();
    PsiElementFactory factory = JavaPsiFacade.getElementFactory(getProject());
    PsiClassType thisType = context.eraseClassType(factory.createType(this, PsiSubstitutor.EMPTY));
    List<PsiMethod> result = Arrays.asList(
      new LightMethodBuilder(manager, GroovyLanguage.INSTANCE, "values")
        .setMethodReturnType(new PsiArrayType(thisType))
        .setContainingClass(this)
        .addModifier(PsiModifier.PUBLIC)
        .addModifier(PsiModifier.STATIC),
      new LightMethodBuilder(manager, GroovyLanguage.INSTANCE, "next")
        .setMethodReturnType(thisType)
        .setContainingClass(this)
        .addModifier(PsiModifier.PUBLIC),
      new LightMethodBuilder(manager, GroovyLanguage.INSTANCE, "previous")
        .setMethodReturnType(thisType)
        .setContainingClass(this)
        .addModifier(PsiModifier.PUBLIC),
      new LightMethodBuilder(manager, GroovyLanguage.INSTANCE, "valueOf")
        .setMethodReturnType(thisType)
        .setContainingClass(this)
        .addParameter("name", CommonClassNames.JAVA_LANG_STRING)
        .addModifier(PsiModifier.PUBLIC)
        .addModifier(PsiModifier.STATIC)
    );
    for (PsiMethod method : result) {
      method.putUserData(PREDEFINED_ENUM_METHOD, true);
    }
    return result;
  }
@ApiStatus.Internal
  public List<PsiMethod> getDefEnumMethods(@NotNull TransformationContext context)