org.eclipse.cdt.core.dom.ast

## Class ASTTypeUtil

- java.lang.Object
- - org.eclipse.cdt.core.dom.ast.ASTTypeUtil

    public class ASTTypeUtil
    extends Object

Collection of static methods for converting AST elements to `String`s corresponding to the AST element's type.

### Method Summary

All Methods Static Methods Concrete Methods Deprecated Methods
`static void` `appendType(IType type, boolean normalize, StringBuilder result)` Appends the the result of `getType(IType, boolean)` to the given buffer.
`static char[]` `createNameForAnonymous(IBinding binding)`
`static void` `finishTranslationUnit()` Marks the end of processing a translation unit during indexing.
`static boolean` `functionTakesParameters(IFunction function)` Returns whether the function matching the given function binding takes parameters or not.
`static String` `getArgumentListString(ICPPTemplateArgument[] args, boolean normalize)` Returns a comma-separated list of the string representations of the arguments, enclosed in angle brackets.
`static String` `getArgumentString(ICPPTemplateArgument arg, boolean normalize)` Returns a string representation for an template argument.
`static String` `getNodeType(IASTNode node)` For testing purposes, only.
`static String` `getParameterTypeString(IFunctionType type)` Returns a string representation for the parameters of the given function type.
`static String` `getParameterTypeStringAndQualifiers(IFunctionType type)` Returns a string representation for the parameters and the qualifiers of the given function type.
`static String[]` `getParameterTypeStringArray(IFunctionType type)` Returns an array of normalized string representations for the parameter types of the given function type.
`static String` `getQualifiedName(ICPPBinding binding)` Returns the qualified name for the given binding including template arguments.
`static String` `getType(IASTDeclarator declarator)` For testing purposes, only.
`static String` `getType(IASTTypeId typeId)` Returns the type representation of the IASTTypeId as a String.
`static String` `getType(IType type)` Returns the normalized string representation of the type.
`static String` `getType(IType type, boolean normalize)` Returns a string representation of a type.
`static String` `getTypeListString(IType[] types)` Returns a string representation for the type array.
`static String` `getTypeListString(IType[] types, boolean normalize)` Returns a String representation of the type array as a comma-separated list.
`static boolean` `isConst(IType type)` Deprecated. don't use it does something strange
`static void` `startTranslationUnit()` Marks start of processing a translation unit during indexing.

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Method Detail

#### getParameterTypeString

    public static String getParameterTypeString(IFunctionType type)

Returns a string representation for the parameters of the given function type. The representation contains the comma-separated list of the normalized parameter type representations wrapped in parentheses.

#### getParameterTypeStringAndQualifiers

    public static String getParameterTypeStringAndQualifiers(IFunctionType type)

Returns a string representation for the parameters and the qualifiers of the given function type. The representation contains the comma-separated list of the normalized parameter type representations wrapped in parentheses followed by the method qualifiers, if any.

Since:
  5.11

#### functionTakesParameters

    public static boolean functionTakesParameters(IFunction function)

Returns whether the function matching the given function binding takes parameters or not.

Since:
  5.1

#### getTypeListString

    public static String getTypeListString(IType[] types)

Returns a string representation for the type array. The representation is a comma-separated list of the normalized string representations of the provided types.

See Also:
  `getTypeListString(IType[], boolean)`

#### getTypeListString

    public static String getTypeListString(IType[] types,
                                           boolean normalize)

Returns a String representation of the type array as a comma-separated list.

Parameters:
  `types` -
  `normalize` - indicates whether normalization shall be performed
Returns:
  representation of the type array as a comma-separated list
Since:
  5.1

#### getArgumentListString

    public static String getArgumentListString(ICPPTemplateArgument[] args,
                                               boolean normalize)

Returns a comma-separated list of the string representations of the arguments, enclosed in angle brackets. Optionally normalization is performed:
template parameter names are represented by their parameter position,
further normalization may be performed in future versions.

Parameters:
  `normalize` - indicates whether normalization shall be performed
Since:
  5.1

#### getArgumentString

    public static String getArgumentString(ICPPTemplateArgument arg,
                                           boolean normalize)

Returns a string representation for an template argument. Optionally normalization is performed:
template parameter names are represented by their parameter position,
further normalization may be performed in future versions.

Parameters:
  `normalize` - indicates whether normalization shall be performed
Since:
  5.1

#### getParameterTypeStringArray

    public static String[] getParameterTypeStringArray(IFunctionType type)

Returns an array of normalized string representations for the parameter types of the given function type.

See Also:
  `getType(IType, boolean)`

#### getType

    public static String getType(IType type)

Returns the normalized string representation of the type.

See Also:
  `getType(IType, boolean)`

#### getType

    public static String getType(IType type,
                                 boolean normalize)

Returns a string representation of a type. Optionally the representation is normalized:
typedefs are resolved
template parameter names are represented by their parameter position
further normalization may be performed in the future.

Parameters:
  `type` - a type to compute the string representation for.
  `normalize` - whether or not normalization should be performed.
Returns:
  the type representation of the IType

#### appendType

    public static void appendType(IType type,
                                  boolean normalize,
                                  StringBuilder result)

Appends the the result of `getType(IType, boolean)` to the given buffer.

Since:
  5.3

#### getType

    public static String getType(IASTDeclarator declarator)

For testing purposes, only. Returns the normalized string representation of the type defined by the given declarator.

#### getNodeType

    public static String getNodeType(IASTNode node)

For testing purposes, only. Return's the String representation of a node's type (if available).

#### getType

    public static String getType(IASTTypeId typeId)

Returns the type representation of the IASTTypeId as a String.

Parameters:
  `typeId` -
Returns:
  the type representation of the IASTTypeId as a String

#### isConst

    @Deprecated
    public static boolean isConst(IType type)

Deprecated. don't use it does something strange

#### getQualifiedName

    public static String getQualifiedName(ICPPBinding binding)

Returns the qualified name for the given binding including template arguments. If there are template arguments the arguments are neither normalized nor qualified.

Since:
  5.3

#### createNameForAnonymous

    public static char[] createNameForAnonymous(IBinding binding)

#### startTranslationUnit

    public static void startTranslationUnit()

Marks start of processing a translation unit during indexing. Enables caching of string representations of types.

#### finishTranslationUnit

    public static void finishTranslationUnit()

Marks the end of processing a translation unit during indexing. Disables caching of string representations of types and clears the previously cached results.