Package com.github.javaparser.ast.expr
Class IntegerLiteralExpr
- java.lang.Object
-
- com.github.javaparser.ast.Node
-
- com.github.javaparser.ast.expr.Expression
-
- com.github.javaparser.ast.expr.LiteralExpr
-
- com.github.javaparser.ast.expr.LiteralStringValueExpr
-
- com.github.javaparser.ast.expr.IntegerLiteralExpr
-
- All Implemented Interfaces:
NodeWithRange<Node>
,NodeWithTokenRange<Node>
,Observable
,Visitable
,HasParentNode<Node>
,Cloneable
public class IntegerLiteralExpr extends LiteralStringValueExpr
All ways to specify an int literal.8934
0x01
022
0B10101010
- Author:
- Julio Vilmar Gesser
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class com.github.javaparser.ast.Node
Node.BreadthFirstIterator, Node.DirectChildrenIterator, Node.ObserverRegistrationMode, Node.ParentsVisitor, Node.Parsedness, Node.PostOrderIterator, Node.PreOrderIterator, Node.TreeTraversal
-
-
Field Summary
Fields Modifier and Type Field Description static long
MAX_31_BIT_UNSIGNED_VALUE_AS_LONG
static String
MAX_31_BIT_UNSIGNED_VALUE_AS_STRING
-
Fields inherited from class com.github.javaparser.ast.expr.LiteralStringValueExpr
value
-
Fields inherited from class com.github.javaparser.ast.Node
ABSOLUTE_BEGIN_LINE, ABSOLUTE_END_LINE, NODE_BY_BEGIN_POSITION, prettyPrinterNoCommentsConfiguration, SYMBOL_RESOLVER_KEY
-
-
Constructor Summary
Constructors Constructor Description IntegerLiteralExpr()
IntegerLiteralExpr(int value)
Deprecated.This function is deprecated in favor ofIntegerLiteralExpr(String)
.IntegerLiteralExpr(TokenRange tokenRange, String value)
This constructor is used by the parser and is considered private.IntegerLiteralExpr(String value)
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description <R,A>
Raccept(GenericVisitor<R,A> v, A arg)
Accept method for visitor support.<A> void
accept(VoidVisitor<A> v, A arg)
Accept method for visitor support.int
asInt()
Deprecated.This function has issues with corner cases, such as 2147483648, so please useasNumber()
.IntegerLiteralExpr
asIntegerLiteralExpr()
Number
asNumber()
This function returns a representation of the literal value as a number.IntegerLiteralExpr
clone()
IntegerLiteralExprMetaModel
getMetaModel()
void
ifIntegerLiteralExpr(Consumer<IntegerLiteralExpr> action)
boolean
isIntegerLiteralExpr()
boolean
remove(Node node)
boolean
replace(Node node, Node replacementNode)
IntegerLiteralExpr
setInt(int value)
Deprecated.This function is deprecated in favor ofLiteralStringValueExpr.setValue(String)
.Optional<IntegerLiteralExpr>
toIntegerLiteralExpr()
-
Methods inherited from class com.github.javaparser.ast.expr.LiteralStringValueExpr
asLiteralStringValueExpr, getValue, ifLiteralStringValueExpr, isLiteralStringValueExpr, setValue, toLiteralStringValueExpr
-
Methods inherited from class com.github.javaparser.ast.expr.LiteralExpr
asLiteralExpr, ifLiteralExpr, isLiteralExpr, toLiteralExpr
-
Methods inherited from class com.github.javaparser.ast.expr.Expression
asAnnotationExpr, asArrayAccessExpr, asArrayCreationExpr, asArrayInitializerExpr, asAssignExpr, asBinaryExpr, asBooleanLiteralExpr, asCastExpr, asCharLiteralExpr, asClassExpr, asConditionalExpr, asDoubleLiteralExpr, asEnclosedExpr, asFieldAccessExpr, asInstanceOfExpr, asLambdaExpr, asLongLiteralExpr, asMarkerAnnotationExpr, asMethodCallExpr, asMethodReferenceExpr, asNameExpr, asNormalAnnotationExpr, asNullLiteralExpr, asObjectCreationExpr, asSingleMemberAnnotationExpr, asStringLiteralExpr, asSuperExpr, asSwitchExpr, asTextBlockLiteralExpr, asThisExpr, asTypeExpr, asUnaryExpr, asVariableDeclarationExpr, calculateResolvedType, ifAnnotationExpr, ifArrayAccessExpr, ifArrayCreationExpr, ifArrayInitializerExpr, ifAssignExpr, ifBinaryExpr, ifBooleanLiteralExpr, ifCastExpr, ifCharLiteralExpr, ifClassExpr, ifConditionalExpr, ifDoubleLiteralExpr, ifEnclosedExpr, ifFieldAccessExpr, ifInstanceOfExpr, ifLambdaExpr, ifLongLiteralExpr, ifMarkerAnnotationExpr, ifMethodCallExpr, ifMethodReferenceExpr, ifNameExpr, ifNormalAnnotationExpr, ifNullLiteralExpr, ifObjectCreationExpr, ifSingleMemberAnnotationExpr, ifStringLiteralExpr, ifSuperExpr, ifSwitchExpr, ifTextBlockLiteralExpr, ifThisExpr, ifTypeExpr, ifUnaryExpr, ifVariableDeclarationExpr, isAnnotationExpr, isArrayAccessExpr, isArrayCreationExpr, isArrayInitializerExpr, isAssignExpr, isBinaryExpr, isBooleanLiteralExpr, isCastExpr, isCharLiteralExpr, isClassExpr, isConditionalExpr, isDoubleLiteralExpr, isEnclosedExpr, isFieldAccessExpr, isInstanceOfExpr, isLambdaExpr, isLongLiteralExpr, isMarkerAnnotationExpr, isMethodCallExpr, isMethodReferenceExpr, isNameExpr, isNormalAnnotationExpr, isNullLiteralExpr, isObjectCreationExpr, isSingleMemberAnnotationExpr, isStringLiteralExpr, isSuperExpr, isSwitchExpr, isTextBlockLiteralExpr, isThisExpr, isTypeExpr, isUnaryExpr, isVariableDeclarationExpr, toAnnotationExpr, toArrayAccessExpr, toArrayCreationExpr, toArrayInitializerExpr, toAssignExpr, toBinaryExpr, toBooleanLiteralExpr, toCastExpr, toCharLiteralExpr, toClassExpr, toConditionalExpr, toDoubleLiteralExpr, toEnclosedExpr, toFieldAccessExpr, toInstanceOfExpr, toLambdaExpr, toLongLiteralExpr, toMarkerAnnotationExpr, toMethodCallExpr, toMethodReferenceExpr, toNameExpr, toNormalAnnotationExpr, toNullLiteralExpr, toObjectCreationExpr, toSingleMemberAnnotationExpr, toStringLiteralExpr, toSuperExpr, toSwitchExpr, toTextBlockLiteralExpr, toThisExpr, toTypeExpr, toUnaryExpr, toVariableDeclarationExpr
-
Methods inherited from class com.github.javaparser.ast.Node
addOrphanComment, containsData, customInitialization, equals, findAll, findAll, findCompilationUnit, findFirst, findFirst, findFirst, findRootNode, getAllContainedComments, getChildNodes, getChildNodesByType, getComment, getData, getDataKeys, getNodesByType, getOrphanComments, getParentNode, getParentNodeForChildren, getParsed, getRange, getSymbolResolver, getTokenRange, getToStringPrettyPrinterConfiguration, hashCode, isAncestorOf, isRegistered, notifyPropertyChange, register, register, registerForSubtree, remove, removeComment, removeData, removeForced, removeOrphanComment, replace, setAsParentNodeOf, setAsParentNodeOf, setBlockComment, setComment, setData, setLineComment, setParentNode, setParsed, setRange, setTokenRange, setToStringPrettyPrinterConfiguration, stream, stream, toString, toString, tryAddImportToParentCompilationUnit, unregister, walk, walk, walk
-
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface com.github.javaparser.HasParentNode
findAncestor, findAncestor, isDescendantOf
-
Methods inherited from interface com.github.javaparser.ast.nodeTypes.NodeWithRange
containsWithin, containsWithinRange, getBegin, getEnd
-
-
-
-
Field Detail
-
MAX_31_BIT_UNSIGNED_VALUE_AS_STRING
public static final String MAX_31_BIT_UNSIGNED_VALUE_AS_STRING
- See Also:
- Constant Field Values
-
MAX_31_BIT_UNSIGNED_VALUE_AS_LONG
public static final long MAX_31_BIT_UNSIGNED_VALUE_AS_LONG
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
IntegerLiteralExpr
public IntegerLiteralExpr()
-
IntegerLiteralExpr
public IntegerLiteralExpr(String value)
-
IntegerLiteralExpr
public IntegerLiteralExpr(TokenRange tokenRange, String value)
This constructor is used by the parser and is considered private.
-
IntegerLiteralExpr
@Deprecated public IntegerLiteralExpr(int value)
Deprecated.This function is deprecated in favor ofIntegerLiteralExpr(String)
. Please refer to theasNumber()
function for valid formats and how to construct literals holding negative values.
-
-
Method Detail
-
accept
public <R,A> R accept(GenericVisitor<R,A> v, A arg)
Description copied from interface:Visitable
Accept method for visitor support.- Type Parameters:
R
- the type of the return value of the visitorA
- the type the user argument passed to the visitor- Parameters:
v
- the visitor implementationarg
- the argument passed to the visitor (of type A)- Returns:
- the result of the visit (of type R)
-
accept
public <A> void accept(VoidVisitor<A> v, A arg)
Description copied from interface:Visitable
Accept method for visitor support.- Type Parameters:
A
- the type the argument passed for the visitor- Parameters:
v
- the visitor implementationarg
- any value relevant for the visitor (of type A)
-
remove
public boolean remove(Node node)
- Overrides:
remove
in classLiteralStringValueExpr
-
asInt
@Deprecated public int asInt()
Deprecated.This function has issues with corner cases, such as 2147483648, so please useasNumber()
. It will be made private or merged withasNumber()
in future releases- Returns:
- the literal value as an integer while respecting different number representations
-
asNumber
public Number asNumber()
This function returns a representation of the literal value as a number. This will return an integer, except for the case when the literal has the value2147483648
. This special literal is only allowed in the expression-2147483648
which representsInteger.MIN_VALUE
). However 2147483648 (2^31) is out of range of int, which is -(2^31) to (2^31)-1 and thus a long must be returned.Note, that this function will NOT return a negative number if the literal was specified in decimal, since according to the language specification (chapter 3.10.1) an expression such as
-1
is represented by a unary expression with a minus operator and the literal1
. It is however possible to represent negative numbers in a literal directly, i.e. by using the binary or hexadecimal representation. For example0xffff_ffff
represents the value-1
.- Returns:
- the literal value as a number while respecting different number representations
-
setInt
@Deprecated public IntegerLiteralExpr setInt(int value)
Deprecated.This function is deprecated in favor ofLiteralStringValueExpr.setValue(String)
. Please refer to theasNumber()
function for valid formats and how to construct literals holding negative values.
-
clone
public IntegerLiteralExpr clone()
- Overrides:
clone
in classLiteralStringValueExpr
-
getMetaModel
public IntegerLiteralExprMetaModel getMetaModel()
- Overrides:
getMetaModel
in classLiteralStringValueExpr
- Returns:
- get JavaParser specific node introspection information.
-
replace
public boolean replace(Node node, Node replacementNode)
- Overrides:
replace
in classLiteralStringValueExpr
-
isIntegerLiteralExpr
public boolean isIntegerLiteralExpr()
- Overrides:
isIntegerLiteralExpr
in classExpression
-
asIntegerLiteralExpr
public IntegerLiteralExpr asIntegerLiteralExpr()
- Overrides:
asIntegerLiteralExpr
in classExpression
-
ifIntegerLiteralExpr
public void ifIntegerLiteralExpr(Consumer<IntegerLiteralExpr> action)
- Overrides:
ifIntegerLiteralExpr
in classExpression
-
toIntegerLiteralExpr
public Optional<IntegerLiteralExpr> toIntegerLiteralExpr()
- Overrides:
toIntegerLiteralExpr
in classExpression
-
-