Class ArrayCreation
java.lang.Object
org.checkerframework.dataflow.expression.JavaExpression
org.checkerframework.dataflow.expression.ArrayCreation
JavaExpression for array creations. 
new String[]().- 
Field SummaryFieldsModifier and TypeFieldDescriptionprotected final List<@Nullable JavaExpression>List of dimensions expressions.protected final List<JavaExpression>List of initializers.Fields inherited from class org.checkerframework.dataflow.expression.JavaExpressiontype
- 
Constructor SummaryConstructorsConstructorDescriptionArrayCreation(TypeMirror type, List<@Nullable JavaExpression> dimensions, List<JavaExpression> initializers) Creates an ArrayCreation object.
- 
Method SummaryModifier and TypeMethodDescription<R,P> R accept(JavaExpressionVisitor<R, P> visitor, P p) Accept method of the visitor pattern.booleancontainsOfClass(Class<? extends JavaExpression> clazz) booleanReturns true if and only if this contains a JavaExpression that is syntactically equal toother.booleanReturns a list representing the dimensions of this array creation.inthashCode()booleanisDeterministic(AnnotationProvider provider) Returns true if the expression is deterministic.booleanReturns true if and only if the value this expression stands for cannot be changed (with respect to ==) by a method call.booleanReturns true if and only if the value this expression stands for cannot be changed by a method call, including changes to any of its fields.booleanReturns true if and only if the two Java expressions are syntactically identical.toString()Format this verbosely, for debugging.Methods inherited from class org.checkerframework.dataflow.expression.JavaExpressionatConstructorInvocation, atFieldAccess, atMethodBody, atMethodInvocation, atMethodInvocation, containsModifiableAliasOf, containsUnknown, fromArrayAccess, fromNode, fromNodeFieldAccess, fromTree, fromVariableTree, getFormalParameters, getImplicitReceiver, getParametersAsLocalVariables, getPseudoReceiver, getReceiver, getType, listContainsSyntacticEqualJavaExpression, listIsDeterministic, syntacticEqualsList
- 
Field Details- 
dimensionsList of dimensions expressions. A {code null} element means that there is no dimension expression for the given array level.
- 
initializersList of initializers.
 
- 
- 
Constructor Details- 
ArrayCreationpublic ArrayCreation(TypeMirror type, List<@Nullable JavaExpression> dimensions, List<JavaExpression> initializers) Creates an ArrayCreation object.- Parameters:
- type- array type
- dimensions- list of dimension expressions; a {code null} element means that there is no dimension expression for the given array level.
- initializers- list of initializer expressions
 
 
- 
- 
Method Details- 
getDimensionsReturns a list representing the dimensions of this array creation. A {code null} element means that there is no dimension expression for the given array level.- Returns:
- a list representing the dimensions of this array creation
 
- 
getInitializers
- 
containsOfClass- Specified by:
- containsOfClassin class- JavaExpression
 
- 
isDeterministicDescription copied from class:JavaExpressionReturns true if the expression is deterministic.- Specified by:
- isDeterministicin class- JavaExpression
- Parameters:
- provider- an annotation provider (a type factory)
- Returns:
- true if this expression is deterministic
 
- 
isUnassignableByOtherCodepublic boolean isUnassignableByOtherCode()Description copied from class:JavaExpressionReturns true if and only if the value this expression stands for cannot be changed (with respect to ==) by a method call. This is the case for local variables, the self reference, final field accesses whose receiver isJavaExpression.isUnassignableByOtherCode(), and operations whose operands are allJavaExpression.isUnmodifiableByOtherCode().- Specified by:
- isUnassignableByOtherCodein class- JavaExpression
- See Also:
 
- 
isUnmodifiableByOtherCodepublic boolean isUnmodifiableByOtherCode()Description copied from class:JavaExpressionReturns true if and only if the value this expression stands for cannot be changed by a method call, including changes to any of its fields.Approximately, this returns true if the expression is JavaExpression.isUnassignableByOtherCode()and its type is immutable.- Specified by:
- isUnmodifiableByOtherCodein class- JavaExpression
- See Also:
 
- 
hashCodepublic int hashCode()
- 
equals
- 
syntacticEqualsDescription copied from class:JavaExpressionReturns true if and only if the two Java expressions are syntactically identical.This exists for use by JavaExpression.containsSyntacticEqualJavaExpression(org.checkerframework.dataflow.expression.JavaExpression).- Specified by:
- syntacticEqualsin class- JavaExpression
- Parameters:
- je- the other Java expression to compare to this one
- Returns:
- true if and only if the two Java expressions are syntactically identical
 
- 
containsSyntacticEqualJavaExpressionDescription copied from class:JavaExpressionReturns true if and only if this contains a JavaExpression that is syntactically equal toother.- Specified by:
- containsSyntacticEqualJavaExpressionin class- JavaExpression
- Parameters:
- other- the JavaExpression to search for
- Returns:
- true if and only if this contains a JavaExpression that is syntactically equal to
     other
 
- 
toString
- 
toStringDebugDescription copied from class:JavaExpressionFormat this verbosely, for debugging.- Overrides:
- toStringDebugin class- JavaExpression
- Returns:
- a verbose string representation of this
 
- 
acceptDescription copied from class:JavaExpressionAccept method of the visitor pattern.- Specified by:
- acceptin class- JavaExpression
- Type Parameters:
- R- result type of the operation
- P- parameter type
- Parameters:
- visitor- the visitor to be applied to this JavaExpression
- p- the parameter for this operation
- Returns:
- the result of visiting this
 
 
-