<!--
Generated by the pyrx RPG docs pipeline from ../../.rpg/rpg_encoder.json.
Do not edit directly — changes will be overwritten by the next refresh.
Graph repo_sha: 784698179a5627072df39bbe0fcadb55bb7dd408
Graph generated_at: 2026-06-10T00:19:36.841Z
-->
# Type Evaluation

**Feature path:** `Type Evaluation`

## Implementation summary

- **Files:** 25
- **Symbols:** 535

### Primary files

These are the main implementation files attached to this semantic node.

| File | Summary |
| ---- | ------- |
| [packages/pyright/packages/pyright-internal/src/analyzer/checker.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/checker.ts#L1-L7634) | Performs static type checking and traverses parse trees to validate and report diagnostics for a source file |
| [packages/pyright/packages/pyright-internal/src/analyzer/constructorTransform.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/constructorTransform.ts#L1-L488) | Transforms objects created by constructors for special-case behaviors like functools.partial and TypedDicts |
| [packages/pyright/packages/pyright-internal/src/analyzer/constructors.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/constructors.ts#L1-L1133) | Evaluates Python constructor and metaclass calls, validating __new__/__init__ arguments and inferring resulting instance types |
| [packages/pyright/packages/pyright-internal/src/analyzer/dataClasses.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/dataClasses.ts#L1-L1598) | Handles special-case analysis and synthesis for Python dataclasses and dataclass_transform behaviors |
| [packages/pyright/packages/pyright-internal/src/analyzer/decorators.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/decorators.ts#L1-L607) | Evaluates and applies function/class decorators, adjusting types, flags, overloads, properties, and dataclass behavior |
| [packages/pyright/packages/pyright-internal/src/analyzer/enums.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/enums.ts#L1-L751) | Provides type analysis and special-case handling for Python Enum classes and enum members |
| [packages/pyright/packages/pyright-internal/src/analyzer/functionTransform.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/functionTransform.ts#L1-L140) | Adds missing comparison methods to classes decorated with functools.total_ordering |
| [packages/pyright/packages/pyright-internal/src/analyzer/namedTuples.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/namedTuples.ts#L1-L514) | Constructs and manages Python namedtuple class types with named fields and optional type annotations |
| [packages/pyright/packages/pyright-internal/src/analyzer/operations.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/operations.ts#L1-L1405) | Evaluates types and validates semantics for unary, binary, augmented assignment, and ternary Python operators |
| [packages/pyright/packages/pyright-internal/src/analyzer/parameterUtils.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/parameterUtils.ts#L1-L494) | Utilities for analyzing and handling function parameters, param lists, and related parameter typing in the analyzer |
| [packages/pyright/packages/pyright-internal/src/analyzer/properties.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/properties.ts#L1-L563) | Evaluates and constructs Python property types and manages getter/setter/deleter method typing and symbol table entries |
| [packages/pyright/packages/pyright-internal/src/analyzer/protocols.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/protocols.ts#L1-L881) | Provides type evaluation logic for protocol (structural subtyping) classes |
| [packages/pyright/packages/pyright-internal/src/analyzer/tuples.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/tuples.ts#L1-L640) | Tuple type analysis utilities: construct, infer, slice, expand, and assign tuple types for the type evaluator |
| [packages/pyright/packages/pyright-internal/src/analyzer/typeCacheUtils.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/typeCacheUtils.ts#L1-L254) | Tracks speculative type contexts and caches speculative type results for nodes during speculative analysis |
| [packages/pyright/packages/pyright-internal/src/analyzer/typeComplexity.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/typeComplexity.ts#L1-L103) | Computes a complexity score for types to rank candidate types during constraint solving |
| [packages/pyright/packages/pyright-internal/src/analyzer/typeDocStringUtils.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/typeDocStringUtils.ts#L1-L517) | Retrieves and resolves docstrings for modules, classes, functions, variables, and properties including inherited stubs |
| [packages/pyright/packages/pyright-internal/src/analyzer/typeEvaluator.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/typeEvaluator.ts#L1-L28991) | Evaluates types of parse tree nodes within a Python program |
| [packages/pyright/packages/pyright-internal/src/analyzer/typeEvaluatorTypes.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/typeEvaluatorTypes.ts#L1-L900) | Type evaluator interfaces, helper types, constants, and utilities for Pyright's analyzer |
| [packages/pyright/packages/pyright-internal/src/analyzer/typeEvaluatorWithTracker.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/typeEvaluatorWithTracker.ts#L1-L72) | Wraps the type evaluator with logging and timing to track performance of type evaluation entry points |
| [packages/pyright/packages/pyright-internal/src/analyzer/typePrinter.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/typePrinter.ts#L1-L1601) | Produces human-readable string representations of Pyright type objects for diagnostics and display |
| [packages/pyright/packages/pyright-internal/src/analyzer/typePrinterUtils.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/typePrinterUtils.ts#L1-L50) | Formats and escapes string and bytes literals for the type printer |
| [packages/pyright/packages/pyright-internal/src/analyzer/typeUtils.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/typeUtils.ts#L1-L4523) | Utilities and transformers for analyzing and manipulating Type objects used by the type checker |
| [packages/pyright/packages/pyright-internal/src/analyzer/typeWalker.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/typeWalker.ts#L1-L205) | Walks components of a Type graph to visit contained types while preventing infinite recursion |
| [packages/pyright/packages/pyright-internal/src/analyzer/typedDicts.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/typedDicts.ts#L1-L1694) | Provides TypedDict type creation, member resolution, assignment and helper utilities for the analyzer |
| [packages/pyright/packages/pyright-internal/src/analyzer/types.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/types.ts#L1-L4000) | Represents and manipulates Python type abstractions used by the Pyright analyzer |

### Symbol preview (40 of 535)

| Symbol | Kind | Source |
| ------ | ---- | ------ |
| `Checker` | class | [packages/pyright/packages/pyright-internal/src/analyzer/checker.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/checker.ts#L217-L7633) |
| `Checker.check` | method | [packages/pyright/packages/pyright-internal/src/analyzer/checker.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/checker.ts#L244-L282) |
| `Checker.walk` | method | [packages/pyright/packages/pyright-internal/src/analyzer/checker.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/checker.ts#L284-L292) |
| `Checker.visitSuite` | method | [packages/pyright/packages/pyright-internal/src/analyzer/checker.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/checker.ts#L294-L297) |
| `Checker.visitStatementList` | method | [packages/pyright/packages/pyright-internal/src/analyzer/checker.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/checker.ts#L299-L312) |
| `Checker.visitClass` | method | [packages/pyright/packages/pyright-internal/src/analyzer/checker.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/checker.ts#L314-L397) |
| `Checker.visitFunction` | method | [packages/pyright/packages/pyright-internal/src/analyzer/checker.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/checker.ts#L399-L742) |
| `Checker.visitLambda` | method | [packages/pyright/packages/pyright-internal/src/analyzer/checker.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/checker.ts#L744-L793) |
| `Checker.visitCall` | method | [packages/pyright/packages/pyright-internal/src/analyzer/checker.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/checker.ts#L795-L835) |
| `Checker.visitAwait` | method | [packages/pyright/packages/pyright-internal/src/analyzer/checker.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/checker.ts#L837-L855) |
| `Checker.visitFor` | method | [packages/pyright/packages/pyright-internal/src/analyzer/checker.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/checker.ts#L857-L869) |
| `Checker.visitList` | method | [packages/pyright/packages/pyright-internal/src/analyzer/checker.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/checker.ts#L871-L874) |
| `Checker.visitSet` | method | [packages/pyright/packages/pyright-internal/src/analyzer/checker.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/checker.ts#L876-L879) |
| `Checker.visitDictionary` | method | [packages/pyright/packages/pyright-internal/src/analyzer/checker.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/checker.ts#L881-L884) |
| `Checker.visitComprehension` | method | [packages/pyright/packages/pyright-internal/src/analyzer/checker.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/checker.ts#L886-L889) |
| `Checker.visitComprehensionIf` | method | [packages/pyright/packages/pyright-internal/src/analyzer/checker.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/checker.ts#L891-L895) |
| `Checker.visitIf` | method | [packages/pyright/packages/pyright-internal/src/analyzer/checker.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/checker.ts#L897-L901) |
| `Checker.visitWhile` | method | [packages/pyright/packages/pyright-internal/src/analyzer/checker.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/checker.ts#L903-L907) |
| `Checker.visitWith` | method | [packages/pyright/packages/pyright-internal/src/analyzer/checker.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/checker.ts#L909-L924) |
| `Checker.visitReturn` | method | [packages/pyright/packages/pyright-internal/src/analyzer/checker.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/checker.ts#L926-L1053) |
| `Checker.visitYield` | method | [packages/pyright/packages/pyright-internal/src/analyzer/checker.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/checker.ts#L1055-L1065) |
| `Checker.visitYieldFrom` | method | [packages/pyright/packages/pyright-internal/src/analyzer/checker.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/checker.ts#L1067-L1097) |
| `Checker.visitRaise` | method | [packages/pyright/packages/pyright-internal/src/analyzer/checker.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/checker.ts#L1099-L1109) |
| `Checker.visitExcept` | method | [packages/pyright/packages/pyright-internal/src/analyzer/checker.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/checker.ts#L1111-L1122) |
| `Checker.visitAssert` | method | [packages/pyright/packages/pyright-internal/src/analyzer/checker.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/checker.ts#L1124-L1151) |
| `Checker.visitAssignment` | method | [packages/pyright/packages/pyright-internal/src/analyzer/checker.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/checker.ts#L1153-L1194) |
| `Checker.visitAssignmentExpression` | method | [packages/pyright/packages/pyright-internal/src/analyzer/checker.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/checker.ts#L1196-L1199) |
| `Checker.visitAugmentedAssignment` | method | [packages/pyright/packages/pyright-internal/src/analyzer/checker.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/checker.ts#L1201-L1206) |
| `Checker.visitIndex` | method | [packages/pyright/packages/pyright-internal/src/analyzer/checker.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/checker.ts#L1208-L1269) |
| `Checker.visitBinaryOperation` | method | [packages/pyright/packages/pyright-internal/src/analyzer/checker.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/checker.ts#L1271-L1293) |
| `Checker.visitSlice` | method | [packages/pyright/packages/pyright-internal/src/analyzer/checker.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/checker.ts#L1295-L1298) |
| `Checker.visitUnpack` | method | [packages/pyright/packages/pyright-internal/src/analyzer/checker.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/checker.ts#L1300-L1303) |
| `Checker.visitTuple` | method | [packages/pyright/packages/pyright-internal/src/analyzer/checker.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/checker.ts#L1305-L1308) |
| `Checker.visitUnaryOperation` | method | [packages/pyright/packages/pyright-internal/src/analyzer/checker.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/checker.ts#L1310-L1319) |
| `Checker.visitTernary` | method | [packages/pyright/packages/pyright-internal/src/analyzer/checker.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/checker.ts#L1321-L1326) |
| `Checker.visitStringList` | method | [packages/pyright/packages/pyright-internal/src/analyzer/checker.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/checker.ts#L1328-L1416) |
| `Checker.visitFormatString` | method | [packages/pyright/packages/pyright-internal/src/analyzer/checker.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/checker.ts#L1418-L1428) |
| `Checker.visitGlobal` | method | [packages/pyright/packages/pyright-internal/src/analyzer/checker.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/checker.ts#L1430-L1440) |
| `Checker.visitNonlocal` | method | [packages/pyright/packages/pyright-internal/src/analyzer/checker.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/checker.ts#L1442-L1454) |
| `Checker.visitName` | method | [packages/pyright/packages/pyright-internal/src/analyzer/checker.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/checker.ts#L1456-L1470) |
| _495 additional symbols omitted_ |  |  |

## Dependencies

**Imported by:**

- `packages/pyright/packages/pyright-internal/src/analyzer/codeFlowEngine.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/constraintSolution.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/constraintSolver.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/constraintTracker.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/packageTypeVerifier.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/parseTreeUtils.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/patternMatching.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/program.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/sentinel.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/sourceFile.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/sourceMapper.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/symbol.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/testWalker.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/tracePrinter.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/typeGuards.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/typeStubWriter.ts`
- `packages/pyright/packages/pyright-internal/src/common/extensibility.ts`
- `packages/pyright/packages/pyright-internal/src/common/languageInfoUtils.ts`
- `packages/pyright/packages/pyright-internal/src/common/lspUtils.ts`
- `packages/pyright/packages/pyright-internal/src/languageService/callHierarchyProvider.ts`
- `packages/pyright/packages/pyright-internal/src/languageService/completionProvider.ts`
- `packages/pyright/packages/pyright-internal/src/languageService/completionProviderUtils.ts`
- `packages/pyright/packages/pyright-internal/src/languageService/definitionProvider.ts`
- `packages/pyright/packages/pyright-internal/src/languageService/documentSymbolCollector.ts`
- `packages/pyright/packages/pyright-internal/src/languageService/hoverProvider.ts`
- `packages/pyright/packages/pyright-internal/src/languageService/referencesProvider.ts`
- `packages/pyright/packages/pyright-internal/src/languageService/signatureHelpProvider.ts`
- `packages/pyright/packages/pyright-internal/src/languageService/tooltipUtils.ts`

**Imports:**

- `packages/pyright/packages/pyright-internal/src/analyzer/analyzerFileInfo.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/analyzerNodeInfo.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/codeFlowEngine.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/codeFlowTypes.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/constraintSolution.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/constraintSolver.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/constraintTracker.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/declaration.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/declarationUtils.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/deprecatedSymbols.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/docStringConversion.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/importResult.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/importStatementUtils.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/parseTreeUtils.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/parseTreeWalker.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/patternMatching.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/scope.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/scopeUtils.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/sentinel.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/sourceFile.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/sourceMapper.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/staticExpressions.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/symbol.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/symbolNameUtils.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/symbolUtils.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/tracePrinter.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/typeGuards.ts`
- `packages/pyright/packages/pyright-internal/src/commands/commands.ts`
- `packages/pyright/packages/pyright-internal/src/common/cancellationUtils.ts`
- `packages/pyright/packages/pyright-internal/src/common/collectionUtils.ts`
- `packages/pyright/packages/pyright-internal/src/common/configOptions.ts`
- `packages/pyright/packages/pyright-internal/src/common/console.ts`
- `packages/pyright/packages/pyright-internal/src/common/core.ts`
- `packages/pyright/packages/pyright-internal/src/common/debug.ts`
- `packages/pyright/packages/pyright-internal/src/common/diagnostic.ts`
- `packages/pyright/packages/pyright-internal/src/common/diagnosticRules.ts`
- `packages/pyright/packages/pyright-internal/src/common/logTracker.ts`
- `packages/pyright/packages/pyright-internal/src/common/positionUtils.ts`
- `packages/pyright/packages/pyright-internal/src/common/pythonVersion.ts`
- `packages/pyright/packages/pyright-internal/src/common/textRange.ts`
- `packages/pyright/packages/pyright-internal/src/common/timing.ts`
- `packages/pyright/packages/pyright-internal/src/common/uri/uri.ts`
- `packages/pyright/packages/pyright-internal/src/localization/localize.ts`
- `packages/pyright/packages/pyright-internal/src/parser/parseNodes.ts`
- `packages/pyright/packages/pyright-internal/src/parser/parser.ts`
- `packages/pyright/packages/pyright-internal/src/parser/stringTokenUtils.ts`
- `packages/pyright/packages/pyright-internal/src/parser/tokenizer.ts`
- `packages/pyright/packages/pyright-internal/src/parser/tokenizerTypes.ts`
