Dali Provisional API
Release 3.2

org.eclipse.jpt.common.utility
Interface JavaType


public interface JavaType

This interface describes a Java type; i.e. its "element type" and its "array depth". The element type is referenced by name, allowing us to reference classes that are not (or cannot be) loaded.

Provisional API: This interface is part of an interim API that is still under development and expected to change significantly before reaching stability. It is available at this early stage to solicit feedback from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken (repeatedly) as the API evolves.

This interface is not intended to be implemented by clients.


Method Summary
 void appendDeclarationTo(StringBuilder sb)
          Append the version of the type's name that can be used in source code: "[[J" => "long[][]" "java.util.Map$Entry" => "java.util.Map.Entry"
 String declaration()
          Return the version of the type's name that can be used in source code: "[[J" => "long[][]" "java.util.Map$Entry" => "java.util.Map.Entry"
 boolean describes(Class<?> javaClass)
          Return whether the type describes to the specified type.
 boolean describes(String className)
          Return whether the type describes to the specified type.
 boolean equals(JavaType other)
          Return whether the type is equal to the specified type.
 boolean equals(String otherElementTypeName, int otherArrayDepth)
          Return whether the type is equal to the specified type.
 int getArrayDepth()
          Return the type's "array depth".
 String getElementTypeName()
          Return the name of the type's "element type".
 Class<?> getJavaClass()
          Return the class corresponding to the type's element type and array depth.
 String getJavaClassName()
          Return the version of the type's name that matches that returned by Class.getName() (e.g.
 boolean isArray()
          Return whether the type is an array (i.e. its "array depth" is greater than zero).
 boolean isPrimitive()
          Return whether the type is a "primitive" (e.g.
 boolean isPrimitiveWrapper()
          Return whether the type is a "primitive wrapper" (e.g.
 boolean isVariablePrimitive()
          Return whether the type is a "variable primitive" (e.g.
 boolean isVariablePrimitiveWrapper()
          Return whether the type is a "variable primitive wrapper" (e.g.
 void printDeclarationOn(PrintWriter pw)
          Print the version of the type's name that can be used in source code: "[[J" => "long[][]" "java.util.Map$Entry" => "java.util.Map.Entry"
 

Method Detail

getElementTypeName

String getElementTypeName()
Return the name of the type's "element type". A member type will have one or more '$' characters in its name.


getArrayDepth

int getArrayDepth()
Return the type's "array depth".


isArray

boolean isArray()
Return whether the type is an array (i.e. its "array depth" is greater than zero).


isPrimitive

boolean isPrimitive()
Return whether the type is a "primitive" (e.g. int, float).

NB: void.class.isPrimitive() == true


isPrimitiveWrapper

boolean isPrimitiveWrapper()
Return whether the type is a "primitive wrapper" (e.g. Integer, Float).

NB: void.class.isPrimitive() == true


isVariablePrimitive

boolean isVariablePrimitive()
Return whether the type is a "variable primitive" (e.g. int, float, but not void).

NB: variables cannot be declared void


isVariablePrimitiveWrapper

boolean isVariablePrimitiveWrapper()
Return whether the type is a "variable primitive wrapper" (e.g. Integer, Float, but not Void).

NB: variables cannot be declared void


getJavaClass

Class<?> getJavaClass()
                      throws ClassNotFoundException
Return the class corresponding to the type's element type and array depth.

Throws:
ClassNotFoundException

getJavaClassName

String getJavaClassName()
Return the version of the type's name that matches that returned by Class.getName() (e.g. "[[J", "[Ljava.lang.Object;", "java.util.Map$Entry").


equals

boolean equals(String otherElementTypeName,
               int otherArrayDepth)
Return whether the type is equal to the specified type.


describes

boolean describes(String className)
Return whether the type describes to the specified type.


describes

boolean describes(Class<?> javaClass)
Return whether the type describes to the specified type.


equals

boolean equals(JavaType other)
Return whether the type is equal to the specified type.


declaration

String declaration()
Return the version of the type's name that can be used in source code:


appendDeclarationTo

void appendDeclarationTo(StringBuilder sb)
Append the version of the type's name that can be used in source code:


printDeclarationOn

void printDeclarationOn(PrintWriter pw)
Print the version of the type's name that can be used in source code:


Dali Provisional API
Release 3.2

Copyright (c) 2012 Oracle. All rights reserved.