In the Program Element Facts that represent nodes of the Java AST, types are represented by so called type terms. A type term is a term of the form
basic, name, array_dimension) or
class, #id, array_dimension) or
If the first argument of a type term has the value
basicthen the second argument is the name of a basic type (e.g.
classthen the second argument is the id of a class or interface represented by a classT fact;
The third argument (array_dimension) is a positive integer or 0. If its is 0 then the type is not an array type. If the value of the third argument is positive then it indicates the dimension of the array.