Class PullTypeResolutionContext

Index

Constructor methods

Properties

Methods

Constructor methods

constructor(resolver: PullTypeResolver, inTypeCheck?: boolean, fileName?: string): PullTypeResolutionContext

Parameters

  • resolver: PullTypeResolver
  • inTypeCheck?: boolean optional
  • fileName?: string optional

Returns

PullTypeResolutionContext

Properties

private contextStack: any

private enclosingTypeWalker1: any

private enclosingTypeWalker2: any

public fileName: string

private inBaseTypeResolution: any

public inTypeCheck: boolean

private resolver: any

private typeCheckedNodes: any

Methods

private _pushAnyContextualType(type: any, provisional: any, isInferentiallyTyping: any, argContext: any): any

Parameters

  • type: any
  • provisional: any
  • isInferentiallyTyping: any
  • argContext: any

Returns

any

public canTypeCheckAST(ast: AST): boolean

Parameters

Returns

boolean

public doneBaseTypeResolution(wasInBaseTypeResolution: boolean)

Parameters

  • wasInBaseTypeResolution: boolean

public endWalkingTypes(statesWhenStartedWalkingTypes: { stateWhenStartedWalkingTypes1: TypeScript.EnclosingTypeWalkerState; stateWhenStartedWalkingTypes2: TypeScript.EnclosingTypeWalkerState; })

Parameters

  • statesWhenStartedWalkingTypes: { stateWhenStartedWalkingTypes1: TypeScript.EnclosingTypeWalkerState; stateWhenStartedWalkingTypes2: TypeScript.EnclosingTypeWalkerState; }

public fixAllTypeParametersReferencedByType(type: PullTypeSymbol, resolver: PullTypeResolver, argContext?: TypeArgumentInferenceContext): PullTypeSymbol

Parameters

Returns

PullTypeSymbol

public getBothKindOfIndexSignatures(includeAugmentedType1: boolean, includeAugmentedType2: boolean): { indexSigs1: TypeScript.IndexSignatureInfo; indexSigs2: TypeScript.IndexSignatureInfo; }

Parameters

  • includeAugmentedType1: boolean
  • includeAugmentedType2: boolean

Returns

{ indexSigs1: TypeScript.IndexSignatureInfo; indexSigs2: TypeScript.IndexSignatureInfo; }

public getContextualType(): PullTypeSymbol

Returns

PullTypeSymbol

private getCurrentTypeArgumentInferenceContext(): any

Returns

any

public getSymbolForAST(ast: AST): PullSymbol

Parameters

Returns

PullSymbol

public hasProvisionalErrors(): boolean

Returns

boolean

public inProvisionalResolution(): boolean

Returns

boolean

public isInBaseTypeResolution(): boolean

Returns

boolean

public isInferentiallyTyping(): boolean

Returns

boolean

public oneOfClassificationsIsInfinitelyExpanding(): boolean

Returns

boolean

public popAnyContextualType(): PullContextualTypeContext

Returns

PullContextualTypeContext

public postDiagnostic(diagnostic: Diagnostic)

Parameters

public postWalkIndexSignatureReturnTypes(onlySignature?: boolean)

Parameters

  • onlySignature?: boolean optional

public postWalkMemberTypes()

public postWalkParameterTypes()

public postWalkReturnTypes()

public postWalkSignatures()

public postWalkTypeArgument()

public postWalkTypeParameterConstraints()

public propagateContextualType(type: PullTypeSymbol)

Parameters

public pushInferentialType(type: PullTypeSymbol, typeArgumentInferenceContext: TypeArgumentInferenceContext)

Parameters

public pushNewContextualType(type: PullTypeSymbol)

Parameters

public pushProvisionalType(type: PullTypeSymbol)

Parameters

public resetEnclosingTypeWalkerStates(): { enclosingTypeWalkerState1: TypeScript.EnclosingTypeWalkerState; enclosingTypeWalkerState2: TypeScript.EnclosingTypeWalkerState; }

Returns

{ enclosingTypeWalkerState1: TypeScript.EnclosingTypeWalkerState; enclosingTypeWalkerState2: TypeScript.EnclosingTypeWalkerState; }

public setEnclosingTypeForSymbols(symbol1: PullSymbol, symbol2: PullSymbol): { enclosingTypeWalkerState1: TypeScript.EnclosingTypeWalkerState; enclosingTypeWalkerState2: TypeScript.EnclosingTypeWalkerState; }

Parameters

Returns

{ enclosingTypeWalkerState1: TypeScript.EnclosingTypeWalkerState; enclosingTypeWalkerState2: TypeScript.EnclosingTypeWalkerState; }

public setEnclosingTypeWalkerStates(enclosingTypeWalkerStates: { enclosingTypeWalkerState1: TypeScript.EnclosingTypeWalkerState; enclosingTypeWalkerState2: TypeScript.EnclosingTypeWalkerState; })

Parameters

  • enclosingTypeWalkerStates: { enclosingTypeWalkerState1: TypeScript.EnclosingTypeWalkerState; enclosingTypeWalkerState2: TypeScript.EnclosingTypeWalkerState; }

public setSymbolForAST(ast: AST, symbol: PullSymbol)

Parameters

public setTypeChecked(ast: AST)

Parameters

public setTypeInContext(symbol: PullSymbol, type: PullTypeSymbol)

Parameters

public startBaseTypeResolution(): boolean

Returns

boolean

public startWalkingTypes(symbol1: PullTypeSymbol, symbol2: PullTypeSymbol): { stateWhenStartedWalkingTypes1: TypeScript.EnclosingTypeWalkerState; stateWhenStartedWalkingTypes2: TypeScript.EnclosingTypeWalkerState; }

Parameters

Returns

{ stateWhenStartedWalkingTypes1: TypeScript.EnclosingTypeWalkerState; stateWhenStartedWalkingTypes2: TypeScript.EnclosingTypeWalkerState; }

public swapEnclosingTypeWalkers()

public typeCheck(): boolean

Returns

boolean

public walkIndexSignatureReturnTypes(indexSigs: { indexSigs1: TypeScript.IndexSignatureInfo; indexSigs2: TypeScript.IndexSignatureInfo; }, useStringIndexSignature1: boolean, useStringIndexSignature2: boolean, onlySignature?: boolean)

Parameters

  • indexSigs: { indexSigs1: TypeScript.IndexSignatureInfo; indexSigs2: TypeScript.IndexSignatureInfo; }
  • useStringIndexSignature1: boolean
  • useStringIndexSignature2: boolean
  • onlySignature?: boolean optional

public walkMemberTypes(memberName: string)

Parameters

  • memberName: string

public walkParameterTypes(iParam: number)

Parameters

  • iParam: number

public walkReturnTypes()

public walkSignatures(kind: PullElementKind, index: number, index2?: number)

Parameters

public walkTypeArgument(index: number)

Parameters

  • index: number

public walkTypeParameterConstraints(index: number)

Parameters

  • index: number