Klasse ElementUtils

java.lang.Object
de.svws_nrw.transpiler.ElementUtils

public final class ElementUtils extends Object
Eine Klasse mit statischen Hilfsmethoden für den Zugriff aus Element-Objekte.
  • Methodendetails

    • isNotNull

      public static boolean isNotNull(Element e)
      Prüfe, ob das Element eine NotNull-Annotation hat oder nicht.
      Parameter:
      e - das zu prüfende Element
      Gibt zurück:
      true, falls es eine NotNull-Annotation hat, und ansonsten false
    • isStatic

      public static boolean isStatic(Element e)
      Prüfe, ob das Element einen static-Modifier hat oder nicht.
      Parameter:
      e - das zu prüfende Element
      Gibt zurück:
      true, falls der Modifier gesetzt ist, und ansonsten false
    • isPrimitiveType

      public static boolean isPrimitiveType(Element e)
      Prüft, ob der Typ des Elements ein primitiver Datentyp ist.
      Parameter:
      e - das zu prüfende Element
      Gibt zurück:
      true, falls es sich um einen primitiven Datentyp handelt, und ansonsten false
    • getName

      public static String getName(VariableElement ve)
      Gibt den Namen der Variable zurück.
      Parameter:
      ve - das VariableElement
      Gibt zurück:
      der Name
    • getTypeElement

      public static TypeElement getTypeElement(VariableElement ve)
      Gibt das TypeElement zum Typ der Variable zurück, sofern es sich nicht um einen primitiven Typ handelt.
      Parameter:
      ve - das VariableElement
      Gibt zurück:
      das TypeElement
    • getArrayType

      public static ArrayType getArrayType(VariableElement ve)
      Gibt das ArrayElement zu der Variable zurück.
      Parameter:
      ve - das VariableElement
      Gibt zurück:
      das ArrayElement
    • getArrayComponentType

      public static TypeMirror getArrayComponentType(VariableElement ve)
      Gibt den Type der Komponente des Arrays einer Variable zurück.
      Parameter:
      ve - das VariableElement
      Gibt zurück:
      der Komponenten-Typ des Arrays
    • getArrayComponentTypeElement

      public static TypeElement getArrayComponentTypeElement(VariableElement ve)
      Gibt das zugehörige TypeElement für eine Variable zurück, sofern diese einen Array-Typ hat, welcher kein primitiver Typ ist.
      Parameter:
      ve - das VariableElement
      Gibt zurück:
      das TypeElement
    • getTypeElement

      public static TypeElement getTypeElement(TypeMirror type)
      Gibt das zugehörige TypeElement des Typs zurück, sofern es sich um einen DeclaredType handelt.
      Parameter:
      type - der type
      Gibt zurück:
      das TypeElement
    • getSimpleTypeName

      public static String getSimpleTypeName(TypeElement te)
      Gibt den einfachen Typ (ohne Package) als String zurück.
      Parameter:
      te - das TypeElement
      Gibt zurück:
      der einfache Typ als String
    • getSimpleTypeName

      public static String getSimpleTypeName(VariableElement ve)
      Gibt den einfachen Typ (ohne Package) als String zurück. Im Falle eines primitiven Typs wird dieser zurückgegeben.
      Parameter:
      ve - die Variable
      Gibt zurück:
      der einfache Typ als String
    • getQualifiedTypeName

      public static String getQualifiedTypeName(TypeElement te)
      Gibt den qualifizierten Typ (mit Package) als String zurück.
      Parameter:
      te - das TypeElement
      Gibt zurück:
      der qualifizierte Typ als String
    • getQualifiedTypeName

      public static String getQualifiedTypeName(VariableElement ve)
      Gibt den qualifizierten Typ (mit Package) als String zurück. Im Falle eines primitiven Typs wird dieser zurückgegeben.
      Parameter:
      ve - die Variable
      Gibt zurück:
      der qualifizierte Typ als String
    • isArray

      public static boolean isArray(VariableElement ve)
      Prüfe, ob die Variable ein Array ist oder nicht.
      Parameter:
      ve - die zu prüfende Variable
      Gibt zurück:
      true, falls sie ein Array ist, und ansonsten false
    • isString

      public static boolean isString(VariableElement ve)
      Prüfe, ob die Variable ein String ist oder nicht.
      Parameter:
      ve - die zu prüfende Variable
      Gibt zurück:
      true, falls sie ein String ist, und ansonsten false
    • isString

      public static boolean isString(TypeElement te)
      Prüfe, ob das TypeElement ein String ist oder nicht.
      Parameter:
      te - das zu prüfende Element
      Gibt zurück:
      true, falls es ein String ist, und ansonsten false
    • isBoxedPrimitive

      public static boolean isBoxedPrimitive(TypeElement te)
      Prüfe, ob das TypeElement ein boxed primitive ist oder nicht.
      Parameter:
      te - das zu prüfende Element
      Gibt zurück:
      true, falls es ein boxed primitive ist, und ansonsten false
    • isBoxedPrimitive

      public static boolean isBoxedPrimitive(VariableElement ve)
      Prüfe, ob die Variable ein boxed primitive ist oder nicht.
      Parameter:
      ve - die zu prüfende Variable
      Gibt zurück:
      true, falls sie ein boxed primitive ist, und ansonsten false
    • isStringOrBoxedPrimitive

      public static boolean isStringOrBoxedPrimitive(TypeElement te)
      Prüfe, ob das TypeElement ein boxed primitive oder ein String ist oder nicht.
      Parameter:
      te - das zu prüfende Element
      Gibt zurück:
      true, falls es ein boxed primitive oder ein String ist, und ansonsten false
    • isStringOrBoxedPrimitive

      public static boolean isStringOrBoxedPrimitive(VariableElement ve)
      Prüfe, ob die Variable ein boxed primitive oder ein String ist oder nicht.
      Parameter:
      ve - die zu prüfende Variable
      Gibt zurück:
      true, falls sie ein boxed primitive oder ein String ist, und ansonsten false
    • isCollection

      public static boolean isCollection(VariableElement ve)
      Prüfe, ob die Variable eine Collection ist oder nicht.
      Parameter:
      ve - die zu prüfende Variable
      Gibt zurück:
      true, falls sie eine Collection ist, und ansonsten false
    • isCollection

      public static boolean isCollection(TypeElement te)
      Prüfe, ob das TypeElement eine Collection ist oder nicht.
      Parameter:
      te - das zu prüfende TypeElement
      Gibt zurück:
      true, falls es eine Collection ist, und ansonsten false
    • getTypeParameter

      public static TypeParameterElement getTypeParameter(TypeElement te, int index)
      Gibt das Type-Parameter-Element an der Stelle index zurück.
      Parameter:
      te - das Type-Element, dessen Type-Parameter-Element zurückgegeben werden soll
      index - der Index des Type-Parameters (0-indiziert)
      Gibt zurück:
      das Type-Parameter-Element oder null
    • getTypeOfTypeParameter

      public static TypeElement getTypeOfTypeParameter(TypeElement te, int index)
      Gibt das Type-Parameter-Element an der Stelle index zurück.
      Parameter:
      te - das Type-Element, dessen Type-Parameter-Element zurückgegeben werden soll
      index - der Index des Type-Parameters (0-indiziert)
      Gibt zurück:
      das Type-Parameter-Element oder null
    • getTypeOfTypeParameter

      public static TypeElement getTypeOfTypeParameter(VariableElement ve, int index)
      Gibt das Type-Parameter-Element an der Stelle index zurück.
      Parameter:
      ve - die Variable, deren Type-Parameter-Element zurückgegeben werden soll
      index - der Index des Type-Parameters (0-indiziert)
      Gibt zurück:
      das Type-Parameter-Element oder null
    • getUsedTypeVariables

      public static Map<String,TypeVariable> getUsedTypeVariables(ExecutableElement execElem)
      Ermittelt alle Type-Variablen, welche bei der Methode bei den Typen der Rückgabe und der Parameter genutzt werden.
      Parameter:
      execElem - die Methode, der Konstruktor oder der Iniatializer
      Gibt zurück:
      die Map mit den genutzten Typ-Variablen zu geodnet zu ihren Bezeichnern
    • getDirectAncestorType

      public static DeclaredType getDirectAncestorType(TypeElement cur, TypeElement ancestor)
      Ermittelt für das angegeben TypeElement cur den Typ des direkten Vorgängers im Vererbungsbaum. Kann ancestor nicht als direkter Vorgänger gefunden werden, so wird null zurückgegeben.
      Parameter:
      cur - das TypeElement
      ancestor - der Vorgänger
      Gibt zurück:
      der type des Vorgängers oder null
    • resolveTypeVariables

      public static Map<String,TypeMirror> resolveTypeVariables(List<TypeElement> path, TypeElement elem)
      Löst die Typ-Parameter von elem in dem Vererbungspfades path auf, indem die Typ-Variablen rückwärts durch die jeweiligen Typ-Parameter bis zum Anfang des Pfades ersetzt werden. Wird elem mit null aufgerufen, so wird das letzte Element des Pfades als Elem angenommen.
      Parameter:
      path - der Vererbungspfad
      elem - das Element, dessen type-Parameter mithilfe des Pfades aufgelöst werden
      Gibt zurück:
      eine Map von dem Typ-Parameter zu dem TypeMirror-Objekt (z.B. TypeVariable oder DeclaredType)