Package com.google.javascript.rhino.jstype
Provides abstractions to represent types in JavaScript.
Rhino is an open-source implementation of JavaScript written entirely in Java.
It is typically embedded into Java applications to provide scripting to end
users.
-
Interface Summary Interface Description StaticTypedRef TheStaticTypedRef
tells us all the ways that aStaticTypedSlot
is used in a program.StaticTypedScope TheStaticTypedScope
interface must be implemented by any object that defines variables for the purposes of static analysis.StaticTypedSlot TheStaticTypedSlot
interface must be implemented by variables that can appear as members of aStaticTypedScope
.Visitor<T> A vistor forJSType
s. -
Class Summary Class Description AllType All type, representing all values.BigIntType BigInt type.BooleanType Boolean type.EnumElementType The type of individual elements of an enum type (seeEnumType
).EnumType An enum type representing a branded collection of elements.FunctionParamBuilder A builder for the list representing FunctionType ParametersFunctionType This derived type provides extended information about a function, including its return type and argument types.FunctionType.Builder A builder class for function and arrow types.FunctionType.Parameter Models a single JavaScript parameter.JSType Represents JavaScript value types.JSType.TypePair a data structure that represents a pair of typesJSTypeRegistry The type registry is used to resolve named types.JSTypeResolver A state machine for resolving allJSType
instances.NamedType ANamedType
is a named reference to some other type.NoObjectType The bottom Object type, representing the subclass of all objects.NoResolvedType An unresolved type that was forward declared.NoType Bottom type, representing the subclass of any value or object.NullType Null type.NumberType Number type.ObjectType Object type.Property A property slot of an object.Property.OwnedProperty A property instance associated with particular owner type.PrototypeObjectType The object type represents instances of JavaScript objects such asObject
,Date
,Function
.ProxyObjectType An object type which uses composition to delegate all calls.RecordType A record (structural) type.RecordTypeBuilder A builder for record types.SimpleReference<T extends StaticTypedSlot> A simple immutable reference.SimpleSlot The minimum implementation ofStaticTypedSlot
.StringType String type.SymbolType Symbol type.TemplateType A placeholder type, used as keys inTemplateTypeMap
s.TemplateTypeMap Manages a mapping from TemplateType to its resolved JSType.TemplateTypeReplacer SpecializesTemplatizedType
s according to provided bindings.TemplatizedType An object type with declared template types, such asArray<string>
.UnionType A type that may be any one of a set of types, and thus has the intersection of the properties of those types.UnionType.Builder Implements type unioning logic, sinceUnionType
s only actually need to perform unioning operations when being (re)built.UnknownType TheUnknown
type.Visitor.WithDefaultCase<T> A type visitor with a default behaviour.VoidType Void type whose only element is theundefined
value. -
Enum Summary Enum Description BooleanLiteralSet A set in the domain {true,false}.JSType.HasPropertyKind A tristate value returned from canPropertyBeDefined.JSType.Nullability Specifies how to express nullability of reference types in annotation strings and error messages.JSType.SubtypingMode In files translated from Java, we typecheck null and undefined loosely.JSTypeNative Constants corresponding to types that are built into a JavaScript engine and other types that occur very often in the type system.JSTypeRegistry.PropDefinitionKind A tristate value returned from canPropertyBeDefined.TernaryValue An enum for ternary logic.