Package | Description |
---|---|
com.google.javascript.jscomp |
Provides the core compiler and its public API.
|
com.google.javascript.jscomp.newtypes |
Modifier and Type | Field and Description |
---|---|
protected JSType |
CodingConvention.AssertionFunctionSpec.assertedNewType |
(package private) JSType |
NewTypeInference.LValueResultFwd.declType |
(package private) JSType |
GlobalTypeInfo.PropertyType.declType |
(package private) JSType |
NewTypeInference.DeferredCheck.expectedRetType |
(package private) JSType |
GlobalTypeInfo.PropertyType.inferredFunType |
(package private) JSType |
NewTypeInference.EnvTypePair.type |
(package private) JSType |
NewTypeInference.LValueResultFwd.type |
(package private) JSType |
NewTypeInference.LValueResultBwd.type |
Modifier and Type | Field and Description |
---|---|
(package private) java.util.List<JSType> |
NewTypeInference.DeferredCheck.argTypes |
private java.util.Map<Node,JSType> |
GlobalTypeInfo.castTypes |
private java.util.Map<Node,JSType> |
GlobalTypeInfo.declaredObjLitProps |
private java.util.Map<java.lang.String,JSType> |
NTIScope.externs |
private java.util.Map<java.lang.String,JSType> |
NTIScope.locals |
private java.util.Map<NTIScope,JSType> |
NewTypeInference.summaries |
Modifier and Type | Method and Description |
---|---|
private JSType |
NewTypeInference.changeTypeIfFunctionNamespace(NTIScope fnScope,
JSType fnType) |
private static JSType |
NewTypeInference.envGetType(TypeEnv env,
java.lang.String pname) |
JSType |
ClosureCodingConvention.AssertInstanceofSpec.getAssertedNewType(Node call,
DeclaredTypeRegistry scope) |
JSType |
ClosureCodingConvention.AssertFunctionByTypeName.getAssertedNewType(Node call,
DeclaredTypeRegistry scope) |
JSType |
CodingConvention.AssertionFunctionSpec.getAssertedNewType(Node call,
DeclaredTypeRegistry scope)
Returns the new type system type for a type assertion.
|
(package private) JSType |
GlobalTypeInfo.getCastType(Node n) |
JSType |
NTIScope.getDeclaredTypeOf(java.lang.String name) |
private JSType |
GlobalTypeInfo.getDeclaredTypeOfNode(JSDocInfo jsdoc,
NTIScope s) |
(package private) JSType |
GlobalTypeInfo.getPropDeclaredType(Node n) |
private JSType |
NewTypeInference.getSummaryOfLocalFunDef(java.lang.String name) |
private JSType |
NewTypeInference.getTypeAfterFwd(java.lang.String varName,
TypeEnv entryEnv,
TypeEnv exitEnv) |
private JSType |
NewTypeInference.getTypeFromString(Node typeString) |
private JSType |
GlobalTypeInfo.getVarTypeFromAnnotation(Node nameNode,
NTIScope currentScope) |
private JSType |
GlobalTypeInfo.ProcessScope.inferConstTypeFromRhs(Node constExpr) |
private JSType |
NewTypeInference.markAndGetTypeOfPreanalyzedNode(Node qnameNode,
TypeEnv env,
boolean isFwd) |
private JSType |
GlobalTypeInfo.ProcessScope.mayInferFromRhsIfConst(Node lvalueNode) |
private static JSType |
NewTypeInference.pickReqObjType(Node expr) |
private JSType |
NewTypeInference.predicateTransformType(java.lang.String typeHint,
JSType booleanContext,
JSType beforeType) |
private static JSType |
NewTypeInference.scalarValueToType(int token) |
private JSType |
GlobalTypeInfo.ProcessScope.simpleInferCallNewType(Node n) |
private JSType |
GlobalTypeInfo.ProcessScope.simpleInferDeclaration(Declaration decl) |
private JSType |
GlobalTypeInfo.ProcessScope.simpleInferExprType(Node n) |
private JSType |
GlobalTypeInfo.ProcessScope.simpleInferGetpropType(Node n) |
private static JSType |
NewTypeInference.specializeKeep2ndWhenBottom(JSType toBeSpecialized,
JSType fallback) |
Modifier and Type | Method and Description |
---|---|
private com.google.common.collect.ImmutableMap<java.lang.String,JSType> |
NewTypeInference.calcTypeInstantiation(Node callNode,
Node receiver,
Node firstArg,
FunctionType funType,
TypeEnv typeEnv,
boolean isFwd)
We don't use the requiredType of the context to unify with the return
type.
|
private java.util.Map<java.lang.String,JSType> |
NewTypeInference.calcTypeInstantiationBwd(Node callNode,
FunctionType funType,
TypeEnv typeEnv) |
private java.util.Map<java.lang.String,JSType> |
NewTypeInference.calcTypeInstantiationFwd(Node callNode,
Node receiver,
Node firstArg,
FunctionType funType,
TypeEnv typeEnv) |
Modifier and Type | Method and Description |
---|---|
(package private) static NewTypeInference.EnvTypePair |
NewTypeInference.EnvTypePair.addBinding(TypeEnv env,
java.lang.String varName,
JSType type) |
(package private) void |
NTIScope.addLocal(java.lang.String name,
JSType declType,
boolean isConstant,
boolean isFromExterns) |
private NewTypeInference.EnvTypePair |
NewTypeInference.analyzeAddBwd(Node expr,
TypeEnv outEnv,
JSType requiredType) |
private NewTypeInference.EnvTypePair |
NewTypeInference.analyzeAddFwd(Node expr,
TypeEnv inEnv,
JSType requiredType) |
private NewTypeInference.EnvTypePair |
NewTypeInference.analyzeAssignAddBwd(Node expr,
TypeEnv outEnv,
JSType requiredType) |
private NewTypeInference.EnvTypePair |
NewTypeInference.analyzeAssignAddFwd(Node expr,
TypeEnv inEnv,
JSType requiredType) |
private NewTypeInference.EnvTypePair |
NewTypeInference.analyzeAssignBwd(Node expr,
TypeEnv outEnv,
JSType requiredType) |
private NewTypeInference.EnvTypePair |
NewTypeInference.analyzeAssignFwd(Node expr,
TypeEnv inEnv,
JSType requiredType,
JSType specializedType) |
private NewTypeInference.EnvTypePair |
NewTypeInference.analyzeCallNewBwd(Node expr,
TypeEnv outEnv,
JSType requiredType) |
private NewTypeInference.EnvTypePair |
NewTypeInference.analyzeCallNewFwd(Node expr,
TypeEnv inEnv,
JSType requiredType,
JSType specializedType) |
private NewTypeInference.EnvTypePair |
NewTypeInference.analyzeEnumObjLitBwd(Node objLit,
TypeEnv outEnv,
JSType requiredType) |
private NewTypeInference.EnvTypePair |
NewTypeInference.analyzeEnumObjLitFwd(Node objLit,
TypeEnv inEnv,
JSType requiredType) |
private NewTypeInference.EnvTypePair |
NewTypeInference.analyzeExprBwd(Node expr,
TypeEnv outEnv,
JSType requiredType)
For now, we won't emit any warnings bwd.
|
private NewTypeInference.EnvTypePair |
NewTypeInference.analyzeExprFwd(Node expr,
TypeEnv inEnv,
JSType requiredType) |
private NewTypeInference.EnvTypePair |
NewTypeInference.analyzeExprFwd(Node expr,
TypeEnv inEnv,
JSType requiredType,
JSType specializedType) |
private NewTypeInference.EnvTypePair |
NewTypeInference.analyzeGetElemBwd(Node expr,
TypeEnv outEnv,
JSType requiredType) |
private NewTypeInference.EnvTypePair |
NewTypeInference.analyzeGetElemFwd(Node expr,
TypeEnv inEnv,
JSType requiredType,
JSType specializedType) |
private NewTypeInference.EnvTypePair |
NewTypeInference.analyzeGoogTypeof(Node typeof,
Node typeString,
TypeEnv inEnv,
JSType specializedType) |
private NewTypeInference.EnvTypePair |
NewTypeInference.analyzeHookBwd(Node expr,
TypeEnv outEnv,
JSType requiredType) |
private NewTypeInference.EnvTypePair |
NewTypeInference.analyzeHookFwd(Node expr,
TypeEnv inEnv,
JSType requiredType,
JSType specializedType) |
private NewTypeInference.EnvTypePair |
NewTypeInference.analyzeIncDecFwd(Node expr,
TypeEnv inEnv,
JSType requiredType) |
private NewTypeInference.EnvTypePair |
NewTypeInference.analyzeInFwd(Node expr,
TypeEnv inEnv,
JSType specializedType) |
private NewTypeInference.EnvTypePair |
NewTypeInference.analyzeInstanceofFwd(Node expr,
TypeEnv inEnv,
JSType specializedType) |
private NewTypeInference.LValueResultFwd |
NewTypeInference.analyzeIObjectElmLvalFwd(Node prop,
NewTypeInference.LValueResultFwd recvLvalue,
JSType indexType) |
private NewTypeInference.EnvTypePair |
NewTypeInference.analyzeLogicalOpFwd(Node expr,
TypeEnv inEnv,
JSType requiredType,
JSType specializedType) |
private NewTypeInference.EnvTypePair |
NewTypeInference.analyzeLooseCallNodeBwd(Node callNode,
TypeEnv outEnv,
JSType retType) |
private NewTypeInference.EnvTypePair |
NewTypeInference.analyzeLooseCallNodeFwd(Node callNode,
TypeEnv inEnv,
JSType requiredType) |
private NewTypeInference.LValueResultBwd |
NewTypeInference.analyzeLValueBwd(Node expr,
TypeEnv outEnv,
JSType type,
boolean doSlicing) |
private NewTypeInference.LValueResultBwd |
NewTypeInference.analyzeLValueBwd(Node expr,
TypeEnv outEnv,
JSType type,
boolean doSlicing,
boolean insideQualifiedName)
When
doSlicing is set, remove the lvalue from the returned env |
private NewTypeInference.LValueResultFwd |
NewTypeInference.analyzeLValueFwd(Node expr,
TypeEnv inEnv,
JSType type) |
private NewTypeInference.LValueResultFwd |
NewTypeInference.analyzeLValueFwd(Node expr,
TypeEnv inEnv,
JSType type,
boolean insideQualifiedName) |
private NewTypeInference.EnvTypePair |
NewTypeInference.analyzeNameBwd(Node expr,
TypeEnv outEnv,
JSType requiredType) |
private NewTypeInference.EnvTypePair |
NewTypeInference.analyzeNameFwd(Node expr,
TypeEnv inEnv,
JSType requiredType,
JSType specializedType) |
private NewTypeInference.EnvTypePair |
NewTypeInference.analyzeNonStrictComparisonFwd(Node expr,
TypeEnv inEnv,
JSType specializedType) |
private NewTypeInference.EnvTypePair |
NewTypeInference.analyzeObjLitBwd(Node objLit,
TypeEnv outEnv,
JSType requiredType) |
private NewTypeInference.EnvTypePair |
NewTypeInference.analyzeObjLitFwd(Node objLit,
TypeEnv inEnv,
JSType requiredType,
JSType specializedType) |
private NewTypeInference.EnvTypePair |
NewTypeInference.analyzePropAccessBwd(Node receiver,
java.lang.String pname,
TypeEnv outEnv,
JSType requiredType) |
private NewTypeInference.EnvTypePair |
NewTypeInference.analyzePropAccessFwd(Node receiver,
java.lang.String pname,
TypeEnv inEnv,
JSType requiredType,
JSType specializedType) |
private NewTypeInference.EnvTypePair |
NewTypeInference.analyzePropertyTestCallFwd(Node call,
TypeEnv inEnv,
JSType specializedType) |
private NewTypeInference.LValueResultBwd |
NewTypeInference.analyzePropLValBwd(Node obj,
QualifiedName pname,
TypeEnv outEnv,
JSType type,
boolean doSlicing) |
private NewTypeInference.LValueResultFwd |
NewTypeInference.analyzePropLValFwd(Node obj,
QualifiedName pname,
NewTypeInference.LValueResultFwd recvLvalue,
JSType requiredType,
boolean insideQualifiedName) |
private NewTypeInference.LValueResultFwd |
NewTypeInference.analyzeReceiverLvalFwd(Node obj,
QualifiedName pname,
TypeEnv inEnv,
JSType propType) |
private NewTypeInference.EnvTypePair |
NewTypeInference.analyzeSpecializedTypeof(Node typeof,
Node typeString,
int comparisonOp,
TypeEnv inEnv,
JSType specializedType) |
private NewTypeInference.EnvTypePair |
NewTypeInference.analyzeStrictComparisonFwd(int comparisonOp,
Node lhs,
Node rhs,
TypeEnv inEnv,
JSType specializedType) |
private NewTypeInference.EnvTypePair |
NewTypeInference.analyzeTypePredicate(Node call,
java.lang.String typeHint,
TypeEnv inEnv,
JSType specializedType) |
void |
ClosureCodingConvention.applySingletonGetterNew(RawNominalType rawType,
JSType getInstanceType,
JSType instanceType) |
void |
CodingConvention.applySingletonGetterNew(RawNominalType rawType,
JSType getInstanceType,
JSType instanceType) |
void |
CodingConventions.Proxy.applySingletonGetterNew(RawNominalType rawType,
JSType getInstanceType,
JSType instanceType) |
void |
CodingConventions.DefaultCodingConvention.applySingletonGetterNew(RawNominalType rawType,
JSType getInstanceType,
JSType instanceType) |
private JSType |
NewTypeInference.changeTypeIfFunctionNamespace(NTIScope fnScope,
JSType fnType) |
private NewTypeInference.EnvTypePair |
NewTypeInference.combineLhsAndRhsForLogicalOps(int logicalOp,
JSType lhsUnspecializedType,
NewTypeInference.EnvTypePair lhsPair,
NewTypeInference.EnvTypePair rhsPair) |
private DeclaredFunctionType |
GlobalTypeInfo.ProcessScope.computeFnDeclaredTypeFromCallee(Node declNode,
JSType declaredTypeAsJSType) |
private void |
NewTypeInference.createDeferredCheckBwd(Node expr,
JSType requiredType) |
private static TypeEnv |
NewTypeInference.envPutType(TypeEnv env,
java.lang.String varName,
JSType type) |
private static boolean |
NewTypeInference.isImpreciseType(JSType t) |
private boolean |
GlobalTypeInfo.isValidOverride(JSType localPropType,
JSType inheritedPropType) |
private boolean |
NewTypeInference.maybeIsNamespace(java.lang.String varName,
JSType inferredType) |
private void |
NewTypeInference.maybeSetTypeI(Node n,
JSType t) |
private boolean |
NewTypeInference.mayWarnAboutBadIObjectIndex(Node n,
JSType iobjectType,
JSType foundIndexType,
JSType requiredIndexType) |
private boolean |
NewTypeInference.mayWarnAboutConstProp(Node propAccess,
JSType recvType,
QualifiedName pname) |
private boolean |
NewTypeInference.mayWarnAboutDictPropAccess(Node obj,
JSType type) |
private boolean |
GlobalTypeInfo.ProcessScope.mayWarnAboutExistingProp(RawNominalType classType,
java.lang.String pname,
Node propCreationNode,
JSType typeInJsdoc) |
private boolean |
NewTypeInference.mayWarnAboutInexistentProp(Node propAccessNode,
JSType recvType,
QualifiedName propQname,
TypeEnv env) |
private boolean |
NewTypeInference.mayWarnAboutNonObject(Node receiver,
JSType recvType,
JSType specializedType) |
private NewTypeInference.EnvTypePair |
NewTypeInference.mayWarnAboutNullableReferenceAndTighten(Node obj,
JSType recvType,
JSType maybeSpecType,
TypeEnv inEnv) |
private boolean |
NewTypeInference.mayWarnAboutPropCreation(QualifiedName pname,
Node getProp,
JSType recvType) |
private boolean |
NewTypeInference.mayWarnAboutStructPropAccess(Node obj,
JSType type) |
private JSType |
NewTypeInference.predicateTransformType(java.lang.String typeHint,
JSType booleanContext,
JSType beforeType) |
private static JSType |
NewTypeInference.specializeKeep2ndWhenBottom(JSType toBeSpecialized,
JSType fallback) |
private boolean |
GlobalTypeInfo.ProcessScope.suppressDupPropWarning(JSDocInfo propCreationJsdoc,
JSType typeInJsdoc,
JSType previousType) |
private boolean |
NewTypeInference.tightenTypeAndDontWarn(java.lang.String varName,
Node n,
JSType declared,
JSType inferred,
JSType required) |
private void |
NewTypeInference.unifyWithSubtypeWarnIfFail(JSType genericType,
JSType concreteType,
java.util.List<java.lang.String> typeParameters,
com.google.common.collect.Multimap<java.lang.String,JSType> typeMultimap,
Node toWarnOn,
boolean isFwd) |
private TypeEnv |
NewTypeInference.updateLvalueTypeInEnv(TypeEnv env,
Node lvalue,
QualifiedName qname,
JSType type) |
(package private) void |
NewTypeInference.DeferredCheck.updateReturn(JSType expectedRetType) |
(package private) void |
NTIScope.updateType(java.lang.String name,
JSType newDeclType) |
Modifier and Type | Method and Description |
---|---|
private TypeEnv |
NewTypeInference.analyzeCallNodeArgumentsFwd(Node call,
Node firstArg,
FunctionType funType,
java.util.List<JSType> argTypesForDeferredCheck,
TypeEnv inEnv) |
private void |
GlobalTypeInfo.checkSuperProperty(RawNominalType current,
NominalType superType,
java.lang.String pname,
com.google.common.collect.Multimap<java.lang.String,DeclaredFunctionType> propMethodTypesToProcess,
com.google.common.collect.Multimap<java.lang.String,JSType> propTypesToProcess) |
private void |
NewTypeInference.DeferredCheck.runCheck(java.util.Map<NTIScope,JSType> summaries,
NewTypeInference.WarningReporter warnings) |
private void |
NewTypeInference.unifyWithSubtypeWarnIfFail(JSType genericType,
JSType concreteType,
java.util.List<java.lang.String> typeParameters,
com.google.common.collect.Multimap<java.lang.String,JSType> typeMultimap,
Node toWarnOn,
boolean isFwd) |
(package private) void |
NewTypeInference.DeferredCheck.updateArgTypes(java.util.List<JSType> argTypes) |
Constructor and Description |
---|
AssertionFunctionSpec(java.lang.String functionName,
JSType assertedNewType) |
AssertionFunctionSpec(java.lang.String functionName,
JSType assertedNewType,
JSTypeNative assertedType) |
DeferredCheck(Node callSite,
JSType expectedRetType,
NTIScope callerScope,
NTIScope calleeScope) |
EnvTypePair(TypeEnv env,
JSType type) |
LValueResultBwd(TypeEnv env,
JSType type,
QualifiedName ptr) |
LValueResultFwd(TypeEnv env,
JSType type,
JSType declType,
QualifiedName ptr) |
Modifier and Type | Class and Description |
---|---|
(package private) class |
MaskType |
(package private) class |
NullableObjsType |
(package private) class |
ObjsType |
(package private) class |
UnionType |
Modifier and Type | Field and Description |
---|---|
private static JSType |
JSType.ALMOST_TOP |
private JSType |
JSTypes.anyNumOrStr |
static JSType |
JSType.BOOLEAN |
private JSType |
JSTypes.booleanInstance |
static JSType |
JSType.BOTTOM |
private JSType |
EnumType.declaredType |
private JSType |
Property.declaredType |
private JSType |
EnumType.enumPropType |
static JSType |
JSType.FALSE_TYPE |
static JSType |
JSType.FALSY |
private JSType |
Property.inferredType |
protected JSType |
Namespace.namespaceType |
private JSType |
DeclaredFunctionType.nominalType |
private JSType |
FunctionType.nominalType |
private JSType |
FunctionTypeBuilder.nominalType |
static JSType |
JSType.NULL |
static JSType |
JSType.NULL_OR_UNDEF |
static JSType |
JSType.NUM_OR_STR |
static JSType |
JSType.NUMBER |
private JSType |
JSTypes.numberInstance |
private JSType |
JSTypes.numberOrNumber |
private JSType |
DeclaredFunctionType.receiverType |
private JSType |
FunctionType.receiverType |
private JSType |
FunctionTypeBuilder.receiverType |
private JSType |
JSTypes.regexpInstance |
private JSType |
DeclaredFunctionType.restFormals |
private JSType |
FunctionType.restFormals |
private JSType |
FunctionTypeBuilder.restFormals |
private JSType |
DeclaredFunctionType.returnType |
private JSType |
FunctionType.returnType |
private JSType |
FunctionTypeBuilder.returnType |
private JSType |
Declaration.simpleType |
JSType |
JSTypeCreatorFromJSDoc.FunctionAndSlotType.slotType |
static JSType |
JSType.STRING |
private JSType |
JSTypes.stringInstance |
private JSType |
JSTypes.stringOrString |
static JSType |
JSType.TOP |
static JSType |
JSType.TOP_DICT |
static JSType |
JSType.TOP_OBJECT |
static JSType |
JSType.TOP_SCALAR |
static JSType |
JSType.TOP_STRUCT |
static JSType |
JSType.TRUE_TYPE |
static JSType |
JSType.TRUTHY |
private JSType |
JSTypeCreatorFromJSDoc.ParameterType.type |
private JSType |
Typedef.type |
static JSType |
JSType.UNDEFINED |
static JSType |
JSType.UNKNOWN |
private JSType |
RawNominalType.wrappedAsJSType |
private JSType |
RawNominalType.wrappedAsNullableJSType |
Modifier and Type | Field and Description |
---|---|
(package private) static java.util.Map<java.lang.String,JSType> |
JSType.MAP_TO_UNKNOWN |
private java.util.List<JSType> |
DeclaredFunctionType.optionalFormals |
private com.google.common.collect.ImmutableList<JSType> |
FunctionType.optionalFormals |
private java.util.List<JSType> |
FunctionTypeBuilder.optionalFormals |
private com.google.common.collect.ImmutableMap<java.lang.String,JSType> |
FunctionType.outerVarPreconditions |
private java.util.Map<java.lang.String,JSType> |
FunctionTypeBuilder.outerVars |
private java.util.List<JSType> |
DeclaredFunctionType.requiredFormals |
private com.google.common.collect.ImmutableList<JSType> |
FunctionType.requiredFormals |
private java.util.List<JSType> |
FunctionTypeBuilder.requiredFormals |
private PersistentMap<java.lang.String,JSType> |
TypeEnv.typeMap |
private com.google.common.collect.ImmutableMap<java.lang.String,JSType> |
NominalType.typeMap |
Modifier and Type | Method and Description |
---|---|
JSType |
JSType.autobox() |
protected JSType |
RawNominalType.computeJSType(JSTypes commonTypes) |
protected JSType |
EnumType.computeJSType(JSTypes commonTypes)
When defining an enum such as
/** @enum {number} * /
var X = { ONE: 1, TWO: 2 };
the properties of the object literal are constant.
|
protected JSType |
FunctionNamespace.computeJSType(JSTypes commonTypes) |
protected JSType |
NamespaceLit.computeJSType(JSTypes commonTypes) |
protected abstract JSType |
Namespace.computeJSType(JSTypes commonTypes) |
(package private) static JSType |
JSType.fromEnum(EnumType e) |
JSType |
JSTypes.fromFunctionType(FunctionType fn) |
(package private) static JSType |
JSType.fromFunctionType(FunctionType fn,
NominalType fnNominal) |
static JSType |
JSType.fromObjectType(ObjectType obj) |
private JSType |
FunctionType.fromReceiverToFirstFormal() |
static JSType |
JSType.fromTypeVar(java.lang.String typevarName) |
JSType |
JSTypes.getArgumentsArrayType() |
JSType |
JSTypes.getArgumentsArrayType(JSType t) |
JSType |
JSTypes.getArrayInstance() |
JSType |
JSTypes.getArrayInstance(JSType t) |
(package private) JSType |
JSTypes.getBooleanInstance() |
JSType |
RawNominalType.getCtorPropDeclaredType(java.lang.String pname) |
(package private) static JSType |
TypeWithPropertiesStatics.getDeclaredProp(com.google.common.collect.ImmutableSet<? extends TypeWithProperties> types,
QualifiedName qname) |
JSType |
EnumType.getDeclaredProp(QualifiedName qname) |
JSType |
JSType.getDeclaredProp(QualifiedName qname) |
JSType |
TypeWithProperties.getDeclaredProp(QualifiedName qname)
Get the declared type of the given property
|
JSType |
ObjectType.getDeclaredProp(QualifiedName qname) |
(package private) JSType |
Property.getDeclaredType() |
JSType |
DeclaredTypeRegistry.getDeclaredTypeOf(java.lang.String name)
Returns the declared JSType of the given identifier,
or null if the identifier is not defined.
|
private JSType |
JSTypeCreatorFromJSDoc.getDeclaredTypeOfNode(JSDocInfo jsdoc,
DeclaredTypeRegistry registry,
com.google.common.collect.ImmutableList<java.lang.String> typeParameters) |
JSType |
JSTypeCreatorFromJSDoc.getDeclaredTypeOfNode(JSDocInfo jsdoc,
RawNominalType ownerType,
DeclaredTypeRegistry registry) |
JSType |
EnumType.getEnumeratedType() |
JSType |
JSType.getEnumeratedType() |
private JSType |
JSTypeCreatorFromJSDoc.getEnumPropType(EnumType e,
DeclaredTypeRegistry registry) |
JSType |
DeclaredFunctionType.getFormalType(int argpos) |
JSType |
FunctionType.getFormalType(int argpos) |
private JSType |
JSTypeCreatorFromJSDoc.getFunTypeHelper(Node jsdocNode,
DeclaredTypeRegistry registry,
com.google.common.collect.ImmutableList<java.lang.String> typeParameters) |
(package private) JSType |
NominalType.getIndexedType() |
JSType |
JSType.getIndexedType() |
(package private) JSType |
NominalType.getIndexType() |
JSType |
JSType.getIndexType() |
JSType |
RawNominalType.getInstanceAsJSType() |
JSType |
NominalType.getInstanceAsJSType() |
JSType |
RawNominalType.getInstancePropDeclaredType(java.lang.String pname) |
JSType |
FunctionType.getInstanceTypeOfCtor() |
JSType |
RawNominalType.getInstanceWithNullability(boolean includeNull) |
private JSType |
JSTypeCreatorFromJSDoc.getMaybeTypeFromComment(Node n,
DeclaredTypeRegistry registry,
com.google.common.collect.ImmutableList<java.lang.String> typeParameters) |
private JSType |
JSTypeCreatorFromJSDoc.getNamedTypeHelper(Node n,
DeclaredTypeRegistry registry,
com.google.common.collect.ImmutableList<java.lang.String> outerTypeParameters) |
JSType |
DeclaredFunctionType.getNominalType() |
private JSType |
JSTypeCreatorFromJSDoc.getNominalTypeHelper(RawNominalType rawType,
Node n,
DeclaredTypeRegistry registry,
com.google.common.collect.ImmutableList<java.lang.String> outerTypeParameters) |
(package private) JSType |
JSTypes.getNumberInstance() |
JSType |
FunctionType.getOuterVarPrecondition(java.lang.String name) |
(package private) static JSType |
TypeWithPropertiesStatics.getProp(com.google.common.collect.ImmutableSet<? extends TypeWithProperties> types,
QualifiedName qname) |
JSType |
EnumType.getProp(QualifiedName qname) |
JSType |
JSType.getProp(QualifiedName qname) |
JSType |
TypeWithProperties.getProp(QualifiedName qname)
Get the inferred type of the given property
|
JSType |
ObjectType.getProp(QualifiedName qname) |
JSType |
NominalType.getPropDeclaredType(java.lang.String pname) |
JSType |
Namespace.getPropDeclaredType(java.lang.String pname) |
JSType |
EnumType.getPropType() |
JSType |
NominalType.getPrototype() |
JSType |
DeclaredFunctionType.getReceiverType() |
private JSType |
JSTypeCreatorFromJSDoc.getRecordTypeHelper(Node n,
DeclaredTypeRegistry registry,
com.google.common.collect.ImmutableList<java.lang.String> typeParameters) |
JSType |
JSTypes.getRegexpType() |
JSType |
DeclaredFunctionType.getRestFormalsType() |
JSType |
FunctionType.getRestFormalsType() |
JSType |
DeclaredFunctionType.getReturnType() |
JSType |
FunctionType.getReturnType() |
(package private) JSType |
JSTypes.getStringInstance() |
JSType |
FunctionType.getSuperPrototype() |
private JSType |
JSTypeCreatorFromJSDoc.getThisOrNewType(Node n,
DeclaredTypeRegistry registry,
com.google.common.collect.ImmutableList<java.lang.String> typeParameters) |
JSType |
DeclaredFunctionType.getThisType() |
JSType |
FunctionType.getThisType() |
JSType |
Typedef.getType() |
(package private) JSType |
Property.getType() |
JSType |
TypeEnv.getType(java.lang.String n) |
private JSType |
JSTypeCreatorFromJSDoc.getTypedefType(Typedef td,
DeclaredTypeRegistry registry) |
private JSType |
JSTypeCreatorFromJSDoc.getTypeFromComment(Node n,
DeclaredTypeRegistry registry,
com.google.common.collect.ImmutableList<java.lang.String> typeParameters) |
private JSType |
JSTypeCreatorFromJSDoc.getTypeFromCommentHelper(Node n,
DeclaredTypeRegistry registry,
com.google.common.collect.ImmutableList<java.lang.String> typeParameters) |
private JSType |
JSTypeCreatorFromJSDoc.getTypeFromJSTypeExpression(JSTypeExpression expr,
DeclaredTypeRegistry registry,
com.google.common.collect.ImmutableList<java.lang.String> typeParameters) |
JSType |
Declaration.getTypeOfSimpleDecl() |
static JSType |
JSType.join(JSType lhs,
JSType rhs) |
private static JSType |
FunctionType.joinNominalTypes(JSType nt1,
JSType nt2) |
private JSType |
JSTypeCreatorFromJSDoc.lookupTypeByName(java.lang.String name,
Node n,
DeclaredTypeRegistry registry,
com.google.common.collect.ImmutableList<java.lang.String> outerTypeParameters) |
JSType |
JSTypes.looseTopFunction() |
(package private) static JSType |
MaskType.make(int mask) |
private JSType |
JSType.makeFalsy() |
private JSType |
JSType.makeTruthy() |
private static JSType |
JSType.makeType(int mask) |
private static JSType |
JSType.makeType(int mask,
com.google.common.collect.ImmutableSet<ObjectType> objs,
java.lang.String typeVar,
com.google.common.collect.ImmutableSet<EnumType> enums) |
JSType |
JSTypeCreatorFromJSDoc.maybeMakeNullable(JSType t) |
static JSType |
JSType.meet(JSType lhs,
JSType rhs) |
private static JSType |
JSType.meetEnums(int newMask,
int unionMask,
com.google.common.collect.ImmutableSet<ObjectType> newObjs,
java.lang.String newTypevar,
com.google.common.collect.ImmutableSet<ObjectType> objs1,
com.google.common.collect.ImmutableSet<ObjectType> objs2,
com.google.common.collect.ImmutableSet<EnumType> enums1,
com.google.common.collect.ImmutableSet<EnumType> enums2)
Both
meet and specialize do the same computation for enums. |
private static JSType |
JSType.meetHelper(JSType lhs,
JSType rhs) |
private static JSType |
FunctionType.meetNominalTypes(JSType nt1,
JSType nt2) |
JSType |
JSType.negate() |
private static JSType |
DeclaredFunctionType.nullAcceptingJoin(JSType t1,
JSType t2) |
(package private) static JSType |
JSType.nullAcceptingJoin(JSType t1,
JSType t2) |
private static JSType |
DeclaredFunctionType.nullAcceptingMeet(JSType t1,
JSType t2) |
private static JSType |
FunctionType.nullAcceptingMeet(JSType t1,
JSType t2) |
static JSType |
JSType.plus(JSType lhs,
JSType rhs) |
JSType |
JSTypes.qmarkFunction() |
JSType |
JSType.removeType(JSType other) |
JSType |
JSType.specialize(JSType other) |
private JSType |
JSType.specializeHelper(JSType other) |
private static JSType |
FunctionType.substGenericsInNomType(JSType nt,
java.util.Map<java.lang.String,JSType> typeMap) |
JSType |
JSType.substituteGenerics(java.util.Map<java.lang.String,JSType> concreteTypes) |
JSType |
JSType.substituteGenericsWithUnknown() |
JSType |
JSType.toBoolean() |
JSType |
Namespace.toJSType(JSTypes commonTypes) |
JSType |
JSTypes.topFunction() |
(package private) static JSType |
JSType.unifyUnknowns(JSType t1,
JSType t2)
Unify the two types symmetrically, given that we have already instantiated
the type variables of interest in
t1 and t2 , treating
JSType.UNKNOWN as a "hole" to be filled. |
JSType |
JSType.withDeclaredProperty(QualifiedName qname,
JSType type,
boolean isConstant) |
JSType |
JSType.withFunction(FunctionType ft,
NominalType fnNominal) |
JSType |
JSType.withLoose()
Turns the class-less object of this type (if any) into a loose object
|
JSType |
JSType.withoutProperty(QualifiedName qname) |
JSType |
JSType.withProperty(QualifiedName qname,
JSType type) |
JSType |
JSType.withPropertyRequired(java.lang.String pname) |
Modifier and Type | Method and Description |
---|---|
private static java.util.List<JSType> |
JSTypeCreatorFromJSDoc.fixLengthOfTypeList(int desiredLength,
java.util.List<JSType> typeList) |
(package private) java.util.Map<java.lang.String,JSType> |
NominalType.getTypeMap() |
Modifier and Type | Method and Description |
---|---|
void |
RawNominalType.addClassProperty(java.lang.String pname,
Node defSite,
JSType type,
boolean isConstant)
Add a new non-optional declared property to instances of this class
|
void |
RawNominalType.addCtorProperty(java.lang.String pname,
Node defSite,
JSType type,
boolean isConstant)
Add a new non-optional declared property to this class's constructor
|
FunctionTypeBuilder |
FunctionTypeBuilder.addNominalType(JSType t) |
FunctionTypeBuilder |
FunctionTypeBuilder.addOptFormal(JSType t) |
FunctionTypeBuilder |
FunctionTypeBuilder.addOuterVarPrecondition(java.lang.String name,
JSType t) |
void |
Namespace.addProperty(java.lang.String pname,
Node defSite,
JSType type,
boolean isConstant)
Add a new non-optional declared property to this namespace
|
void |
RawNominalType.addPropertyWhichMayNotBeOnAllInstances(java.lang.String pname,
JSType type) |
void |
RawNominalType.addProtoProperty(java.lang.String pname,
Node defSite,
JSType type,
boolean isConstant)
Add a new declared prototype property to this class
|
FunctionTypeBuilder |
FunctionTypeBuilder.addReceiverType(JSType t) |
FunctionTypeBuilder |
FunctionTypeBuilder.addReqFormal(JSType t) |
FunctionTypeBuilder |
FunctionTypeBuilder.addRestFormals(JSType t) |
FunctionTypeBuilder |
FunctionTypeBuilder.addRetType(JSType t) |
void |
RawNominalType.addUndeclaredClassProperty(java.lang.String pname,
JSType type,
Node defSite)
Add a new undeclared property to instances of this class
|
void |
Namespace.addUndeclaredProperty(java.lang.String pname,
Node defSite,
JSType t,
boolean isConstant)
Add a new undeclared property to this namespace
|
(package private) static boolean |
EnumType.areSubtypes(JSType t1,
JSType t2,
SubtypeCache subSuperMap) |
JSType |
JSTypes.getArgumentsArrayType(JSType t) |
JSType |
JSTypes.getArrayInstance(JSType t) |
private static NominalType |
FunctionType.getNominalTypeIfSingletonObj(JSType t) |
static boolean |
JSType.haveCommonSubtype(JSType lhs,
JSType rhs) |
boolean |
JSType.isNonLooseSubtypeOf(JSType other) |
boolean |
JSTypes.isNumberScalarOrObj(JSType t) |
boolean |
JSTypes.isNumStrScalarOrObj(JSType t) |
boolean |
JSTypes.isStringScalarOrObj(JSType t) |
private boolean |
JSType.isSubtypeOfHelper(boolean keepLoosenessOfThis,
JSType other,
SubtypeCache subSuperMap) |
static JSType |
JSType.join(JSType lhs,
JSType rhs) |
private static JSType |
FunctionType.joinNominalTypes(JSType nt1,
JSType nt2) |
(package private) static Property |
Property.make(JSType inferredType,
JSType declaredType) |
(package private) static DeclaredFunctionType |
DeclaredFunctionType.make(java.util.List<JSType> requiredFormals,
java.util.List<JSType> optionalFormals,
JSType restFormals,
JSType retType,
JSType nominalType,
JSType receiverType,
com.google.common.collect.ImmutableList<java.lang.String> typeParameters) |
(package private) static Property |
Property.makeConstant(Node defSite,
JSType inferredType,
JSType declaredType) |
(package private) static Property |
Property.makeOptional(Node defSite,
JSType inferredType,
JSType declaredType) |
(package private) static Property |
Property.makeWithDefsite(Node defSite,
JSType inferredType,
JSType declaredType) |
JSType |
JSTypeCreatorFromJSDoc.maybeMakeNullable(JSType t) |
void |
NamespaceLit.maybeSetWindowInstance(JSType obj) |
static JSType |
JSType.meet(JSType lhs,
JSType rhs) |
private static JSType |
JSType.meetHelper(JSType lhs,
JSType rhs) |
private static JSType |
FunctionType.meetNominalTypes(JSType nt1,
JSType nt2) |
(package private) static FunctionType |
FunctionType.normalized(java.util.List<JSType> requiredFormals,
java.util.List<JSType> optionalFormals,
JSType restFormals,
JSType retType,
JSType nominalType,
JSType receiverType,
java.util.Map<java.lang.String,JSType> outerVars,
com.google.common.collect.ImmutableList<java.lang.String> typeParameters,
boolean isLoose) |
(package private) static com.google.common.collect.ImmutableSet<EnumType> |
EnumType.normalizeForJoin(com.google.common.collect.ImmutableSet<EnumType> newEnums,
JSType joinWithoutEnums) |
private static JSType |
DeclaredFunctionType.nullAcceptingJoin(JSType t1,
JSType t2) |
(package private) static JSType |
JSType.nullAcceptingJoin(JSType t1,
JSType t2) |
private static JSType |
DeclaredFunctionType.nullAcceptingMeet(JSType t1,
JSType t2) |
private static JSType |
FunctionType.nullAcceptingMeet(JSType t1,
JSType t2) |
static JSType |
JSType.plus(JSType lhs,
JSType rhs) |
TypeEnv |
TypeEnv.putType(java.lang.String n,
JSType t) |
JSType |
JSType.removeType(JSType other) |
(package private) void |
EnumType.resolveEnum(JSType t) |
(package private) void |
Typedef.resolveTypedef(JSType t) |
void |
JSTypes.setBooleanInstance(JSType t) |
void |
JSTypes.setNumberInstance(JSType t) |
void |
JSTypes.setRegexpInstance(JSType regexpInstance) |
void |
JSTypes.setStringInstance(JSType t) |
JSType |
JSType.specialize(JSType other) |
private JSType |
JSType.specializeHelper(JSType other) |
private static JSType |
FunctionType.substGenericsInNomType(JSType nt,
java.util.Map<java.lang.String,JSType> typeMap) |
(package private) static JSType |
JSType.unifyUnknowns(JSType t1,
JSType t2)
Unify the two types symmetrically, given that we have already instantiated
the type variables of interest in
t1 and t2 , treating
JSType.UNKNOWN as a "hole" to be filled. |
boolean |
JSType.unifyWith(JSType other,
java.util.List<java.lang.String> typeParameters,
com.google.common.collect.Multimap<java.lang.String,JSType> typeMultimap)
Unify
this , which may contain free type variables,
with other , a concrete subtype, modifying the supplied
typeMultimap to add any new template variable type bindings. |
(package private) boolean |
JSType.unifyWithSubtype(JSType other,
java.util.List<java.lang.String> typeParameters,
com.google.common.collect.Multimap<java.lang.String,JSType> typeMultimap,
SubtypeCache subSuperMap) |
private static void |
JSType.updateTypemap(com.google.common.collect.Multimap<java.lang.String,JSType> typeMultimap,
java.lang.String typeParam,
JSType type) |
JSType |
JSType.withDeclaredProperty(QualifiedName qname,
JSType type,
boolean isConstant) |
(package private) static com.google.common.collect.ImmutableSet<ObjectType> |
ObjectType.withDeclaredProperty(java.util.Set<ObjectType> objs,
QualifiedName qname,
JSType type,
boolean isConstant) |
JSType |
JSType.withProperty(QualifiedName qname,
JSType type) |
(package private) ObjectType |
ObjectType.withProperty(QualifiedName qname,
JSType type) |
(package private) static com.google.common.collect.ImmutableSet<ObjectType> |
ObjectType.withProperty(java.util.Set<ObjectType> objs,
QualifiedName qname,
JSType type) |
private ObjectType |
ObjectType.withPropertyHelper(QualifiedName qname,
JSType type,
boolean isDeclared,
boolean isConstant) |
DeclaredFunctionType |
DeclaredFunctionType.withReceiverType(JSType newReceiverType) |
Modifier and Type | Method and Description |
---|---|
private static java.util.List<JSType> |
JSTypeCreatorFromJSDoc.fixLengthOfTypeList(int desiredLength,
java.util.List<JSType> typeList) |
(package private) NominalType |
NominalType.instantiateGenerics(java.util.List<JSType> types) |
(package private) NominalType |
NominalType.instantiateGenerics(java.util.Map<java.lang.String,JSType> newTypeMap) |
FunctionType |
FunctionType.instantiateGenerics(java.util.Map<java.lang.String,JSType> typeMap) |
FunctionType |
FunctionType.instantiateGenericsFromArgumentTypes(java.util.List<JSType> argTypes) |
(package private) static DeclaredFunctionType |
DeclaredFunctionType.make(java.util.List<JSType> requiredFormals,
java.util.List<JSType> optionalFormals,
JSType restFormals,
JSType retType,
JSType nominalType,
JSType receiverType,
com.google.common.collect.ImmutableList<java.lang.String> typeParameters) |
(package private) static DeclaredFunctionType |
DeclaredFunctionType.make(java.util.List<JSType> requiredFormals,
java.util.List<JSType> optionalFormals,
JSType restFormals,
JSType retType,
JSType nominalType,
JSType receiverType,
com.google.common.collect.ImmutableList<java.lang.String> typeParameters) |
(package private) static FunctionType |
FunctionType.normalized(java.util.List<JSType> requiredFormals,
java.util.List<JSType> optionalFormals,
JSType restFormals,
JSType retType,
JSType nominalType,
JSType receiverType,
java.util.Map<java.lang.String,JSType> outerVars,
com.google.common.collect.ImmutableList<java.lang.String> typeParameters,
boolean isLoose) |
(package private) static FunctionType |
FunctionType.normalized(java.util.List<JSType> requiredFormals,
java.util.List<JSType> optionalFormals,
JSType restFormals,
JSType retType,
JSType nominalType,
JSType receiverType,
java.util.Map<java.lang.String,JSType> outerVars,
com.google.common.collect.ImmutableList<java.lang.String> typeParameters,
boolean isLoose) |
(package private) static FunctionType |
FunctionType.normalized(java.util.List<JSType> requiredFormals,
java.util.List<JSType> optionalFormals,
JSType restFormals,
JSType retType,
JSType nominalType,
JSType receiverType,
java.util.Map<java.lang.String,JSType> outerVars,
com.google.common.collect.ImmutableList<java.lang.String> typeParameters,
boolean isLoose) |
private static JSType |
FunctionType.substGenericsInNomType(JSType nt,
java.util.Map<java.lang.String,JSType> typeMap) |
JSType |
JSType.substituteGenerics(java.util.Map<java.lang.String,JSType> concreteTypes) |
(package private) Property |
Property.substituteGenerics(java.util.Map<java.lang.String,JSType> concreteTypes) |
(package private) FunctionType |
FunctionType.substituteGenerics(java.util.Map<java.lang.String,JSType> concreteTypes)
FunctionType#substituteGenerics is called while instantiating prototype
methods of generic nominal types.
|
(package private) ObjectType |
ObjectType.substituteGenerics(java.util.Map<java.lang.String,JSType> concreteTypes) |
private FunctionType |
FunctionType.substituteNominalGenerics(java.util.Map<java.lang.String,JSType> typeMap) |
private FunctionType |
FunctionType.substituteParametricGenerics(java.util.Map<java.lang.String,JSType> typeMap) |
private boolean |
ObjectType.unifyPropsWithSubtype(ObjectType other,
java.util.Set<java.lang.String> thisProps,
java.util.List<java.lang.String> typeParameters,
com.google.common.collect.Multimap<java.lang.String,JSType> typeMultimap,
SubtypeCache subSuperMap) |
boolean |
JSType.unifyWith(JSType other,
java.util.List<java.lang.String> typeParameters,
com.google.common.collect.Multimap<java.lang.String,JSType> typeMultimap)
Unify
this , which may contain free type variables,
with other , a concrete subtype, modifying the supplied
typeMultimap to add any new template variable type bindings. |
(package private) boolean |
FunctionType.unifyWithSubtype(FunctionType other,
java.util.List<java.lang.String> typeParameters,
com.google.common.collect.Multimap<java.lang.String,JSType> typeMultimap,
SubtypeCache subSuperMap) |
(package private) boolean |
JSType.unifyWithSubtype(JSType other,
java.util.List<java.lang.String> typeParameters,
com.google.common.collect.Multimap<java.lang.String,JSType> typeMultimap,
SubtypeCache subSuperMap) |
(package private) boolean |
NominalType.unifyWithSubtype(NominalType other,
java.util.List<java.lang.String> typeParameters,
com.google.common.collect.Multimap<java.lang.String,JSType> typeMultimap,
SubtypeCache subSuperMap) |
(package private) boolean |
ObjectType.unifyWithSubtype(ObjectType other,
java.util.List<java.lang.String> typeParameters,
com.google.common.collect.Multimap<java.lang.String,JSType> typeMultimap,
SubtypeCache subSuperMap)
Unify
this , which may contain free type variables,
with other , a concrete type, modifying the supplied
typeMultimap to add any new template varaible type bindings. |
(package private) boolean |
Property.unifyWithSubtype(Property other,
java.util.List<java.lang.String> typeParameters,
com.google.common.collect.Multimap<java.lang.String,JSType> typeMultimap,
SubtypeCache subSuperMap)
Returns whether unification succeeded
|
private static void |
JSType.updateTypemap(com.google.common.collect.Multimap<java.lang.String,JSType> typeMultimap,
java.lang.String typeParam,
JSType type) |
Constructor and Description |
---|
Declaration(JSType simpleType,
Typedef typedef,
Namespace ns,
DeclaredTypeRegistry funScope,
boolean isTypeVar,
boolean isConstant) |
DeclaredFunctionType(java.util.List<JSType> requiredFormals,
java.util.List<JSType> optionalFormals,
JSType restFormals,
JSType retType,
JSType nominalType,
JSType receiverType,
com.google.common.collect.ImmutableList<java.lang.String> typeParameters) |
FunctionAndSlotType(JSType slotType,
DeclaredFunctionType functionType) |
FunctionType(com.google.common.collect.ImmutableList<JSType> requiredFormals,
com.google.common.collect.ImmutableList<JSType> optionalFormals,
JSType restFormals,
JSType retType,
JSType nominalType,
JSType receiverType,
com.google.common.collect.ImmutableMap<java.lang.String,JSType> outerVars,
com.google.common.collect.ImmutableList<java.lang.String> typeParameters,
boolean isLoose) |
ParameterType(JSType type,
JSTypeCreatorFromJSDoc.ParameterKind kind) |
Property(Node defSite,
JSType inferredType,
JSType declaredType,
Property.Attribute attribute) |
Constructor and Description |
---|
DeclaredFunctionType(java.util.List<JSType> requiredFormals,
java.util.List<JSType> optionalFormals,
JSType restFormals,
JSType retType,
JSType nominalType,
JSType receiverType,
com.google.common.collect.ImmutableList<java.lang.String> typeParameters) |
DeclaredFunctionType(java.util.List<JSType> requiredFormals,
java.util.List<JSType> optionalFormals,
JSType restFormals,
JSType retType,
JSType nominalType,
JSType receiverType,
com.google.common.collect.ImmutableList<java.lang.String> typeParameters) |
FunctionType(com.google.common.collect.ImmutableList<JSType> requiredFormals,
com.google.common.collect.ImmutableList<JSType> optionalFormals,
JSType restFormals,
JSType retType,
JSType nominalType,
JSType receiverType,
com.google.common.collect.ImmutableMap<java.lang.String,JSType> outerVars,
com.google.common.collect.ImmutableList<java.lang.String> typeParameters,
boolean isLoose) |
FunctionType(com.google.common.collect.ImmutableList<JSType> requiredFormals,
com.google.common.collect.ImmutableList<JSType> optionalFormals,
JSType restFormals,
JSType retType,
JSType nominalType,
JSType receiverType,
com.google.common.collect.ImmutableMap<java.lang.String,JSType> outerVars,
com.google.common.collect.ImmutableList<java.lang.String> typeParameters,
boolean isLoose) |
FunctionType(com.google.common.collect.ImmutableList<JSType> requiredFormals,
com.google.common.collect.ImmutableList<JSType> optionalFormals,
JSType restFormals,
JSType retType,
JSType nominalType,
JSType receiverType,
com.google.common.collect.ImmutableMap<java.lang.String,JSType> outerVars,
com.google.common.collect.ImmutableList<java.lang.String> typeParameters,
boolean isLoose) |
NominalType(com.google.common.collect.ImmutableMap<java.lang.String,JSType> typeMap,
RawNominalType rawType) |
TypeEnv(PersistentMap<java.lang.String,JSType> typeMap) |
TypeEnv(PersistentMap<java.lang.String,JSType> typeMap,
PersistentSet<java.lang.String> changedVars) |