title: Annotation processor: get all enum values from a TypeMirror or TypeElement
body: <p>I don't understand how I can retrieve the Enum values in an annotation processor.</p>
  
  <p>My annotation is a custom Java Bean Validation annotation:</p>
  
  <pre><code>  @StringEnumeration(enumClass = UserCivility.class)
    private String civility;
  </code></pre>
  
  <p>On my annotation processor, I can access to instances of these:</p>
  
  <pre><code>javax.lang.model.element.AnnotationValue
  javax.lang.model.type.TypeMirror
  javax.lang.model.element.TypeElement
  </code></pre>
  
  <p>I know it contains the data about my enum since I can see that in debug mode. I also see <code>ElementKind == Enum</code></p>
  
  <p>But I want to get all the names for that Enum, can someone help me please.</p>
  
  <hr>
  
  <p><strong>Edit:</strong> I don't have access to the Class object of this Enum, because we are in an annotation processor, and not in standart Java reflection code. So I can't call <code>Class#getEnumConstants()</code> or <code>EnumSet.allOf(MyEnum.class)</code> unless you tell me how I can get the Class object from the types mentioned above.</p>