Top Description Inners Fields Constructors Methods
com.github.javaparser.ast.type

public Class ArrayType

extends ReferenceType
implements NodeWithAnnotations<ArrayType>
Class Inheritance
All Implemented Interfaces
com.github.javaparser.ast.nodeTypes.NodeWithAnnotations
Imports
com.github.javaparser.TokenRange, com.github.javaparser.ast.AllFieldsConstructor, .Node, .NodeList, .Generated, com.github.javaparser.ast.expr.AnnotationExpr, com.github.javaparser.ast.nodeTypes.NodeWithAnnotations, com.github.javaparser.ast.observer.ObservableProperty, com.github.javaparser.ast.visitor.CloneVisitor, .GenericVisitor, .VoidVisitor, com.github.javaparser.metamodel.ArrayTypeMetaModel, .JavaParserMetaModel, com.github.javaparser.resolution.types.ResolvedArrayType, com.github.javaparser.utils.Pair, java.util.ArrayList, .List, .Optional, java.util.function.Consumer

To indicate that a type is an array, it gets wrapped in an ArrayType for every array level it has. So, int[][] becomes ArrayType(ArrayType(int)).

Nested and Inner Type Summary

Modifier and TypeClass and Description
public static class
ArrayType.ArrayBracketPair

Helper class that stores information about a pair of brackets in a non-recursive way (unlike ArrayType.)

public static enum
ArrayType.Origin

The origin of a pair of array brackets [].

Field Summary

Modifier and TypeField and Description
private Type
private ArrayType.Origin

Constructor Summary

AccessConstructor and Description
public
ArrayType(Type componentType, ArrayType.Origin origin, NodeList<AnnotationExpr> annotations)

public
ArrayType(Type type, AnnotationExpr... annotations)

public
ArrayType(TokenRange tokenRange, Type componentType, ArrayType.Origin origin, NodeList<AnnotationExpr> annotations)

This constructor is used by the parser and is considered private.

Method Summary

Modifier and TypeMethod and Description
public <R, A> R
accept(final GenericVisitor<R, A>
the visitor implementation
v
,
final A
the argument passed to the visitor (of type A)
arg
)

Implements com.github.javaparser.ast.visitor.Visitable.accept.

Accept method for visitor support.
public <A> void
accept(final VoidVisitor<A>
the visitor implementation
v
,
final A
any value relevant for the visitor (of type A)
arg
)

Implements com.github.javaparser.ast.visitor.Visitable.accept.

Accept method for visitor support.
public ArrayType
public String
public ArrayType
clone()

Overrides com.github.javaparser.ast.type.ReferenceType.clone.

Creates and returns a copy of this object.
public Type
public ArrayTypeMetaModel
public ArrayType.Origin
public void
public boolean
public boolean
public boolean
public ResolvedArrayType
public ArrayType
public ArrayType
setComponentType(final Type componentType)

public ArrayType
setOrigin(final ArrayType.Origin origin)

public Optional<ArrayType>
public static Pair<Type, List<ArrayType.ArrayBracketPair>>

Returns:

a pair of the element type, and the unwrapped ArrayTypes, if any.
unwrapArrayTypes
(Type type)

Takes a type that may be an ArrayType.

public static Type
wrapInArrayTypes(Type type, List<ArrayType.ArrayBracketPair>... arrayBracketPairLists)

Takes lists of arrayBracketPairs, assumes the lists are ordered left to right and the pairs are ordered left to right, mirroring the actual code.

Inherited from com.github.javaparser.ast.type.ReferenceType:
asReferenceTypeifReferenceTypeisReferenceTypetoReferenceType

Field Detail

componentTypeback to summary
private Type componentType
originback to summary
private ArrayType.Origin origin

Constructor Detail

ArrayTypeback to summary
public ArrayType(Type componentType, ArrayType.Origin origin, NodeList<AnnotationExpr> annotations)
Annotations
@AllFieldsConstructor
ArrayTypeback to summary
public ArrayType(Type type, AnnotationExpr... annotations)
ArrayTypeback to summary
public ArrayType(TokenRange tokenRange, Type componentType, ArrayType.Origin origin, NodeList<AnnotationExpr> annotations)

This constructor is used by the parser and is considered private.

Annotations
@Generated:com.github.javaparser.generator.core.node.MainConstructorGenerator

Method Detail

acceptback to summary
public <R, A> R accept(final GenericVisitor<R, A> v, final A arg)

Implements com.github.javaparser.ast.visitor.Visitable.accept.

Doc from com.github.javaparser.ast.visitor.Visitable.accept.

Accept method for visitor support.

Parameters
<R>
the type of the return value of the visitor
<A>
the type the user argument passed to the visitor
v:GenericVisitor<R, A>

the visitor implementation

arg:A

the argument passed to the visitor (of type A)

Returns:R

the result of the visit (of type R)

Annotations
@Override
@Generated:com.github.javaparser.generator.core.node.AcceptGenerator
acceptback to summary
public <A> void accept(final VoidVisitor<A> v, final A arg)

Implements com.github.javaparser.ast.visitor.Visitable.accept.

Doc from com.github.javaparser.ast.visitor.Visitable.accept.

Accept method for visitor support.

Parameters
<A>
the type the argument passed for the visitor
v:VoidVisitor<A>

the visitor implementation

arg:A

any value relevant for the visitor (of type A)

Annotations
@Override
@Generated:com.github.javaparser.generator.core.node.AcceptGenerator
asArrayTypeback to summary
public ArrayType asArrayType()

Overrides com.github.javaparser.ast.type.Type.asArrayType.

Annotations
@Override
@Generated:com.github.javaparser.generator.core.node.TypeCastingGenerator
asStringback to summary
public String asString()

Implements abstract com.github.javaparser.ast.type.Type.asString.

Annotations
@Override
cloneback to summary
public ArrayType clone()

Overrides com.github.javaparser.ast.type.ReferenceType.clone.

Doc from java.lang.Object.clone.

Creates and returns a copy of this object. The precise meaning of "copy" may depend on the class of the object. The general intent is that, for any object x, the expression:

x.clone() != x
will be true, and that the expression:
x.clone().getClass() == x.getClass()
will be true, but these are not absolute requirements. While it is typically the case that:
x.clone().equals(x)
will be true, this is not an absolute requirement.

By convention, the returned object should be obtained by calling super.clone. If a class and all of its superclasses (except Object) obey this convention, it will be the case that x.clone().getClass() == x.getClass().

By convention, the object returned by this method should be independent of this object (which is being cloned). To achieve this independence, it may be necessary to modify one or more fields of the object returned by super.clone before returning it. Typically, this means copying any mutable objects that comprise the internal "deep structure" of the object being cloned and replacing the references to these objects with references to the copies. If a class contains only primitive fields or references to immutable objects, then it is usually the case that no fields in the object returned by super.clone need to be modified.

Returns:ArrayType

a clone of this instance.

Annotations
@Override
@Generated:com.github.javaparser.generator.core.node.CloneGenerator
getComponentTypeback to summary
public Type getComponentType()
Annotations
@Generated:com.github.javaparser.generator.core.node.PropertyGenerator
getMetaModelback to summary
public ArrayTypeMetaModel getMetaModel()

Overrides com.github.javaparser.ast.type.ReferenceType.getMetaModel.

Returns:ArrayTypeMetaModel

Doc from com.github.javaparser.ast.Node.getMetaModel.

get JavaParser specific node introspection information.

Annotations
@Override
@Generated:com.github.javaparser.generator.core.node.GetMetaModelGenerator
getOriginback to summary
public ArrayType.Origin getOrigin()
Annotations
@Generated:com.github.javaparser.generator.core.node.PropertyGenerator
ifArrayTypeback to summary
public void ifArrayType(Consumer<ArrayType> action)

Overrides com.github.javaparser.ast.type.Type.ifArrayType.

Annotations
@Generated:com.github.javaparser.generator.core.node.TypeCastingGenerator
isArrayTypeback to summary
public boolean isArrayType()

Overrides com.github.javaparser.ast.type.Type.isArrayType.

Annotations
@Override
@Generated:com.github.javaparser.generator.core.node.TypeCastingGenerator
removeback to summary
public boolean remove(Node node)

Overrides com.github.javaparser.ast.type.ReferenceType.remove.

Annotations
@Override
@Generated:com.github.javaparser.generator.core.node.RemoveMethodGenerator
replaceback to summary
public boolean replace(Node node, Node replacementNode)

Overrides com.github.javaparser.ast.type.ReferenceType.replace.

Annotations
@Override
@Generated:com.github.javaparser.generator.core.node.ReplaceMethodGenerator
resolveback to summary
public ResolvedArrayType resolve()

Implements abstract com.github.javaparser.ast.type.Type.resolve.

Implements com.github.javaparser.resolution.Resolvable.resolve.

Annotations
@Override
setAnnotationsback to summary
public ArrayType setAnnotations(NodeList<AnnotationExpr> annotations)

Overrides com.github.javaparser.ast.type.Type.setAnnotations.

Implements com.github.javaparser.ast.nodeTypes.NodeWithAnnotations.setAnnotations.

Annotations
@Override
setComponentTypeback to summary
public ArrayType setComponentType(final Type componentType)
Annotations
@Generated:com.github.javaparser.generator.core.node.PropertyGenerator
setOriginback to summary
public ArrayType setOrigin(final ArrayType.Origin origin)
Annotations
@Generated:com.github.javaparser.generator.core.node.PropertyGenerator
toArrayTypeback to summary
public Optional<ArrayType> toArrayType()

Overrides com.github.javaparser.ast.type.Type.toArrayType.

Annotations
@Override
@Generated:com.github.javaparser.generator.core.node.TypeCastingGenerator
unwrapArrayTypesback to summary
public static Pair<Type, List<ArrayType.ArrayBracketPair>> unwrapArrayTypes(Type type)

Takes a type that may be an ArrayType. Unwraps ArrayTypes until the element type is found.

Returns:Pair<Type, List<ArrayType.ArrayBracketPair>>

a pair of the element type, and the unwrapped ArrayTypes, if any.

wrapInArrayTypesback to summary
public static Type wrapInArrayTypes(Type type, List<ArrayType.ArrayBracketPair>... arrayBracketPairLists)

Takes lists of arrayBracketPairs, assumes the lists are ordered left to right and the pairs are ordered left to right, mirroring the actual code. The type gets wrapped in ArrayTypes so that the outermost ArrayType corresponds to the rightmost ArrayBracketPair.

Annotations
@SafeVarargs
com.github.javaparser.ast.type back to summary

public Class ArrayType.ArrayBracketPair

extends Object
Class Inheritance

Helper class that stores information about a pair of brackets in a non-recursive way (unlike ArrayType.)

Field Summary

Modifier and TypeField and Description
private NodeList<AnnotationExpr>
private ArrayType.Origin
private TokenRange

Constructor Summary

AccessConstructor and Description
public

Method Summary

Modifier and TypeMethod and Description
public NodeList<AnnotationExpr>
public ArrayType.Origin
public Optional<TokenRange>
public ArrayType.ArrayBracketPair
public ArrayType.ArrayBracketPair
public ArrayType.ArrayBracketPair
Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

annotationsback to summary
private NodeList<AnnotationExpr> annotations
originback to summary
private ArrayType.Origin origin
tokenRangeback to summary
private TokenRange tokenRange

Constructor Detail

ArrayBracketPairback to summary
public ArrayBracketPair(TokenRange tokenRange, ArrayType.Origin origin, NodeList<AnnotationExpr> annotations)

Method Detail

getAnnotationsback to summary
public NodeList<AnnotationExpr> getAnnotations()
getOriginback to summary
public ArrayType.Origin getOrigin()
getTokenRangeback to summary
public Optional<TokenRange> getTokenRange()
setAnnotationsback to summary
public ArrayType.ArrayBracketPair setAnnotations(NodeList<AnnotationExpr> annotations)
setOriginback to summary
public ArrayType.ArrayBracketPair setOrigin(ArrayType.Origin origin)
setTokenRangeback to summary
public ArrayType.ArrayBracketPair setTokenRange(TokenRange range)
com.github.javaparser.ast.type back to summary

public final Enum ArrayType.Origin

extends Enum<ArrayType.Origin>
Class Inheritance

The origin of a pair of array brackets [].

Field Summary

Modifier and TypeField and Description
public static final ArrayType.Origin
NAME

The [] were found on the name, like "int a[]" or "String abc()[][]"

public static final ArrayType.Origin
TYPE

The [] were found on the type, like "int[] a" or "String[][] abc()"

Constructor Summary

AccessConstructor and Description
private

Method Summary

Modifier and TypeMethod and Description
public static ArrayType.Origin
public static ArrayType.Origin[]
Inherited from java.lang.Enum:
clonecompareTodescribeConstableequalsfinalizegetDeclaringClasshashCodenameordinaltoStringvalueOf

Field Detail

NAMEback to summary
public static final ArrayType.Origin NAME

The [] were found on the name, like "int a[]" or "String abc()[][]"

TYPEback to summary
public static final ArrayType.Origin TYPE

The [] were found on the type, like "int[] a" or "String[][] abc()"

Constructor Detail

Originback to summary
private Origin()

Method Detail

valueOfback to summary
public static ArrayType.Origin valueOf(String name)
valuesback to summary
public static ArrayType.Origin[] values()