Class NoType
- java.lang.Object
-
- All Implemented Interfaces:
java.io.Serializable
- Direct Known Subclasses:
NoResolvedType
public class NoType extends NoObjectType
Bottom type, representing the subclass of any value or object. Although JavaScript programmers can't explicitly denote the bottom type, it comes up in static analysis. For example, if we have:var x = null; if (x) { f(x); }We need to be able to assignxa type within thef(x)call. Since it has no possible type, we assignxthe NoType, so thatf(x)is legal no matter what the type off's first argument is.- See Also:
- Bottom types, Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class com.google.javascript.rhino.jstype.FunctionType
FunctionType.Builder, FunctionType.Parameter
-
Nested classes/interfaces inherited from class com.google.javascript.rhino.jstype.JSType
JSType.HasPropertyKind, JSType.Nullability, JSType.SubtypingMode, JSType.TypePair
-
-
Field Summary
-
Fields inherited from class com.google.javascript.rhino.jstype.JSType
templateTypeMap
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description BooleanLiteralSetgetPossibleToBooleanOutcomes()Computes the set of possible outcomes of theToBooleanpredicate for this type.booleanisNoObjectType()booleanisNoType()booleanisNullable()Tests whether this type is nullable.booleanisVoidable()Tests whether this type is voidable.<T> Tvisit(Visitor<T> visitor)Visit this type with the given visitor.-
Methods inherited from class com.google.javascript.rhino.jstype.NoObjectType
getConstructor, getImplicitPrototype, getReferenceName, matchesNumberContext, matchesObjectContext, matchesStringContext, matchesSymbolContext, removeProperty, setPropertyJSDocInfo, toMaybeFunctionType
-
Methods inherited from class com.google.javascript.rhino.jstype.FunctionType
acceptsArguments, builder, canBeCalled, checkExtendsLoop, clearCachedValues, forgetParameterAndReturnTypes, getAllImplementedInterfaces, getAncestorInterfaces, getBindReturnType, getCanonicalRepresentation, getClosurePrimitive, getConstructorOnlyTemplateParameters, getDirectSubTypes, getExtendedInterfaces, getExtendedInterfacesCount, getImplementedInterfaces, getInstanceType, getMaxArity, getMinArity, getOwnImplementedInterfaces, getOwnPropertyNames, getParameters, getPropertyType, getPropertyTypeMap, getPrototype, getPrototypeProperty, getReturnType, getSlot, getSource, getSuperClassConstructor, getTypeOfThis, hasCachedValues, hasEqualCallType, hasImplementedInterfaces, hasInstanceType, hasProperties, isAbstract, isAmbiguousConstructor, isConstructor, isInstanceType, isInterface, isOrdinaryFunction, isReturnTypeInferred, isStructuralInterface, makesDicts, makesStructs, setDict, setExplicitUnrestricted, setExtendedInterfaces, setImplementedInterfaces, setImplicitMatch, setPrototypeBasedOn, setSource, setStruct
-
Methods inherited from class com.google.javascript.rhino.jstype.PrototypeObjectType
getCtorExtendedInterfaces, getCtorImplementedInterfaces, getOwnerFunction, getTemplateParamCount, isAnonymous, isNativeObjectType, matchConstraint, matchRecordTypeConstraint, setPropertyNode, unboxesTo
-
Methods inherited from class com.google.javascript.rhino.jstype.ObjectType
cast, createDelegateSuffix, defineDeclaredProperty, defineInferredProperty, defineSynthesizedProperty, findClosestDefinition, findPropertyTypeWithoutConsideringTemplateTypes, getClosestDefiningType, getDisplayName, getEnumeratedTypeOfEnumObject, getImplicitPrototypeChain, getJSDocInfo, getNormalizedReferenceName, getOwnPropertyDefSite, getOwnPropertyJSDocInfo, getOwnPropertyKind, getOwnSlot, getPropertiesCount, getPropertyDefSite, getPropertyJSDocInfo, getPropertyKind, getPropertyNames, getPropertyNode, getRawType, getTemplateTypes, getTopMostDefiningType, hasOwnProperty, hasReferenceName, isFunctionPrototypeType, isObject, isPropertyInExterns, isPropertyTypeDeclared, isPropertyTypeInferred, isStructuralType, isUnknownType, setJSDocInfo, testForEquality
-
Methods inherited from class com.google.javascript.rhino.jstype.JSType
areIdentical, assertFunctionType, assertObjectType, autobox, autoboxesTo, canCastTo, canTestForEqualityWith, canTestForShallowEqualityWith, collapseUnion, containsReferenceAncestor, dereference, differsFrom, equals, findPropertyType, getEnumeratedTypeOfEnumElement, getGreatestSubtype, getGreatestSubtypeWithProperty, getLeastSupertype, getPropertyKind, getRestrictedTypeGivenOutcome, getTemplateTypeMap, getTypeParameters, getTypesUnderEquality, getTypesUnderInequality, getTypesUnderShallowEquality, getTypesUnderShallowInequality, getUnionMembers, hasAnyTemplateTypes, hasDisplayName, hashCode, hasProperty, isAllType, isArrayType, isBigIntObjectType, isBigIntOrNumber, isBigIntValueType, isBooleanObjectType, isBooleanValueType, isBoxableScalar, isCheckedUnknownType, isDateType, isDict, isEmptyType, isEnumElementType, isEnumType, isExplicitlyVoidable, isFunctionType, isGlobalThisType, isLiteralObject, isNamedType, isNominalConstructorOrInterface, isNominalType, isNoResolvedType, isNullType, isNumber, isNumberObjectType, isNumberValueType, isObjectType, isOnlyBigInt, isRawTypeOfTemplatizedType, isRecordType, isRegexpType, isResolved, isSomeUnknownType, isString, isStringObjectType, isStringValueType, isStruct, isSubtype, isSubtype, isSubtypeOf, isSubtypeOf, isSubtypeWithoutStructuralTyping, isSuccessfullyResolved, isSymbol, isSymbolObjectType, isSymbolValueType, isTemplateType, isTemplatizedType, isUnionType, isUnresolved, isUnresolvedOrResolvedUnknown, isUnsuccessfullyResolved, isVoidType, loosenTypecheckingDueToForwardReferencedSupertype, mergeSupertypeTemplateTypes, resolve, restrictByNotNull, restrictByNotNullOrUndefined, restrictByNotUndefined, setValidator, toAnnotationString, toMaybeEnumElementType, toMaybeEnumType, toMaybeFunctionType, toMaybeNamedType, toMaybeObjectType, toMaybeRecordType, toMaybeTemplateType, toMaybeTemplatizedType, toMaybeUnionType, toObjectType, toString
-
-
-
-
Method Detail
-
isNoObjectType
public final boolean isNoObjectType()
- Overrides:
isNoObjectTypein classNoObjectType
-
isNullable
public final boolean isNullable()
Description copied from class:JSTypeTests whether this type is nullable.- Overrides:
isNullablein classJSType
-
isVoidable
public final boolean isVoidable()
Description copied from class:JSTypeTests whether this type is voidable.- Overrides:
isVoidablein classJSType
-
getPossibleToBooleanOutcomes
public final BooleanLiteralSet 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:ToBoolean results by input type type result undefined{false} null{false} boolean{true, false} number{true, false} string{true, false} Object{true} - Overrides:
getPossibleToBooleanOutcomesin classObjectType- Returns:
- the set of boolean literals for this type
-
visit
public final <T> T visit(Visitor<T> visitor)
Description copied from class:JSTypeVisit this type with the given visitor.- Overrides:
visitin classNoObjectType- Returns:
- the value returned by the visitor
- See Also:
Visitor
-
-