Package com.github.javaparser.ast.expr
Class LongLiteralExpr
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.LongLiteralExpr
- All Implemented Interfaces:
NodeWithRange<Node>
,NodeWithTokenRange<Node>
,Observable
,Visitable
,HasParentNode<Node>
,Cloneable
All ways to specify a long literal.
8934l
0x01L
022l
0B10101010L
99999999L
- 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 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, LINE_SEPARATOR_KEY, NODE_BY_BEGIN_POSITION, PHANTOM_KEY, prettyPrinterNoCommentsConfiguration, PRINTER_KEY, SYMBOL_RESOLVER_KEY
-
Constructor Summary
ConstructorDescriptionLongLiteralExpr(long value)
Deprecated.LongLiteralExpr(TokenRange tokenRange, String value)
This constructor is used by the parser and is considered private.LongLiteralExpr(String value)
-
Method Summary
Modifier and TypeMethodDescription<R, A> R
accept(GenericVisitor<R,A> v, A arg)
Accept method for visitor support.<A> void
accept(VoidVisitor<A> v, A arg)
Accept method for visitor support.long
asLong()
Deprecated.This function has issues with corner cases, such as 9223372036854775808L, so please useasNumber()
.asNumber()
This function returns a representation of the literal value as a number.clone()
void
ifLongLiteralExpr(Consumer<LongLiteralExpr> action)
boolean
setLong(long value)
Deprecated.This function is deprecated in favor ofLiteralStringValueExpr.setValue(String)
.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
appearsInAssignmentContext, appearsInInvocationContext, asAnnotationExpr, asArrayAccessExpr, asArrayCreationExpr, asArrayInitializerExpr, asAssignExpr, asBinaryExpr, asBooleanLiteralExpr, asCastExpr, asCharLiteralExpr, asClassExpr, asConditionalExpr, asDoubleLiteralExpr, asEnclosedExpr, asFieldAccessExpr, asInstanceOfExpr, asIntegerLiteralExpr, asLambdaExpr, asMarkerAnnotationExpr, asMethodCallExpr, asMethodReferenceExpr, asNameExpr, asNormalAnnotationExpr, asNullLiteralExpr, asObjectCreationExpr, asPatternExpr, asSingleMemberAnnotationExpr, asStringLiteralExpr, asSuperExpr, asSwitchExpr, asTextBlockLiteralExpr, asThisExpr, asTypeExpr, asUnaryExpr, asVariableDeclarationExpr, calculateResolvedType, elidesTypeArguments, ifAnnotationExpr, ifArrayAccessExpr, ifArrayCreationExpr, ifArrayInitializerExpr, ifAssignExpr, ifBinaryExpr, ifBooleanLiteralExpr, ifCastExpr, ifCharLiteralExpr, ifClassExpr, ifConditionalExpr, ifDoubleLiteralExpr, ifEnclosedExpr, ifFieldAccessExpr, ifInstanceOfExpr, ifIntegerLiteralExpr, ifLambdaExpr, ifMarkerAnnotationExpr, ifMethodCallExpr, ifMethodReferenceExpr, ifNameExpr, ifNormalAnnotationExpr, ifNullLiteralExpr, ifObjectCreationExpr, ifPatternExpr, ifSingleMemberAnnotationExpr, ifStringLiteralExpr, ifSuperExpr, ifSwitchExpr, ifTextBlockLiteralExpr, ifThisExpr, ifTypeExpr, ifUnaryExpr, ifVariableDeclarationExpr, isAnnotationExpr, isArrayAccessExpr, isArrayCreationExpr, isArrayInitializerExpr, isAssignExpr, isAssignmentContext, isBinaryExpr, isBooleanLiteralExpr, isCastExpr, isCharLiteralExpr, isClassExpr, isConditionalExpr, isDoubleLiteralExpr, isEnclosedExpr, isFieldAccessExpr, isInstanceOfExpr, isIntegerLiteralExpr, isInvocationContext, isLambdaExpr, isMarkerAnnotationExpr, isMethodCallExpr, isMethodReferenceExpr, isNameExpr, isNormalAnnotationExpr, isNullLiteralExpr, isObjectCreationExpr, isPatternExpr, isPolyExpression, isQualified, isSingleMemberAnnotationExpr, isStandaloneExpression, isStringLiteralExpr, isSuperExpr, isSwitchExpr, isTextBlockLiteralExpr, isThisExpr, isTypeExpr, isUnaryExpr, isVariableDeclarationExpr, toAnnotationExpr, toArrayAccessExpr, toArrayCreationExpr, toArrayInitializerExpr, toAssignExpr, toBinaryExpr, toBooleanLiteralExpr, toCastExpr, toCharLiteralExpr, toClassExpr, toConditionalExpr, toDoubleLiteralExpr, toEnclosedExpr, toFieldAccessExpr, toInstanceOfExpr, toIntegerLiteralExpr, toLambdaExpr, toMarkerAnnotationExpr, toMethodCallExpr, toMethodReferenceExpr, toNameExpr, toNormalAnnotationExpr, toNullLiteralExpr, toObjectCreationExpr, toPatternExpr, toSingleMemberAnnotationExpr, toStringLiteralExpr, toSuperExpr, toSwitchExpr, toTextBlockLiteralExpr, toThisExpr, toTypeExpr, toUnaryExpr, toVariableDeclarationExpr
Methods inherited from class com.github.javaparser.ast.Node
addOrphanComment, containsData, createDefaultPrinter, createDefaultPrinter, customInitialization, equals, findAll, findAll, findAll, findCompilationUnit, findFirst, findFirst, findFirst, findRootNode, getAllContainedComments, getChildNodes, getChildNodesByType, getComment, getData, getDataKeys, getDefaultPrinterConfiguration, getLineEndingStyle, getLineEndingStyleOrDefault, getNodesByType, getOrphanComments, getParentNode, getParentNodeForChildren, getParsed, getPrinter, getPrinter, getRange, getSymbolResolver, getTokenRange, hashCode, hasScope, isAncestorOf, isPhantom, isRegistered, notifyPropertyChange, register, register, registerForSubtree, remove, remove, removeComment, removeData, removeForced, removeOrphanComment, replace, replace, setAsParentNodeOf, setAsParentNodeOf, setBlockComment, setComment, setData, setLineComment, setParentNode, setParsed, setRange, setTokenRange, 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, findAncestor, hasParentNode, isDescendantOf
Methods inherited from interface com.github.javaparser.ast.nodeTypes.NodeWithRange
containsWithin, containsWithinRange, getBegin, getEnd, hasRange
-
Field Details
-
MAX_63_BIT_UNSIGNED_VALUE_AS_STRING
- See Also:
- Constant Field Values
-
MAX_63_BIT_UNSIGNED_VALUE_AS_BIG_INTEGER
-
-
Constructor Details
-
LongLiteralExpr
public LongLiteralExpr() -
LongLiteralExpr
-
LongLiteralExpr
This constructor is used by the parser and is considered private. -
LongLiteralExpr
Deprecated.This function is deprecated in favor ofLongLiteralExpr(String)
. Please refer to theasNumber()
function for valid formats and how to construct literals holding negative values.
-
-
Method Details
-
accept
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
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)
-
asLong
Deprecated.This function has issues with corner cases, such as 9223372036854775808L, so please useasNumber()
. It will be made private or merged withasNumber()
in future releases- Returns:
- the literal value as an long while respecting different number representations
-
asNumber
This function returns a representation of the literal value as a number. This will return a long, except for the case when the literal has the value9223372036854775808L
. This special literal is only allowed in the expression-9223372036854775808L
which representsLong.MIN_VALUE
). However 9223372036854775808 (2^63) is out of range of long, which is -(2^63) to (2^63)-1 and thus a BigInteger 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
-1L
is represented by a unary * expression with a minus operator and the literal1L
. It is however possible to represent negative * numbers in a literal directly, i.e. by using the binary or hexadecimal representation. For example0xffff_ffff_ffff_ffffL
represents the value-1L
.- Returns:
- the literal value as a number while respecting different number representations
-
setLong
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
- Overrides:
clone
in classLiteralStringValueExpr
-
getMetaModel
- Overrides:
getMetaModel
in classLiteralStringValueExpr
- Returns:
- get JavaParser specific node introspection information.
-
isLongLiteralExpr
public boolean isLongLiteralExpr()- Overrides:
isLongLiteralExpr
in classExpression
-
asLongLiteralExpr
- Overrides:
asLongLiteralExpr
in classExpression
-
ifLongLiteralExpr
- Overrides:
ifLongLiteralExpr
in classExpression
-
toLongLiteralExpr
- Overrides:
toLongLiteralExpr
in classExpression
-
LongLiteralExpr(String)
.