Class NumberType
java.lang.Object
com.google.javascript.rhino.jstype.JSType
com.google.javascript.rhino.jstype.NumberType
- All Implemented Interfaces:
Serializable
Number type.
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class com.google.javascript.rhino.jstype.JSType
JSType.TypePair -
Field Summary
Fields inherited from class com.google.javascript.rhino.jstype.JSType
EMPTY_TYPE_COMPONENT, ENUMDECL, NOT_A_CLASS, NOT_A_TYPE, NOT_ENUMDECL, templateTypeMap, UNKNOWN_NAME -
Method Summary
Modifier and TypeMethodDescriptionTurn a scalar type to the corresponding object type.Returns a user meaningful label for the JSType instance.Computes the set of possible outcomes of theToBooleanpredicate for this type.booleanbooleanTests whether this type is nullable.booleanbooleanThis predicate is used to test whether a given type can appear in a numeric context, such as an operand of a multiply operator.booleanThis predicate is used to test whether a given type can appear in anObjectcontext, such as the expression in a with statement.booleanThis predicate is used to test whether a given type can appear in aStringcontext, such as an operand of a string concat (+) operator.testForEquality(JSType that) Comparesthisandthat.<T> TVisit this type with the given visitor.Methods inherited from class com.google.javascript.rhino.jstype.JSType
autobox, canBeCalled, canCastTo, canTestForEqualityWith, canTestForShallowEqualityWith, clearResolved, collapseUnion, dereference, differsFrom, equals, findPropertyType, forceResolve, getGreatestSubtype, getJSDocInfo, getLeastSupertype, getRestrictedTypeGivenToBooleanOutcome, getTemplateTypeMap, getTypesUnderEquality, getTypesUnderInequality, getTypesUnderShallowEquality, getTypesUnderShallowInequality, hasAnyTemplateTypes, hashCode, hasProperty, isAllType, isArrayType, isBooleanObjectType, isBooleanValueType, isCheckedUnknownType, isConstructor, isDateType, isDict, isEmptyType, isEnumElementType, isEnumType, isEquivalent, isEquivalentTo, isFunctionPrototypeType, isFunctionType, isGlobalThisType, isInstanceType, isInterface, isInvariant, isNominalConstructor, isNominalType, isNoObjectType, isNoResolvedType, isNoType, isNullType, isNumber, isNumberObjectType, isObject, isOrdinaryFunction, isRecordType, isRegexpType, isResolved, isString, isStringObjectType, isStringValueType, isStruct, isSubtype, isTemplateType, isTemplatizedType, isUnionType, isUnknownType, isVoidType, matchConstraint, matchesInt32Context, matchesUint32Context, resolve, restrictByNotNullOrUndefined, setValidator, toAnnotationString, toDebugHashCodeString, toMaybeEnumElementType, toMaybeEnumType, toMaybeFunctionType, toMaybeFunctionType, toMaybeTemplateType, toMaybeTemplateType, toMaybeTemplatizedType, toMaybeTemplatizedType, toMaybeUnionType, toObjectType, toString, unboxesTo
-
Method Details
-
isNullable
public boolean isNullable()Description copied from class:JSTypeTests whether this type is nullable.- Overrides:
isNullablein classJSType
-
testForEquality
Description copied from class:JSTypeComparesthisandthat.- Overrides:
testForEqualityin classJSType- Returns:
TernaryValue.TRUEif the comparison of values ofthistype andthatalways succeed (such asundefinedcompared tonull)TernaryValue.FALSEif the comparison of values ofthistype andthatalways fails (such asundefinedcompared tonumber)TernaryValue.UNKNOWNif the comparison can succeed or fail depending on the concrete values
-
isNumberValueType
public boolean isNumberValueType()- Overrides:
isNumberValueTypein classJSType
-
matchesNumberContext
public boolean matchesNumberContext()Description copied from class:JSTypeThis predicate is used to test whether a given type can appear in a numeric context, such as an operand of a multiply operator.- Overrides:
matchesNumberContextin classJSType
-
matchesStringContext
public boolean matchesStringContext()Description copied from class:JSTypeThis predicate is used to test whether a given type can appear in aStringcontext, such as an operand of a string concat (+) operator. All types have at least the potential for converting toString. When we add externally defined types, such as a browser OM, we may choose to add types that do not automatically convert toString.- Overrides:
matchesStringContextin classJSType
-
matchesObjectContext
public boolean matchesObjectContext()Description copied from class:JSTypeThis predicate is used to test whether a given type can appear in anObjectcontext, such as the expression in a with statement. Most types we will encounter, except notablynull, have at least the potential for converting toObject. Host defined objects can get peculiar.- Overrides:
matchesObjectContextin classJSType
-
getDisplayName
Description copied from class:JSTypeReturns a user meaningful label for the JSType instance. For example, Functions and Enums will return their declaration name (if they have one). Some types will not have a meaningful display name. Calls to hasDisplayName() will return true IFF getDisplayName() will return null or a zero length string.- Overrides:
getDisplayNamein classJSType- Returns:
- the display name of the type, or null if one is not available
-
getPossibleToBooleanOutcomes
Description copied from class:JSTypeComputes the set of possible outcomes of theToBooleanpredicate for this type. TheToBooleanpredicate is defined by the ECMA-262 standard, 3rd edition. Its behavior for simple types can be summarized by the following table:type result undefined{false} null{false} boolean{true, false} number{true, false} string{true, false} Object{true} - Specified by:
getPossibleToBooleanOutcomesin classJSType- Returns:
- the set of boolean literals for this type
-
visit
Description copied from class:JSTypeVisit this type with the given visitor. -
autoboxesTo
Description copied from class:JSTypeTurn a scalar type to the corresponding object type.- Overrides:
autoboxesToin classJSType- Returns:
- the auto-boxed type or
nullif this type is not a scalar.
-
hasDisplayName
public boolean hasDisplayName()- Overrides:
hasDisplayNamein classJSType- Returns:
- true if the JSType has a user meaningful label.
-