String qName = lValue.getQualifiedName(); typeRegistry.identifyNonNullableName(qName); typeRegistry.declareType(currentScope, qName, typedefType); return; && rValueType.toMaybeFunctionType().hasInstanceType()) { FunctionType functionType = rValueType.toMaybeFunctionType(); typeRegistry.declareType( currentScope, lValue.getQualifiedName(), functionType.getInstanceType()); } else if (rValue != null) { typeRegistry.declareType(currentScope, lValue.getQualifiedName(), rhsNamedType);
typeRegistry.declareType(name, enumType.getElementsType());
/** * Handle typedefs. * @param candidate A qualified name node. * @param info JSDoc comments. */ private void checkForTypedef(Node candidate, JSDocInfo info) { if (info == null || !info.hasTypedefType()) { return; } String typedef = candidate.getQualifiedName(); if (typedef == null) { return; } // TODO(nicksantos|user): This is a terrible, terrible hack // to bail out on recursive typedefs. We'll eventually need // to handle these properly. typeRegistry.declareType(typedef, unknownType); JSType realType = info.getTypedefType().evaluate(scope, typeRegistry); if (realType == null) { report(JSError.make(candidate, MALFORMED_TYPEDEF, typedef)); } typeRegistry.overwriteDeclaredType(typedef, realType); if (candidate.isGetProp()) { defineSlot(candidate, candidate.getParent(), getNativeType(NO_TYPE), false); } } } // end GlobalScopeBuilder
typeRegistry.declareType(currentScope, name, enumType.getElementsType());
typeRegistry.declareType(fnName, fnType.getInstanceType());
fnName, contents.getSourceNode(), classTemplateTypeNames, makesStructs); if (getScopeDeclaredIn().isGlobal() && !fnName.isEmpty()) { typeRegistry.declareType(fnName, fnType.getInstanceType());
typeRegistry.declareType(currentScope, typedef, unknownType);
typeRegistry.declareType(currentScope, name, aliasedType.getInstanceType());
typeRegistry.declareType(name, functionType.getInstanceType());