public class NumericLiteral extends Literal implements Cloneable
| Modifier and Type | Field and Description |
|---|---|
static int |
BINARY |
static int |
DECIMAL |
protected String |
digits
The trimmed digits.
|
static int |
HEXADECIMAL |
protected int |
kind
The literal kind tells which kind of literal it is;
it's either a DECIMAL, HEXADECIMAL, OCTAL or BINARY literal.
|
static int |
OCTAL |
protected boolean |
type_computed |
protected TypeDecl |
type_value |
constant_computed, constant_value, LITERALend, LITERALstart, tokenString_LITERALfalse_label_computed, false_label_value, true_label_computed, true_label_valuechildren, generatedWithCacheCycle, generatedWithCircularEnabled, generatedWithComponentCheck, in$Circle, is$Final, numChildren, parent, PRIMITIVE_PACKAGE_NAME, state| Constructor and Description |
|---|
NumericLiteral() |
NumericLiteral(String p0) |
NumericLiteral(Symbol p0) |
| Modifier and Type | Method and Description |
|---|---|
NumericLiteral |
clone() |
NumericLiteral |
copy() |
void |
flushCache() |
void |
flushCollectionCache() |
NumericLiteral |
fullCopy()
Create a deep copy of the AST subtree at this node.
|
String |
getDigits()
Get the trimmed digits of this literal, excluding
underscore, prefix and suffix.
|
int |
getKind()
The literal kind tells which kind of literal it is;
it's either a DECIMAL, HEXADECIMAL, OCTAL or BINARY literal.
|
String |
getLITERAL()
Retrieves the value for the lexeme LITERAL.
|
int |
getRadix()
Get the radix of this literal.
|
void |
init$Children()
Initializes the child array to the correct size.
|
boolean |
isBinary() |
boolean |
isDecimal() |
boolean |
isHex() |
boolean |
isNegative() |
boolean |
isOctal() |
boolean |
mayHaveRewrite() |
boolean |
needsRewrite()
Utility attribute for literal rewriting.
|
protected int |
numChildren() |
Literal |
parse()
Parse a literal.
|
long |
parseLong()
This is a refactored version of Literal.parseLong which supports
binary literals.
|
long |
parseLongBinary()
Parse a binary long literal.
|
long |
parseLongDecimal()
Parse an octal long literal.
|
long |
parseLongHexadecimal()
Parse a hexadecimal long literal.
|
long |
parseLongOctal()
Parse an octal long literal.
|
ASTNode |
rewriteTo() |
void |
setDigits(String digits)
Sets the trimmed digits of this literal.
|
void |
setKind(int kind)
Sets the literal kind.
|
void |
setLITERAL(String value)
Replaces the lexeme LITERAL.
|
void |
setLITERAL(Symbol symbol)
JastAdd-internal setter for lexeme LITERAL using the Beaver parser.
|
TypeDecl |
type()
The type of a NumericLiteral is undefined.
|
asEscape, buildBooleanLiteral, buildDoubleLiteral, buildFloatLiteral, buildIntegerLiteral, buildLongLiteral, buildStringLiteral, constant, dumpString, escape, isConstant, toStringaddDependencyIfNeeded, applicableAndAccessible, assignConvertedType, canBeFalse, canBeTrue, chooseConstructor, collectTypesToHierarchy, condition_false_label, condition_true_label, emitBooleanCondition, emitEvalBranch, emitStore, enclosingBodyDecl, enclosingStmt, eval, false_label, hasNextAccess, hasPackage, hasParentDot, hasQualifiedPackage, hostPackage, hostType, inExtendsOrImplements, inStaticContext, isArrayAccess, isClassAccess, isDAafter, isDAafterFalse, isDAafterTrue, isDAbefore, isDest, isDUafter, isDUafterFalse, isDUafterTrue, isDUbefore, isEnumConstant, isFalse, isFieldAccess, isIncOrDec, isLeftChildOfDot, isMethodAccess, isPackageAccess, isPositive, isRightChildOfDot, isSource, isSuperAccess, isSuperConstructorAccess, isThisAccess, isTrue, isTypeAccess, isUnknown, isVariable, isVariable, keepAccessibleFields, keepAccessibleTypes, lookupMethod, lookupType, lookupType, lookupVariable, mayAccess, methodHost, modifiedInScope, mostSpecific, mostSpecificConstructor, nameType, nextAccess, packageName, parentDot, qualifiedLookupType, qualifiedLookupVariable, qualifiesAccess, refined_BooleanExpressions_Expr_emitEvalBranch, representableIn, staticContextQualifier, throwTypes, true_label, typeBoolean, typeByte, typeChar, typeDouble, typeFloat, typeInt, typeLong, typeName, typeNull, typeShort, typeString, typeVoid, unknownType, varDeclaccessControl, addAttributes, addChild, addsIndentationLevel, asImmediate, asLocal, asLocal, asRValue, beginExceptionRange, branchTarget, checkDUeverywhere, checkEnum, checkUncheckedConversion, checkWarnings, clearLocations, cloneSubtree, collectBranches, collectEnclosingVariables, collectErrors, collectExceptions, collectFinally, collectTypesToSignatures, compilationUnit, Define_Annotation_lookupAnnotation, Define_ArrayList_exceptionRanges, Define_ASTNode_enclosingBlock, Define_BodyDecl_enclosingBodyDecl, Define_boolean_enclosedByExceptionHandler, Define_boolean_handlesException, Define_boolean_hasPackage, Define_boolean_inExplicitConstructorInvocation, Define_boolean_inExtendsOrImplements, Define_boolean_inhModifiedInScope, Define_boolean_insideLoop, Define_boolean_insideSwitch, Define_boolean_inStaticContext, Define_boolean_isAnonymous, Define_boolean_isAnonymousDecl, Define_boolean_isCatchParam, Define_boolean_isConstructorParameter, Define_boolean_isDAbefore, Define_boolean_isDest, Define_boolean_isDUbefore, Define_boolean_isExceptionHandlerParameter, Define_boolean_isExplicitGenericConstructorAccess, Define_boolean_isIncOrDec, Define_boolean_isLocalClass, Define_boolean_isMemberType, Define_boolean_isMethodParameter, Define_boolean_isNestedType, Define_boolean_isSource, Define_boolean_mayBeAbstract, Define_boolean_mayBeFinal, Define_boolean_mayBeNative, Define_boolean_mayBePrivate, Define_boolean_mayBeProtected, Define_boolean_mayBePublic, Define_boolean_mayBeStatic, Define_boolean_mayBeStrictfp, Define_boolean_mayBeSynchronized, Define_boolean_mayBeTransient, Define_boolean_mayBeVolatile, Define_boolean_mayUseAnnotationTarget, Define_boolean_reachable, Define_boolean_reachableCatchClause, Define_boolean_reportUnreachable, Define_boolean_resourcePreviouslyDeclared, Define_boolean_variableArityValid, Define_boolean_withinDeprecatedAnnotation, Define_boolean_withinSuppressWarnings, Define_Case_bind, Define_CatchClause_catchClause, Define_ClassInstanceExpr_getClassInstanceExpr, Define_Collection_lookupConstructor, Define_Collection_lookupMethod, Define_Collection_lookupSuperConstructor, Define_Collection_TypeDecl__caughtExceptions, Define_CompilationUnit_compilationUnit, Define_ConstructorDecl_constructorDecl, Define_ConstructorDecl_unknownConstructor, Define_ElementValue_lookupElementTypeValue, Define_Expr_nestedScope, Define_GLBType_lookupGLBType, Define_int_localNum, Define_LabeledStmt_lookupLabel, Define_LUBType_lookupLUBType, Define_MethodDecl_unknownMethod, Define_NameType_nameType, Define_SimpleSet_allImportedTypes, Define_SimpleSet_lookupType, Define_SimpleSet_lookupVariable, Define_soot_jimple_Stmt_condition_false_label, Define_soot_jimple_Stmt_condition_true_label, Define_String_hostPackage, Define_String_methodHost, Define_String_packageName, Define_String_typeDeclIndent, Define_TypeDecl_assignConvertedType, Define_TypeDecl_componentType, Define_TypeDecl_declType, Define_TypeDecl_enclosingAnnotationDecl, Define_TypeDecl_enclosingInstance, Define_TypeDecl_enclosingType, Define_TypeDecl_expectedType, Define_TypeDecl_genericDecl, Define_TypeDecl_hostType, Define_TypeDecl_lookupType, Define_TypeDecl_lookupWildcardExtends, Define_TypeDecl_lookupWildcardSuper, Define_TypeDecl_returnType, Define_TypeDecl_superType, Define_TypeDecl_switchType, Define_TypeDecl_typeBoolean, Define_TypeDecl_typeByte, Define_TypeDecl_typeChar, Define_TypeDecl_typeCloneable, Define_TypeDecl_typeDouble, Define_TypeDecl_typeError, Define_TypeDecl_typeException, Define_TypeDecl_typeFloat, Define_TypeDecl_typeInt, Define_TypeDecl_typeLong, Define_TypeDecl_typeNull, Define_TypeDecl_typeNullPointerException, Define_TypeDecl_typeObject, Define_TypeDecl_typeRuntimeException, Define_TypeDecl_typeSerializable, Define_TypeDecl_typeShort, Define_TypeDecl_typeString, Define_TypeDecl_typeThrowable, Define_TypeDecl_typeVoid, Define_TypeDecl_typeWildcard, Define_TypeDecl_unknownType, Define_Variable_unknownField, Define_VariableScope_outerScope, definesLabel, definiteAssignment, dumpTree, dumpTree, dumpTreeNoRewrite, dumpTreeNoRewrite, duringAnnotations, duringAnonymousClasses, duringBoundNames, duringDU, duringEnums, duringGenericTypeVariables, duringImplicitConstructor, duringLiterals, duringNameResolution, duringSyntacticClassification, duringVariableDeclarationTransformation, emitConstant, end, endExceptionRange, error, errorPrefix, exceptionHandling, extractIndent, extractSingleType, flushCaches, getChild, getChildNoTransform, getIndexOfChild, getNumChild, getNumChildNoTransform, getParent, in$Circle, in$Circle, indent, insertChild, is$Final, is$Final, isDescendantTo, isStringAdd, iterator, jimplify1phase1, jimplify1phase2, jimplify2, jimplify2, lineNumber, location, nameCheck, newLabel, options, putSimpleSetElement, reachedException, removeChild, removeInstanceMethods, removeInstanceVariables, replace, setChild, setEnd, setLocation, setParent, setStart, sourceFile, start, state, toString, transformation, transformEnumConstructors, typeCheck, unassignedEverywhere, usesTypeVariable, varChildIndex, varChildIndex, warning, warningPrefix, withgetColumn, getEnd, getId, getLine, getStart, makePositionequals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitforEach, spliteratorpublic static final int DECIMAL
public static final int HEXADECIMAL
public static final int OCTAL
public static final int BINARY
protected String digits
protected int kind
protected boolean type_computed
protected TypeDecl type_value
public NumericLiteral()
public NumericLiteral(String p0)
public NumericLiteral(Symbol p0)
public void flushCache()
flushCache in class Literalpublic void flushCollectionCache()
flushCollectionCache in class Literalpublic NumericLiteral clone() throws CloneNotSupportedException
clone in class LiteralCloneNotSupportedExceptionpublic NumericLiteral copy()
public NumericLiteral fullCopy()
public void setDigits(String digits)
public void setKind(int kind)
public Literal parse()
public void init$Children()
init$Children in class Literalprotected int numChildren()
numChildren in class Literalpublic boolean mayHaveRewrite()
mayHaveRewrite in class Literalpublic void setLITERAL(String value)
setLITERAL in class Literalvalue - The new value for the lexeme LITERAL.public void setLITERAL(Symbol symbol)
setLITERAL in class Literalpublic String getLITERAL()
getLITERAL in class Literalpublic long parseLong()
public long parseLongHexadecimal()
NumberFormatException - if the literal is too large.public long parseLongOctal()
NumberFormatException - if the literal is too large.public long parseLongBinary()
NumberFormatException - if the literal is too large.public long parseLongDecimal()
NumberFormatException - if the literal is too large.public boolean needsRewrite()
public boolean isNegative()
public String getDigits()
public int getKind()
public int getRadix()
public boolean isDecimal()
public boolean isHex()
public boolean isOctal()
public boolean isBinary()
public TypeDecl type()
Copyright © 2020 Soot OSS. All rights reserved.