初始化上传
Some checks failed
Run mypy_primer on push / Run mypy_primer on push (push) Has been cancelled
Validation / Typecheck (push) Has been cancelled
Validation / Style (push) Has been cancelled
Validation / Test macos-latest (push) Has been cancelled
Validation / Test ubuntu-latest (push) Has been cancelled
Validation / Test windows-latest (push) Has been cancelled
Validation / Build (push) Has been cancelled
Validation / Required (push) Has been cancelled

This commit is contained in:
2026-07-24 17:08:39 +08:00
commit e9e4693333
7516 changed files with 768821 additions and 0 deletions

View File

@@ -0,0 +1,24 @@
title: Semantic graph nodes
nav:
- CLI and VS Code Extension:
- Overview: feat-cli-and-vs-code-extension.md
- Constraint Solving and Type Variables:
- Overview: feat-constraint-solving-and-type-variables.md
- Diagnostics and Configuration:
- Overview: feat-diagnostics-and-configuration.md
- Documentation and Comments:
- Overview: feat-documentation-and-comments.md
- Flow Narrowing and Type Guards:
- Overview: feat-flow-narrowing-and-type-guards.md
- Import Resolution and Packaging:
- Overview: feat-import-resolution-and-packaging.md
- Language Service Providers:
- Overview: feat-language-service-providers.md
- Parser, Binder, and Symbols:
- Overview: feat-parser-binder-and-symbols.md
- Program Analysis and Scheduling:
- Overview: feat-program-analysis-and-scheduling.md
- Shared Runtime Infrastructure:
- Overview: feat-shared-runtime-infrastructure.md
- Type Evaluation:
- Overview: feat-type-evaluation.md

View File

@@ -0,0 +1,141 @@
<!--
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
-->
# CLI and VS Code Extension
**Feature path:** `CLI and VS Code Extension`
## Implementation summary
- **Files:** 11
- **Symbols:** 78
### Primary files
These are the main implementation files attached to this semantic node.
| File | Summary |
| ---- | ------- |
| [packages/pyright/packages/pyright-internal/src/nodeMain.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/nodeMain.ts#L1-L23) | Entrypoint that starts the Pyright Node server and its background analysis runner |
| [packages/pyright/packages/pyright-internal/src/nodeServer.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/nodeServer.ts#L1-L29) | Starts and configures the Pyright language server in Node, initializing deps and handling main vs worker threads |
| [packages/pyright/packages/pyright-internal/src/pyright.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/pyright.ts#L1-L1400) | Command-line entry point for the Pyright type checker, handling CLI args, diagnostics, and running analysis |
| [packages/pyright/packages/pyright-internal/src/pyrightFileSystem.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/pyrightFileSystem.ts#L1-L50) | FileSystem wrapper that remaps URIs and delegates mutable file operations to an underlying real filesystem |
| [packages/pyright/packages/pyright-internal/src/server.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/server.ts#L1-L333) | Implements the Pyright language server, handling workspace settings, background analysis, commands, and code actions |
| [packages/pyright/packages/pyright-internal/src/workspaceFactory.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/workspaceFactory.ts#L1-L457) | Manages creation, initialization, and lifecycle of language server workspaces for the Pyright analyzer |
| [packages/pyright/packages/pyright/src/langserver.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright/src/langserver.ts#L1-L5) | Starts the Pyright command-line entrypoint with zero worker threads |
| [packages/pyright/packages/pyright/src/pyright.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright/src/pyright.ts#L1-L4) | Starts the Pyright CLI |
| [packages/pyright/packages/vscode-pyright/src/cancellationUtils.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/vscode-pyright/src/cancellationUtils.ts#L1-L99) | Provides a file-based cancellation strategy for the language server protocol |
| [packages/pyright/packages/vscode-pyright/src/extension.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/vscode-pyright/src/extension.ts#L1-L407) | Registers and manages the Pyright language server client and related VS Code commands and configuration |
| [packages/pyright/packages/vscode-pyright/src/server.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/vscode-pyright/src/server.ts#L1-L7) | Starts the Pyright VS Code language server with one background worker |
### Symbol preview (40 of 78)
| Symbol | Kind | Source |
| ------ | ---- | ------ |
| `main` | function | [packages/pyright/packages/pyright-internal/src/nodeMain.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/nodeMain.ts#L14-L22) |
| `run` | function | [packages/pyright/packages/pyright-internal/src/nodeServer.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/nodeServer.ts#L16-L24) |
| `getConnectionOptions` | function | [packages/pyright/packages/pyright-internal/src/nodeServer.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/nodeServer.ts#L26-L28) |
| `processArgs` | function | [packages/pyright/packages/pyright-internal/src/pyright.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/pyright.ts#L150-L452) |
| `runSingleThreaded` | function | [packages/pyright/packages/pyright-internal/src/pyright.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/pyright.ts#L454-L571) |
| `runMultiThreaded` | function | [packages/pyright/packages/pyright-internal/src/pyright.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/pyright.ts#L573-L777) |
| `runWorkerMessageLoop` | function | [packages/pyright/packages/pyright-internal/src/pyright.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/pyright.ts#L781-L871) |
| `verifyPackageTypes` | function | [packages/pyright/packages/pyright-internal/src/pyright.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/pyright.ts#L873-L909) |
| `accumulateReportDiagnosticStats` | function | [packages/pyright/packages/pyright-internal/src/pyright.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/pyright.ts#L911-L919) |
| `buildTypeCompletenessReport` | function | [packages/pyright/packages/pyright-internal/src/pyright.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/pyright.ts#L921-L1043) |
| `printTypeCompletenessReportText` | function | [packages/pyright/packages/pyright-internal/src/pyright.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/pyright.ts#L1045-L1147) |
| `printUsage` | function | [packages/pyright/packages/pyright-internal/src/pyright.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/pyright.ts#L1149-L1177) |
| `getVersionString` | function | [packages/pyright/packages/pyright-internal/src/pyright.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/pyright.ts#L1179-L1183) |
| `printVersion` | function | [packages/pyright/packages/pyright-internal/src/pyright.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/pyright.ts#L1185-L1187) |
| `reportDiagnosticsAsJson` | function | [packages/pyright/packages/pyright-internal/src/pyright.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/pyright.ts#L1189-L1237) |
| `isDiagnosticIncluded` | function | [packages/pyright/packages/pyright-internal/src/pyright.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/pyright.ts#L1239-L1252) |
| `convertDiagnosticCategoryToSeverity` | function | [packages/pyright/packages/pyright-internal/src/pyright.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/pyright.ts#L1254-L1268) |
| `convertDiagnosticToJson` | function | [packages/pyright/packages/pyright-internal/src/pyright.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/pyright.ts#L1270-L1278) |
| `reportDiagnosticsAsText` | function | [packages/pyright/packages/pyright-internal/src/pyright.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/pyright.ts#L1280-L1329) |
| `logDiagnosticToConsole` | function | [packages/pyright/packages/pyright-internal/src/pyright.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/pyright.ts#L1331-L1364) |
| `parseThreadsArgValue` | function | [packages/pyright/packages/pyright-internal/src/pyright.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/pyright.ts#L1366-L1377) |
| `main` | function | [packages/pyright/packages/pyright-internal/src/pyright.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/pyright.ts#L1383-L1399) |
| `PyrightFileSystem` | class | [packages/pyright/packages/pyright-internal/src/pyrightFileSystem.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/pyrightFileSystem.ts#L17-L49) |
| `PyrightFileSystem.mkdirSync` | method | [packages/pyright/packages/pyright-internal/src/pyrightFileSystem.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/pyrightFileSystem.ts#L22-L24) |
| `PyrightFileSystem.chdir` | method | [packages/pyright/packages/pyright-internal/src/pyrightFileSystem.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/pyrightFileSystem.ts#L26-L28) |
| `PyrightFileSystem.writeFileSync` | method | [packages/pyright/packages/pyright-internal/src/pyrightFileSystem.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/pyrightFileSystem.ts#L30-L32) |
| `PyrightFileSystem.rmdirSync` | method | [packages/pyright/packages/pyright-internal/src/pyrightFileSystem.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/pyrightFileSystem.ts#L34-L36) |
| `PyrightFileSystem.unlinkSync` | method | [packages/pyright/packages/pyright-internal/src/pyrightFileSystem.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/pyrightFileSystem.ts#L38-L40) |
| `PyrightFileSystem.createWriteStream` | method | [packages/pyright/packages/pyright-internal/src/pyrightFileSystem.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/pyrightFileSystem.ts#L42-L44) |
| `PyrightFileSystem.copyFileSync` | method | [packages/pyright/packages/pyright-internal/src/pyrightFileSystem.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/pyrightFileSystem.ts#L46-L48) |
| `PyrightServer` | class | [packages/pyright/packages/pyright-internal/src/server.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/server.ts#L49-L332) |
| `PyrightServer.getSettings` | method | [packages/pyright/packages/pyright-internal/src/server.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/server.ts#L95-L224) |
| `PyrightServer.createBackgroundAnalysis` | method | [packages/pyright/packages/pyright-internal/src/server.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/server.ts#L226-L234) |
| `PyrightServer.createHost` | method | [packages/pyright/packages/pyright-internal/src/server.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/server.ts#L236-L238) |
| `PyrightServer.createImportResolver` | method | [packages/pyright/packages/pyright-internal/src/server.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/server.ts#L240-L252) |
| `PyrightServer.executeCommand` | method | [packages/pyright/packages/pyright-internal/src/server.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/server.ts#L254-L256) |
| `PyrightServer.isLongRunningCommand` | method | [packages/pyright/packages/pyright-internal/src/server.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/server.ts#L258-L260) |
| `PyrightServer.isRefactoringCommand` | method | [packages/pyright/packages/pyright-internal/src/server.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/server.ts#L262-L264) |
| `PyrightServer.executeCodeAction` | method | [packages/pyright/packages/pyright-internal/src/server.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/server.ts#L266-L275) |
| `PyrightServer.createProgressReporter` | method | [packages/pyright/packages/pyright-internal/src/server.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/server.ts#L277-L323) |
| _38 additional symbols omitted_ | | |
## Dependencies
**Imported by:**
- `packages/pyright/packages/pyright-internal/src/commands/createTypeStub.ts`
- `packages/pyright/packages/pyright-internal/src/commands/dumpFileDebugInfoCommand.ts`
- `packages/pyright/packages/pyright-internal/src/common/envVarUtils.ts`
- `packages/pyright/packages/pyright-internal/src/common/languageServerInterface.ts`
- `packages/pyright/packages/pyright-internal/src/languageServerBase.ts`
- `packages/pyright/packages/pyright-internal/src/languageService/analyzerServiceExecutor.ts`
- `packages/pyright/packages/pyright-internal/src/languageService/codeActionProvider.ts`
- `packages/pyright/packages/pyright-internal/src/languageService/fileWatcherDynamicFeature.ts`
- `packages/pyright/packages/pyright-internal/src/languageService/workspaceSymbolProvider.ts`
**Imports:**
- `packages/pyright/packages/pyright-internal/src/analyzer/analysis.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/cacheManager.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/packageTypeReport.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/packageTypeVerifier.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/pythonPathUtils.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/service.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/sourceFile.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/sourceFileInfo.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/typeStubWriter.ts`
- `packages/pyright/packages/pyright-internal/src/backgroundAnalysis.ts`
- `packages/pyright/packages/pyright-internal/src/backgroundAnalysisBase.ts`
- `packages/pyright/packages/pyright-internal/src/commands/commandController.ts`
- `packages/pyright/packages/pyright-internal/src/common/asyncInitialization.ts`
- `packages/pyright/packages/pyright-internal/src/common/cancellationUtils.ts`
- `packages/pyright/packages/pyright-internal/src/common/chokidarFileWatcherProvider.ts`
- `packages/pyright/packages/pyright-internal/src/common/commandLineOptions.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/deferred.ts`
- `packages/pyright/packages/pyright-internal/src/common/diagnostic.ts`
- `packages/pyright/packages/pyright-internal/src/common/diagnosticSink.ts`
- `packages/pyright/packages/pyright-internal/src/common/envVarUtils.ts`
- `packages/pyright/packages/pyright-internal/src/common/fileBasedCancellationUtils.ts`
- `packages/pyright/packages/pyright-internal/src/common/fileSystem.ts`
- `packages/pyright/packages/pyright-internal/src/common/fullAccessHost.ts`
- `packages/pyright/packages/pyright-internal/src/common/host.ts`
- `packages/pyright/packages/pyright-internal/src/common/languageServerInterface.ts`
- `packages/pyright/packages/pyright-internal/src/common/pathUtils.ts`
- `packages/pyright/packages/pyright-internal/src/common/progressReporter.ts`
- `packages/pyright/packages/pyright-internal/src/common/pythonVersion.ts`
- `packages/pyright/packages/pyright-internal/src/common/realFileSystem.ts`
- `packages/pyright/packages/pyright-internal/src/common/serviceKeys.ts`
- `packages/pyright/packages/pyright-internal/src/common/serviceProvider.ts`
- `packages/pyright/packages/pyright-internal/src/common/serviceProviderExtensions.ts`
- `packages/pyright/packages/pyright-internal/src/common/streamUtils.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/common/uri/uriUtils.ts`
- `packages/pyright/packages/pyright-internal/src/languageServerBase.ts`
- `packages/pyright/packages/pyright-internal/src/languageService/codeActionProvider.ts`
- `packages/pyright/packages/pyright-internal/src/partialStubService.ts`
- `packages/pyright/packages/pyright-internal/src/readonlyAugmentedFileSystem.ts`

View File

@@ -0,0 +1,98 @@
<!--
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
-->
# Constraint Solving and Type Variables
**Feature path:** `Constraint Solving and Type Variables`
## Implementation summary
- **Files:** 3
- **Symbols:** 57
### Primary files
These are the main implementation files attached to this semantic node.
| File | Summary |
| ---- | ------- |
| [packages/pyright/packages/pyright-internal/src/analyzer/constraintSolution.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/constraintSolution.ts#L1-L90) | Holds mappings from type variables to resolved types and manages multiple constraint solution sets |
| [packages/pyright/packages/pyright-internal/src/analyzer/constraintSolver.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/constraintSolver.ts#L1-L1450) | Solves TypeVar, TypeVarTuple, and ParamSpec constraints to infer concrete types based on collected constraints |
| [packages/pyright/packages/pyright-internal/src/analyzer/constraintTracker.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/constraintTracker.ts#L1-L288) | Tracks and manages constraint sets and bounds for type variables used by the constraint solver |
### Symbol preview (40 of 57)
| Symbol | Kind | Source |
| ------ | ---- | ------ |
| `ConstraintSolutionSet` | class | [packages/pyright/packages/pyright-internal/src/analyzer/constraintSolution.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/constraintSolution.ts#L15-L51) |
| `ConstraintSolutionSet.isEmpty` | method | [packages/pyright/packages/pyright-internal/src/analyzer/constraintSolution.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/constraintSolution.ts#L23-L25) |
| `ConstraintSolutionSet.getType` | method | [packages/pyright/packages/pyright-internal/src/analyzer/constraintSolution.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/constraintSolution.ts#L29-L32) |
| `ConstraintSolutionSet.setType` | method | [packages/pyright/packages/pyright-internal/src/analyzer/constraintSolution.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/constraintSolution.ts#L34-L37) |
| `ConstraintSolutionSet.hasType` | method | [packages/pyright/packages/pyright-internal/src/analyzer/constraintSolution.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/constraintSolution.ts#L39-L42) |
| `ConstraintSolutionSet.doForEachTypeVar` | method | [packages/pyright/packages/pyright-internal/src/analyzer/constraintSolution.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/constraintSolution.ts#L44-L50) |
| `ConstraintSolution` | class | [packages/pyright/packages/pyright-internal/src/analyzer/constraintSolution.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/constraintSolution.ts#L53-L89) |
| `ConstraintSolution.isEmpty` | method | [packages/pyright/packages/pyright-internal/src/analyzer/constraintSolution.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/constraintSolution.ts#L61-L63) |
| `ConstraintSolution.setType` | method | [packages/pyright/packages/pyright-internal/src/analyzer/constraintSolution.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/constraintSolution.ts#L65-L69) |
| `ConstraintSolution.getMainSolutionSet` | method | [packages/pyright/packages/pyright-internal/src/analyzer/constraintSolution.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/constraintSolution.ts#L71-L73) |
| `ConstraintSolution.getSolutionSets` | method | [packages/pyright/packages/pyright-internal/src/analyzer/constraintSolution.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/constraintSolution.ts#L75-L77) |
| `ConstraintSolution.doForEachSolutionSet` | method | [packages/pyright/packages/pyright-internal/src/analyzer/constraintSolution.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/constraintSolution.ts#L79-L83) |
| `ConstraintSolution.getSolutionSet` | method | [packages/pyright/packages/pyright-internal/src/analyzer/constraintSolution.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/constraintSolution.ts#L85-L88) |
| `assignTypeVar` | function | [packages/pyright/packages/pyright-internal/src/analyzer/constraintSolver.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/constraintSolver.ts#L90-L215) |
| `solveConstraints` | function | [packages/pyright/packages/pyright-internal/src/analyzer/constraintSolver.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/constraintSolver.ts#L218-L231) |
| `applySourceSolutionToConstraints` | function | [packages/pyright/packages/pyright-internal/src/analyzer/constraintSolver.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/constraintSolver.ts#L234-L249) |
| `solveConstraintSet` | function | [packages/pyright/packages/pyright-internal/src/analyzer/constraintSolver.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/constraintSolver.ts#L251-L264) |
| `solveTypeVarRecursive` | function | [packages/pyright/packages/pyright-internal/src/analyzer/constraintSolver.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/constraintSolver.ts#L266-L327) |
| `addConstraintsForExpectedType` | function | [packages/pyright/packages/pyright-internal/src/analyzer/constraintSolver.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/constraintSolver.ts#L335-L512) |
| `stripLiteralsForLowerBound` | function | [packages/pyright/packages/pyright-internal/src/analyzer/constraintSolver.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/constraintSolver.ts#L514-L518) |
| `getTypeVarType` | function | [packages/pyright/packages/pyright-internal/src/analyzer/constraintSolver.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/constraintSolver.ts#L520-L574) |
| `assignBoundTypeVar` | function | [packages/pyright/packages/pyright-internal/src/analyzer/constraintSolver.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/constraintSolver.ts#L579-L618) |
| `assignUnconstrainedTypeVar` | function | [packages/pyright/packages/pyright-internal/src/analyzer/constraintSolver.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/constraintSolver.ts#L622-L1005) |
| `assignConstrainedTypeVar` | function | [packages/pyright/packages/pyright-internal/src/analyzer/constraintSolver.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/constraintSolver.ts#L1008-L1198) |
| `assignParamSpec` | function | [packages/pyright/packages/pyright-internal/src/analyzer/constraintSolver.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/constraintSolver.ts#L1201-L1309) |
| `typeVarOccursIn` | function | [packages/pyright/packages/pyright-internal/src/analyzer/constraintSolver.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/constraintSolver.ts#L1317-L1342) |
| `widenTypeForTypeVarTuple` | function | [packages/pyright/packages/pyright-internal/src/analyzer/constraintSolver.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/constraintSolver.ts#L1347-L1375) |
| `stripLiteralValueForUnpackedTuple` | function | [packages/pyright/packages/pyright-internal/src/analyzer/constraintSolver.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/constraintSolver.ts#L1379-L1404) |
| `logConstraints` | function | [packages/pyright/packages/pyright-internal/src/analyzer/constraintSolver.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/constraintSolver.ts#L1408-L1420) |
| `logTypeVarConstraintSet` | function | [packages/pyright/packages/pyright-internal/src/analyzer/constraintSolver.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/constraintSolver.ts#L1422-L1449) |
| `ConstraintSet` | class | [packages/pyright/packages/pyright-internal/src/analyzer/constraintTracker.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/constraintTracker.ts#L40-L183) |
| `ConstraintSet.clone` | method | [packages/pyright/packages/pyright-internal/src/analyzer/constraintTracker.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/constraintTracker.ts#L57-L69) |
| `ConstraintSet.isSame` | method | [packages/pyright/packages/pyright-internal/src/analyzer/constraintTracker.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/constraintTracker.ts#L71-L97) |
| `ConstraintSet.isEmpty` | method | [packages/pyright/packages/pyright-internal/src/analyzer/constraintTracker.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/constraintTracker.ts#L99-L101) |
| `ConstraintSet.getScore` | method | [packages/pyright/packages/pyright-internal/src/analyzer/constraintTracker.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/constraintTracker.ts#L105-L123) |
| `ConstraintSet.setBounds` | method | [packages/pyright/packages/pyright-internal/src/analyzer/constraintTracker.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/constraintTracker.ts#L125-L133) |
| `ConstraintSet.doForEachTypeVar` | method | [packages/pyright/packages/pyright-internal/src/analyzer/constraintTracker.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/constraintTracker.ts#L135-L137) |
| `ConstraintSet.getTypeVar` | method | [packages/pyright/packages/pyright-internal/src/analyzer/constraintTracker.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/constraintTracker.ts#L139-L142) |
| `ConstraintSet.getTypeVars` | method | [packages/pyright/packages/pyright-internal/src/analyzer/constraintTracker.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/constraintTracker.ts#L144-L152) |
| `ConstraintSet.addScopeId` | method | [packages/pyright/packages/pyright-internal/src/analyzer/constraintTracker.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/constraintTracker.ts#L154-L160) |
| _17 additional symbols omitted_ | | |
## Dependencies
**Imported by:**
- `packages/pyright/packages/pyright-internal/src/analyzer/checker.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/constructorTransform.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/constructors.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/dataClasses.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/patternMatching.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/properties.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/protocols.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/tuples.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/typeEvaluator.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/typeEvaluatorTypes.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/typeGuards.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/typeUtils.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/typedDicts.ts`
**Imports:**
- `packages/pyright/packages/pyright-internal/src/analyzer/typeComplexity.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/typeEvaluatorTypes.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/typeUtils.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/types.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/localization/localize.ts`

View File

@@ -0,0 +1,170 @@
<!--
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
-->
# Diagnostics and Configuration
**Feature path:** `Diagnostics and Configuration`
## Implementation summary
- **Files:** 15
- **Symbols:** 117
### Primary files
These are the main implementation files attached to this semantic node.
| File | Summary |
| ---- | ------- |
| [packages/pyright/packages/pyright-internal/src/analyzer/deprecatedSymbols.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/deprecatedSymbols.ts#L1-L316) | Maps implicitly deprecated typing and collection symbols to the Python version and suggested replacement |
| [packages/pyright/packages/pyright-internal/src/commands/commandController.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/commands/commandController.ts#L1-L74) | Dispatches language-server commands to their specific handlers and indicates long-running/refactoring commands |
| [packages/pyright/packages/pyright-internal/src/commands/commandResult.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/commands/commandResult.ts#L1-L22) | Defines CommandResult interface representing command output with label, edits, optional data, and a type guard |
| [packages/pyright/packages/pyright-internal/src/commands/commands.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/commands/commands.ts#L1-L22) | Exports an enum of Pyright command identifier strings used by the extension |
| [packages/pyright/packages/pyright-internal/src/commands/createTypeStub.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/commands/createTypeStub.ts#L1-L119) | Creates a language-server command to generate Python type stubs for a specified import and notify the user |
| [packages/pyright/packages/pyright-internal/src/commands/dumpFileDebugInfoCommand.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/commands/dumpFileDebugInfoCommand.ts#L1-L121) | Dumps tokens, syntax nodes, type info (including cached) and code-flow graph for a given file |
| [packages/pyright/packages/pyright-internal/src/commands/quickActionCommand.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/commands/quickActionCommand.ts#L1-L39) | Handles quick action commands for the language server and returns corresponding workspace edits |
| [packages/pyright/packages/pyright-internal/src/commands/restartServer.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/commands/restartServer.ts#L1-L21) | Provides a command to restart the language server |
| [packages/pyright/packages/pyright-internal/src/common/commandLineOptions.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/commandLineOptions.ts#L1-L182) | Defines command-line and language-server configuration option types for Pyright including config and server settings |
| [packages/pyright/packages/pyright-internal/src/common/commandUtils.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/commandUtils.ts#L1-L22) | Helpers to create LSP Command objects with URI arguments converted to string form |
| [packages/pyright/packages/pyright-internal/src/common/configOptions.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/configOptions.ts#L1-L1799) | Defines ExecutionEnvironment and ConfigOptions along with helpers for diagnostic rule sets and file-spec matching |
| [packages/pyright/packages/pyright-internal/src/common/diagnostic.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/diagnostic.ts#L1-L341) | Defines Diagnostic types, serialization, comparison, and addendum helpers for building and formatting diagnostics |
| [packages/pyright/packages/pyright-internal/src/common/diagnosticRules.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/diagnosticRules.ts#L1-L107) | Enumerates string identifiers for configurable diagnostic rules used by the type checker |
| [packages/pyright/packages/pyright-internal/src/common/diagnosticSink.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/diagnosticSink.ts#L1-L202) | Collects and deduplicates file diagnostics and provides a TextRange-aware sink that converts offsets to position ranges |
| [packages/pyright/packages/pyright-internal/src/localization/localize.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/localization/localize.ts#L1-L1704) | Localization utilities and parameterized string formatting for retrieving locale-specific message strings |
### Symbol preview (40 of 117)
| Symbol | Kind | Source |
| ------ | ---- | ------ |
| `CommandController` | class | [packages/pyright/packages/pyright-internal/src/commands/commandController.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/commands/commandController.ts#L22-L73) |
| `CommandController.execute` | method | [packages/pyright/packages/pyright-internal/src/commands/commandController.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/commands/commandController.ts#L35-L57) |
| `CommandController.isLongRunningCommand` | method | [packages/pyright/packages/pyright-internal/src/commands/commandController.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/commands/commandController.ts#L59-L68) |
| `CommandController.isRefactoringCommand` | method | [packages/pyright/packages/pyright-internal/src/commands/commandController.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/commands/commandController.ts#L70-L72) |
| `BaseCreateTypeStubCommand` | class | [packages/pyright/packages/pyright-internal/src/commands/createTypeStub.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/commands/createTypeStub.ts#L19-L99) |
| `BaseCreateTypeStubCommand.createTypeStub` | method | [packages/pyright/packages/pyright-internal/src/commands/createTypeStub.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/commands/createTypeStub.ts#L24-L58) |
| `BaseCreateTypeStubCommand.getCloneOptions` | method | [packages/pyright/packages/pyright-internal/src/commands/createTypeStub.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/commands/createTypeStub.ts#L60-L65) |
| `BaseCreateTypeStubCommand.onTypeStubCreated` | method | [packages/pyright/packages/pyright-internal/src/commands/createTypeStub.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/commands/createTypeStub.ts#L67-L69) |
| `BaseCreateTypeStubCommand.writeTypeStub` | method | [packages/pyright/packages/pyright-internal/src/commands/createTypeStub.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/commands/createTypeStub.ts#L71-L86) |
| `BaseCreateTypeStubCommand.getSuccessMessage` | method | [packages/pyright/packages/pyright-internal/src/commands/createTypeStub.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/commands/createTypeStub.ts#L88-L90) |
| `BaseCreateTypeStubCommand.getCancellationMessage` | method | [packages/pyright/packages/pyright-internal/src/commands/createTypeStub.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/commands/createTypeStub.ts#L92-L94) |
| `BaseCreateTypeStubCommand.getErrorPrefix` | method | [packages/pyright/packages/pyright-internal/src/commands/createTypeStub.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/commands/createTypeStub.ts#L96-L98) |
| `CreateTypeStubCommand` | class | [packages/pyright/packages/pyright-internal/src/commands/createTypeStub.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/commands/createTypeStub.ts#L101-L118) |
| `CreateTypeStubCommand.execute` | method | [packages/pyright/packages/pyright-internal/src/commands/createTypeStub.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/commands/createTypeStub.ts#L106-L117) |
| `DumpFileDebugInfoCommand` | class | [packages/pyright/packages/pyright-internal/src/commands/dumpFileDebugInfoCommand.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/commands/dumpFileDebugInfoCommand.ts#L19-L34) |
| `DumpFileDebugInfoCommand.execute` | method | [packages/pyright/packages/pyright-internal/src/commands/dumpFileDebugInfoCommand.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/commands/dumpFileDebugInfoCommand.ts#L22-L33) |
| `DumpFileDebugInfo` | class | [packages/pyright/packages/pyright-internal/src/commands/dumpFileDebugInfoCommand.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/commands/dumpFileDebugInfoCommand.ts#L36-L120) |
| `DumpFileDebugInfo.dump` | method | [packages/pyright/packages/pyright-internal/src/commands/dumpFileDebugInfoCommand.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/commands/dumpFileDebugInfoCommand.ts#L37-L119) |
| `QuickActionCommand` | class | [packages/pyright/packages/pyright-internal/src/commands/quickActionCommand.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/commands/quickActionCommand.ts#L18-L38) |
| `QuickActionCommand.execute` | method | [packages/pyright/packages/pyright-internal/src/commands/quickActionCommand.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/commands/quickActionCommand.ts#L21-L37) |
| `RestartServerCommand` | class | [packages/pyright/packages/pyright-internal/src/commands/restartServer.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/commands/restartServer.ts#L14-L20) |
| `RestartServerCommand.execute` | method | [packages/pyright/packages/pyright-internal/src/commands/restartServer.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/commands/restartServer.ts#L17-L19) |
| `getDiagnosticSeverityOverrides` | function | [packages/pyright/packages/pyright-internal/src/common/commandLineOptions.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/commandLineOptions.ts#L23-L30) |
| `CommandLineConfigOptions` | class | [packages/pyright/packages/pyright-internal/src/common/commandLineOptions.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/commandLineOptions.ts#L37-L106) |
| `CommandLineLanguageServerOptions` | class | [packages/pyright/packages/pyright-internal/src/common/commandLineOptions.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/commandLineOptions.ts#L109-L152) |
| `CommandLineOptions` | class | [packages/pyright/packages/pyright-internal/src/common/commandLineOptions.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/commandLineOptions.ts#L158-L181) |
| `createCommand` | function | [packages/pyright/packages/pyright-internal/src/common/commandUtils.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/commandUtils.ts#L12-L21) |
| `ExecutionEnvironment` | class | [packages/pyright/packages/pyright-internal/src/common/configOptions.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/configOptions.ts#L42-L86) |
| `cloneDiagnosticRuleSet` | function | [packages/pyright/packages/pyright-internal/src/common/configOptions.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/configOptions.ts#L403-L406) |
| `getBooleanDiagnosticRules` | function | [packages/pyright/packages/pyright-internal/src/common/configOptions.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/configOptions.ts#L410-L431) |
| `getDiagLevelDiagnosticRules` | function | [packages/pyright/packages/pyright-internal/src/common/configOptions.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/configOptions.ts#L435-L519) |
| `getStrictModeNotOverriddenRules` | function | [packages/pyright/packages/pyright-internal/src/common/configOptions.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/configOptions.ts#L521-L525) |
| `getOffDiagnosticRuleSet` | function | [packages/pyright/packages/pyright-internal/src/common/configOptions.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/configOptions.ts#L527-L628) |
| `getBasicDiagnosticRuleSet` | function | [packages/pyright/packages/pyright-internal/src/common/configOptions.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/configOptions.ts#L630-L731) |
| `getStandardDiagnosticRuleSet` | function | [packages/pyright/packages/pyright-internal/src/common/configOptions.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/configOptions.ts#L733-L834) |
| `getStrictDiagnosticRuleSet` | function | [packages/pyright/packages/pyright-internal/src/common/configOptions.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/configOptions.ts#L836-L937) |
| `matchFileSpecs` | function | [packages/pyright/packages/pyright-internal/src/common/configOptions.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/configOptions.ts#L939-L947) |
| `ConfigOptions` | class | [packages/pyright/packages/pyright-internal/src/common/configOptions.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/configOptions.ts#L951-L1777) |
| `ConfigOptions.getDiagnosticRuleSet` | method | [packages/pyright/packages/pyright-internal/src/common/configOptions.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/configOptions.ts#L1091-L1105) |
| `ConfigOptions.getDefaultExecEnvironment` | method | [packages/pyright/packages/pyright-internal/src/common/configOptions.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/configOptions.ts#L1107-L1117) |
| _77 additional symbols omitted_ | | |
## Dependencies
**Imported by:**
- `packages/pyright/packages/pyright-internal/src/analyzer/analysis.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/analyzerFileInfo.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/backgroundAnalysisProgram.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/binder.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/checker.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/commentUtils.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/constraintSolver.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/constructorTransform.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/constructors.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/dataClasses.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/functionTransform.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/importStatementUtils.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/namedTuples.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/operations.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/packageTypeReport.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/packageTypeVerifier.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/properties.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/protocols.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/pythonPathUtils.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/sentinel.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/service.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/tuples.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/typeEvaluator.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/typeEvaluatorTypes.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/typePrinter.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/typedDicts.ts`
- `packages/pyright/packages/pyright-internal/src/backgroundAnalysis.ts`
- `packages/pyright/packages/pyright-internal/src/backgroundAnalysisBase.ts`
- `packages/pyright/packages/pyright-internal/src/backgroundThreadBase.ts`
- `packages/pyright/packages/pyright-internal/src/common/extensibility.ts`
- `packages/pyright/packages/pyright-internal/src/common/fullAccessHost.ts`
- `packages/pyright/packages/pyright-internal/src/common/host.ts`
- `packages/pyright/packages/pyright-internal/src/common/languageServerInterface.ts`
- `packages/pyright/packages/pyright-internal/src/languageServerBase.ts`
- `packages/pyright/packages/pyright-internal/src/languageService/analyzerServiceExecutor.ts`
- `packages/pyright/packages/pyright-internal/src/languageService/autoImporter.ts`
- `packages/pyright/packages/pyright-internal/src/languageService/codeActionProvider.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/hoverProvider.ts`
- `packages/pyright/packages/pyright-internal/src/languageService/quickActions.ts`
- `packages/pyright/packages/pyright-internal/src/languageService/tooltipUtils.ts`
- `packages/pyright/packages/pyright-internal/src/parser/parser.ts`
- `packages/pyright/packages/pyright-internal/src/partialStubService.ts`
- `packages/pyright/packages/pyright-internal/src/pyright.ts`
- `packages/pyright/packages/pyright-internal/src/server.ts`
**Imports:**
- `packages/pyright/packages/pyright-internal/src/analyzer/analyzerNodeInfo.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/importLogger.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/parseTreeUtils.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/pythonPathUtils.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/service.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/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/fileSystem.ts`
- `packages/pyright/packages/pyright-internal/src/common/host.ts`
- `packages/pyright/packages/pyright-internal/src/common/languageInfoUtils.ts`
- `packages/pyright/packages/pyright-internal/src/common/languageServerInterface.ts`
- `packages/pyright/packages/pyright-internal/src/common/pathConsts.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/serviceKeys.ts`
- `packages/pyright/packages/pyright-internal/src/common/serviceProvider.ts`
- `packages/pyright/packages/pyright-internal/src/common/stringUtils.ts`
- `packages/pyright/packages/pyright-internal/src/common/textRange.ts`
- `packages/pyright/packages/pyright-internal/src/common/textRangeCollection.ts`
- `packages/pyright/packages/pyright-internal/src/common/uri/uri.ts`
- `packages/pyright/packages/pyright-internal/src/common/uri/uriUtils.ts`
- `packages/pyright/packages/pyright-internal/src/common/workspaceEditUtils.ts`
- `packages/pyright/packages/pyright-internal/src/languageService/analyzerServiceExecutor.ts`
- `packages/pyright/packages/pyright-internal/src/languageService/quickActions.ts`
- `packages/pyright/packages/pyright-internal/src/workspaceFactory.ts`

View File

@@ -0,0 +1,90 @@
<!--
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
-->
# Documentation and Comments
**Feature path:** `Documentation and Comments`
## Implementation summary
- **Files:** 3
- **Symbols:** 58
### Primary files
These are the main implementation files attached to this semantic node.
| File | Summary |
| ---- | ------- |
| [packages/pyright/packages/pyright-internal/src/analyzer/commentUtils.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/commentUtils.ts#L1-L318) | Parses pyright-specific comments to adjust diagnostic rule settings and collect comment diagnostics |
| [packages/pyright/packages/pyright-internal/src/analyzer/docStringConversion.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/docStringConversion.ts#L1-L873) | Converts Python docstrings into Markdown or cleaned plaintext for documentation and display |
| [packages/pyright/packages/pyright-internal/src/analyzer/docStringUtils.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/docStringUtils.ts#L1-L153) | Parses Python docstrings and extracts parameter and attribute docs in Epytext, reST, and Google styles |
### Symbol preview (40 of 58)
| Symbol | Kind | Source |
| ------ | ---- | ------ |
| `getFileLevelDirectives` | function | [packages/pyright/packages/pyright-internal/src/analyzer/commentUtils.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/commentUtils.ts#L40-L77) |
| `_applyStrictRules` | function | [packages/pyright/packages/pyright-internal/src/analyzer/commentUtils.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/commentUtils.ts#L79-L81) |
| `_applyStandardRules` | function | [packages/pyright/packages/pyright-internal/src/analyzer/commentUtils.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/commentUtils.ts#L83-L85) |
| `_applyBasicRules` | function | [packages/pyright/packages/pyright-internal/src/analyzer/commentUtils.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/commentUtils.ts#L87-L89) |
| `_overrideRules` | function | [packages/pyright/packages/pyright-internal/src/analyzer/commentUtils.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/commentUtils.ts#L91-L127) |
| `_overwriteRules` | function | [packages/pyright/packages/pyright-internal/src/analyzer/commentUtils.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/commentUtils.ts#L129-L140) |
| `_parsePyrightComment` | function | [packages/pyright/packages/pyright-internal/src/analyzer/commentUtils.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/commentUtils.ts#L142-L195) |
| `_parsePyrightOperand` | function | [packages/pyright/packages/pyright-internal/src/analyzer/commentUtils.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/commentUtils.ts#L197-L264) |
| `_parseDiagLevel` | function | [packages/pyright/packages/pyright-internal/src/analyzer/commentUtils.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/commentUtils.ts#L266-L285) |
| `_parseBoolSetting` | function | [packages/pyright/packages/pyright-internal/src/analyzer/commentUtils.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/commentUtils.ts#L287-L295) |
| `_trimTextWithRange` | function | [packages/pyright/packages/pyright-internal/src/analyzer/commentUtils.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/commentUtils.ts#L299-L317) |
| `convertDocStringToMarkdown` | function | [packages/pyright/packages/pyright-internal/src/analyzer/docStringConversion.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/docStringConversion.ts#L22-L24) |
| `convertDocStringToPlainText` | function | [packages/pyright/packages/pyright-internal/src/analyzer/docStringConversion.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/docStringConversion.ts#L29-L43) |
| `DocStringConverter` | class | [packages/pyright/packages/pyright-internal/src/analyzer/docStringConversion.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/docStringConversion.ts#L111-L860) |
| `DocStringConverter.convert` | method | [packages/pyright/packages/pyright-internal/src/analyzer/docStringConversion.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/docStringConversion.ts#L135-L167) |
| `DocStringConverter._eatLine` | method | [packages/pyright/packages/pyright-internal/src/analyzer/docStringConversion.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/docStringConversion.ts#L169-L171) |
| `DocStringConverter._currentLineOrUndefined` | method | [packages/pyright/packages/pyright-internal/src/analyzer/docStringConversion.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/docStringConversion.ts#L173-L175) |
| `DocStringConverter._currentLine` | method | [packages/pyright/packages/pyright-internal/src/analyzer/docStringConversion.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/docStringConversion.ts#L177-L179) |
| `DocStringConverter._currentIndent` | method | [packages/pyright/packages/pyright-internal/src/analyzer/docStringConversion.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/docStringConversion.ts#L181-L183) |
| `DocStringConverter._prevIndent` | method | [packages/pyright/packages/pyright-internal/src/analyzer/docStringConversion.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/docStringConversion.ts#L185-L187) |
| `DocStringConverter._lineAt` | method | [packages/pyright/packages/pyright-internal/src/analyzer/docStringConversion.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/docStringConversion.ts#L189-L191) |
| `DocStringConverter._nextBlockIndent` | method | [packages/pyright/packages/pyright-internal/src/analyzer/docStringConversion.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/docStringConversion.ts#L193-L197) |
| `DocStringConverter._currentLineIsOutsideBlock` | method | [packages/pyright/packages/pyright-internal/src/analyzer/docStringConversion.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/docStringConversion.ts#L199-L201) |
| `DocStringConverter._currentLineWithinBlock` | method | [packages/pyright/packages/pyright-internal/src/analyzer/docStringConversion.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/docStringConversion.ts#L203-L205) |
| `DocStringConverter._pushAndSetState` | method | [packages/pyright/packages/pyright-internal/src/analyzer/docStringConversion.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/docStringConversion.ts#L207-L214) |
| `DocStringConverter._popState` | method | [packages/pyright/packages/pyright-internal/src/analyzer/docStringConversion.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/docStringConversion.ts#L216-L223) |
| `DocStringConverter._parseText` | method | [packages/pyright/packages/pyright-internal/src/analyzer/docStringConversion.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/docStringConversion.ts#L225-L263) |
| `DocStringConverter._formatPlainTextIndent` | method | [packages/pyright/packages/pyright-internal/src/analyzer/docStringConversion.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/docStringConversion.ts#L265-L295) |
| `DocStringConverter._convertIndent` | method | [packages/pyright/packages/pyright-internal/src/analyzer/docStringConversion.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/docStringConversion.ts#L297-L300) |
| `DocStringConverter._escapeHtml` | method | [packages/pyright/packages/pyright-internal/src/analyzer/docStringConversion.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/docStringConversion.ts#L302-L308) |
| `DocStringConverter._appendTextLine` | method | [packages/pyright/packages/pyright-internal/src/analyzer/docStringConversion.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/docStringConversion.ts#L310-L398) |
| `DocStringConverter._preprocessTextLine` | method | [packages/pyright/packages/pyright-internal/src/analyzer/docStringConversion.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/docStringConversion.ts#L400-L410) |
| `DocStringConverter._parseEmpty` | method | [packages/pyright/packages/pyright-internal/src/analyzer/docStringConversion.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/docStringConversion.ts#L412-L420) |
| `DocStringConverter._beginMinIndentCodeBlock` | method | [packages/pyright/packages/pyright-internal/src/analyzer/docStringConversion.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/docStringConversion.ts#L422-L426) |
| `DocStringConverter._beginBacktickBlock` | method | [packages/pyright/packages/pyright-internal/src/analyzer/docStringConversion.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/docStringConversion.ts#L428-L442) |
| `DocStringConverter._parseBacktickBlock` | method | [packages/pyright/packages/pyright-internal/src/analyzer/docStringConversion.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/docStringConversion.ts#L444-L457) |
| `DocStringConverter._beginDocTest` | method | [packages/pyright/packages/pyright-internal/src/analyzer/docStringConversion.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/docStringConversion.ts#L459-L468) |
| `DocStringConverter._parseDocTest` | method | [packages/pyright/packages/pyright-internal/src/analyzer/docStringConversion.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/docStringConversion.ts#L470-L480) |
| `DocStringConverter._beginLiteralBlock` | method | [packages/pyright/packages/pyright-internal/src/analyzer/docStringConversion.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/docStringConversion.ts#L482-L520) |
| `DocStringConverter._parseLiteralBlock` | method | [packages/pyright/packages/pyright-internal/src/analyzer/docStringConversion.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/docStringConversion.ts#L522-L540) |
| _18 additional symbols omitted_ | | |
## Dependencies
**Imported by:**
- `packages/pyright/packages/pyright-internal/src/analyzer/decorators.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/sourceFile.ts`
- `packages/pyright/packages/pyright-internal/src/common/docStringService.ts`
**Imports:**
- `packages/pyright/packages/pyright-internal/src/common/configOptions.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/positionUtils.ts`
- `packages/pyright/packages/pyright-internal/src/common/textRange.ts`
- `packages/pyright/packages/pyright-internal/src/common/textRangeCollection.ts`
- `packages/pyright/packages/pyright-internal/src/localization/localize.ts`
- `packages/pyright/packages/pyright-internal/src/parser/tokenizerTypes.ts`

View File

@@ -0,0 +1,116 @@
<!--
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
-->
# Flow Narrowing and Type Guards
**Feature path:** `Flow Narrowing and Type Guards`
## Implementation summary
- **Files:** 6
- **Symbols:** 67
### Primary files
These are the main implementation files attached to this semantic node.
| File | Summary |
| ---- | ------- |
| [packages/pyright/packages/pyright-internal/src/analyzer/codeFlowEngine.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/codeFlowEngine.ts#L1-L2061) | Determines narrowed types for variables and expressions and computes statement reachability via the code flow graph |
| [packages/pyright/packages/pyright-internal/src/analyzer/codeFlowTypes.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/codeFlowTypes.ts#L1-L286) | Types and helpers for tracking code-flow nodes and reference keys used in Pyright's code flow analysis |
| [packages/pyright/packages/pyright-internal/src/analyzer/codeFlowUtils.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/codeFlowUtils.ts#L1-L446) | Generates an ASCII diagram of a control flow graph from FlowNode structures |
| [packages/pyright/packages/pyright-internal/src/analyzer/patternMatching.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/patternMatching.ts#L1-L2254) | Type evaluation and narrowing utilities for Python structural pattern matching (PEP 634) in Pyright |
| [packages/pyright/packages/pyright-internal/src/analyzer/staticExpressions.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/staticExpressions.ts#L1-L377) | Evaluates parse-node expressions to determine static boolean, version, and platform string outcomes |
| [packages/pyright/packages/pyright-internal/src/analyzer/typeGuards.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/typeGuards.ts#L1-L2814) | Narrow types based on conditional expressions, isinstance checks, and user-defined type guards |
### Symbol preview (40 of 67)
| Symbol | Kind | Source |
| ------ | ---- | ------ |
| `isIncompleteType` | function | [packages/pyright/packages/pyright-internal/src/analyzer/codeFlowEngine.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/codeFlowEngine.ts#L162-L164) |
| `getCodeFlowEngine` | function | [packages/pyright/packages/pyright-internal/src/analyzer/codeFlowEngine.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/codeFlowEngine.ts#L201-L2060) |
| `getUniqueFlowNodeId` | function | [packages/pyright/packages/pyright-internal/src/analyzer/codeFlowTypes.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/codeFlowTypes.ts#L61-L63) |
| `isCodeFlowSupportedForReference` | function | [packages/pyright/packages/pyright-internal/src/analyzer/codeFlowTypes.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/codeFlowTypes.ts#L170-L221) |
| `createKeyForReference` | function | [packages/pyright/packages/pyright-internal/src/analyzer/codeFlowTypes.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/codeFlowTypes.ts#L223-L256) |
| `createKeysForReferenceSubexpressions` | function | [packages/pyright/packages/pyright-internal/src/analyzer/codeFlowTypes.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/codeFlowTypes.ts#L258-L282) |
| `formatControlFlowGraph` | function | [packages/pyright/packages/pyright-internal/src/analyzer/codeFlowUtils.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/codeFlowUtils.ts#L28-L445) |
| `narrowTypeBasedOnPattern` | function | [packages/pyright/packages/pyright-internal/src/analyzer/patternMatching.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/patternMatching.ts#L137-L177) |
| `checkForUnusedPattern` | function | [packages/pyright/packages/pyright-internal/src/analyzer/patternMatching.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/patternMatching.ts#L181-L207) |
| `narrowTypeBasedOnSequencePattern` | function | [packages/pyright/packages/pyright-internal/src/analyzer/patternMatching.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/patternMatching.ts#L209-L422) |
| `narrowTypeBasedOnAsPattern` | function | [packages/pyright/packages/pyright-internal/src/analyzer/patternMatching.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/patternMatching.ts#L424-L450) |
| `narrowTypeBasedOnMappingPattern` | function | [packages/pyright/packages/pyright-internal/src/analyzer/patternMatching.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/patternMatching.ts#L452-L637) |
| `getPositionalMatchArgNames` | function | [packages/pyright/packages/pyright-internal/src/analyzer/patternMatching.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/patternMatching.ts#L641-L666) |
| `narrowTypeBasedOnLiteralPattern` | function | [packages/pyright/packages/pyright-internal/src/analyzer/patternMatching.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/patternMatching.ts#L668-L744) |
| `narrowTypeBasedOnClassPattern` | function | [packages/pyright/packages/pyright-internal/src/analyzer/patternMatching.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/patternMatching.ts#L746-L1067) |
| `isClassSpecialCaseForClassPattern` | function | [packages/pyright/packages/pyright-internal/src/analyzer/patternMatching.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/patternMatching.ts#L1071-L1090) |
| `narrowTypeOfClassPatternArg` | function | [packages/pyright/packages/pyright-internal/src/analyzer/patternMatching.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/patternMatching.ts#L1093-L1171) |
| `narrowTypeBasedOnValuePattern` | function | [packages/pyright/packages/pyright-internal/src/analyzer/patternMatching.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/patternMatching.ts#L1173-L1270) |
| `getMappingPatternInfo` | function | [packages/pyright/packages/pyright-internal/src/analyzer/patternMatching.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/patternMatching.ts#L1274-L1354) |
| `getSequencePatternInfo` | function | [packages/pyright/packages/pyright-internal/src/analyzer/patternMatching.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/patternMatching.ts#L1359-L1681) |
| `getTypeOfPatternSequenceEntry` | function | [packages/pyright/packages/pyright-internal/src/analyzer/patternMatching.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/patternMatching.ts#L1683-L1738) |
| `assignTypeToPatternTargets` | function | [packages/pyright/packages/pyright-internal/src/analyzer/patternMatching.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/patternMatching.ts#L1742-L1981) |
| `wrapTypeInList` | function | [packages/pyright/packages/pyright-internal/src/analyzer/patternMatching.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/patternMatching.ts#L1983-L1998) |
| `validateClassPattern` | function | [packages/pyright/packages/pyright-internal/src/analyzer/patternMatching.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/patternMatching.ts#L2000-L2082) |
| `getPatternSubtypeNarrowingCallback` | function | [packages/pyright/packages/pyright-internal/src/analyzer/patternMatching.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/patternMatching.ts#L2087-L2235) |
| `reportUnnecessaryPattern` | function | [packages/pyright/packages/pyright-internal/src/analyzer/patternMatching.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/patternMatching.ts#L2237-L2253) |
| `evaluateStaticBoolExpression` | function | [packages/pyright/packages/pyright-internal/src/analyzer/staticExpressions.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/staticExpressions.ts#L18-L174) |
| `evaluateStaticBoolLikeExpression` | function | [packages/pyright/packages/pyright-internal/src/analyzer/staticExpressions.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/staticExpressions.ts#L179-L193) |
| `_convertTupleToVersion` | function | [packages/pyright/packages/pyright-internal/src/analyzer/staticExpressions.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/staticExpressions.ts#L195-L251) |
| `_evaluateVersionBinaryOperation` | function | [packages/pyright/packages/pyright-internal/src/analyzer/staticExpressions.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/staticExpressions.ts#L253-L285) |
| `_evaluateStringBinaryOperation` | function | [packages/pyright/packages/pyright-internal/src/analyzer/staticExpressions.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/staticExpressions.ts#L287-L301) |
| `_isSysVersionInfoExpression` | function | [packages/pyright/packages/pyright-internal/src/analyzer/staticExpressions.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/staticExpressions.ts#L303-L313) |
| `_isSysPlatformInfoExpression` | function | [packages/pyright/packages/pyright-internal/src/analyzer/staticExpressions.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/staticExpressions.ts#L315-L325) |
| `_isOsNameInfoExpression` | function | [packages/pyright/packages/pyright-internal/src/analyzer/staticExpressions.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/staticExpressions.ts#L327-L339) |
| `_getExpectedPlatformNameFromPlatform` | function | [packages/pyright/packages/pyright-internal/src/analyzer/staticExpressions.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/staticExpressions.ts#L341-L360) |
| `_getExpectedOsNameFromPlatform` | function | [packages/pyright/packages/pyright-internal/src/analyzer/staticExpressions.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/staticExpressions.ts#L362-L376) |
| `getTypeNarrowingCallback` | function | [packages/pyright/packages/pyright-internal/src/analyzer/typeGuards.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/typeGuards.ts#L117-L861) |
| `getTypeNarrowingCallbackForAliasedCondition` | function | [packages/pyright/packages/pyright-internal/src/analyzer/typeGuards.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/typeGuards.ts#L863-L927) |
| `getDeclsForLocalVar` | function | [packages/pyright/packages/pyright-internal/src/analyzer/typeGuards.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/typeGuards.ts#L932-L980) |
| `getTypeNarrowingCallbackForAssignmentExpression` | function | [packages/pyright/packages/pyright-internal/src/analyzer/typeGuards.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/typeGuards.ts#L982-L993) |
| _27 additional symbols omitted_ | | |
## Dependencies
**Imported by:**
- `packages/pyright/packages/pyright-internal/src/analyzer/analyzerNodeInfo.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/binder.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/checker.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/dataClasses.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/enums.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/namedTuples.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/operations.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/typeEvaluator.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/typeEvaluatorTypes.ts`
**Imports:**
- `packages/pyright/packages/pyright-internal/src/analyzer/analyzerNodeInfo.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/constructors.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/declaration.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/enums.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/parseTreeUtils.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/symbol.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/typeCacheUtils.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/typeEvaluatorTypes.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/typeUtils.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/typedDicts.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/types.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/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/positionUtils.ts`
- `packages/pyright/packages/pyright-internal/src/common/pythonVersion.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/tokenizerTypes.ts`

View File

@@ -0,0 +1,165 @@
<!--
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
-->
# Import Resolution and Packaging
**Feature path:** `Import Resolution and Packaging`
## Implementation summary
- **Files:** 16
- **Symbols:** 267
### Primary files
These are the main implementation files attached to this semantic node.
| File | Summary |
| ---- | ------- |
| [packages/pyright/packages/pyright-internal/src/analyzer/importLogger.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/importLogger.ts#L1-L21) | Provides a simple logger for collecting and retrieving import resolution messages |
| [packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts#L1-L2576) | Resolves Python imports to filesystem modules, packages, typeshed and stub sources for static type analysis |
| [packages/pyright/packages/pyright-internal/src/analyzer/importResolverFileSystem.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/importResolverFileSystem.ts#L1-L203) | Cached file-system adapter for import resolution, exposing directory/file queries and resolvable name lookups |
| [packages/pyright/packages/pyright-internal/src/analyzer/importResolverTypes.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/importResolverTypes.ts#L1-L62) | Type declarations for import resolver helpers including typeshed info provider and a minimal cached filesystem facade |
| [packages/pyright/packages/pyright-internal/src/analyzer/importResult.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/importResult.ts#L1-L109) | Represents Python import resolution results with metadata, resolved URIs, and implicit import info |
| [packages/pyright/packages/pyright-internal/src/analyzer/importStatementUtils.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/importStatementUtils.ts#L1-L1016) | Summarizes and manipulates Python import statements and generates edits for auto-imports and formatting |
| [packages/pyright/packages/pyright-internal/src/analyzer/packageTypeReport.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/packageTypeReport.ts#L1-L113) | Defines types and a factory for package type verification reports, symbols, modules, and diagnostics |
| [packages/pyright/packages/pyright-internal/src/analyzer/packageTypeVerifier.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/packageTypeVerifier.ts#L1-L1582) | Validates public exports of a package to ensure exported types are complete and reports problems |
| [packages/pyright/packages/pyright-internal/src/analyzer/pyTypedUtils.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/pyTypedUtils.ts#L1-L66) | Determines whether a py.typed file exists and if it marks the package as partially typed |
| [packages/pyright/packages/pyright-internal/src/analyzer/pythonPathUtils.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/pythonPathUtils.ts#L1-L251) | Resolves Python interpreter and typeshed search paths, site-packages locations, and .pth-derived paths |
| [packages/pyright/packages/pyright-internal/src/analyzer/sourceEnumerator.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/sourceEnumerator.ts#L1-L234) | Enumerates Python source files with include/exclude rules, tracking symlinked directories and auto-excluding virtualenvs |
| [packages/pyright/packages/pyright-internal/src/analyzer/sourceMapper.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/sourceMapper.ts#L1-L1137) | Maps .pyi stub files to corresponding .py implementation files and provides binding utilities |
| [packages/pyright/packages/pyright-internal/src/analyzer/sourceMapperUtils.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/sourceMapperUtils.ts#L1-L64) | Finds an import chain between two Uri nodes and returns the sequence of Uris |
| [packages/pyright/packages/pyright-internal/src/analyzer/typeStubWriter.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/typeStubWriter.ts#L1-L925) | Emit Python .pyi type stub files from parsed and analyzed Python source files |
| [packages/pyright/packages/pyright-internal/src/analyzer/typeshedInfoProvider.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/typeshedInfoProvider.ts#L1-L253) | Provides typeshed root/subdirectory lookup, third-party package mapping, and stdlib version info |
| [packages/pyright/packages/pyright-internal/src/partialStubService.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/partialStubService.ts#L1-L181) | Maps partially typed stub packages into corresponding installed library directories and provides a no-op alternative |
### Symbol preview (40 of 267)
| Symbol | Kind | Source |
| ------ | ---- | ------ |
| `ImportLogger` | class | [packages/pyright/packages/pyright-internal/src/analyzer/importLogger.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/importLogger.ts#L10-L20) |
| `ImportLogger.log` | method | [packages/pyright/packages/pyright-internal/src/analyzer/importLogger.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/importLogger.ts#L13-L15) |
| `ImportLogger.getLogs` | method | [packages/pyright/packages/pyright-internal/src/analyzer/importLogger.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/importLogger.ts#L17-L19) |
| `createImportedModuleDescriptor` | function | [packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts#L59-L79) |
| `ImportResolver` | class | [packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts#L94-L2480) |
| `ImportResolver.isSupportedImportSourceFile` | method | [packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts#L131-L134) |
| `ImportResolver.isSupportedImportFile` | method | [packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts#L136-L139) |
| `ImportResolver.invalidateCache` | method | [packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts#L141-L150) |
| `ImportResolver.resolveImport` | method | [packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts#L154-L162) |
| `ImportResolver.getCompletionSuggestions` | method | [packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts#L164-L194) |
| `ImportResolver.getConfigOptions` | method | [packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts#L196-L198) |
| `ImportResolver.setConfigOptions` | method | [packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts#L200-L203) |
| `ImportResolver.getSourceFilesFromStub` | method | [packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts#L206-L302) |
| `ImportResolver.getModuleNameForImport` | method | [packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts#L307-L323) |
| `ImportResolver.getTypeshedStdLibPath` | method | [packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts#L325-L332) |
| `ImportResolver.getTypeshedThirdPartyPath` | method | [packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts#L334-L336) |
| `ImportResolver.isStdlibModule` | method | [packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts#L338-L344) |
| `ImportResolver.getImportRoots` | method | [packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts#L346-L393) |
| `ImportResolver.ensurePartialStubPackages` | method | [packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts#L395-L427) |
| `ImportResolver.getPythonSearchPaths` | method | [packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts#L429-L442) |
| `ImportResolver.getTypeshedStdlibExcludeList` | method | [packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts#L444-L501) |
| `ImportResolver.getTypeshedPathEx` | method | [packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts#L505-L507) |
| `ImportResolver.resolveImportInternal` | method | [packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts#L511-L588) |
| `ImportResolver.fileExistsCached` | method | [packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts#L590-L592) |
| `ImportResolver.dirExistsCached` | method | [packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts#L594-L596) |
| `ImportResolver.addResultsToCache` | method | [packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts#L598-L615) |
| `ImportResolver.resolveAbsoluteImport` | method | [packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts#L619-L677) |
| `ImportResolver.resolveImportEx` | method | [packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts#L682-L691) |
| `ImportResolver.resolveNativeImportEx` | method | [packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts#L696-L702) |
| `ImportResolver.getNativeModuleName` | method | [packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts#L704-L710) |
| `ImportResolver.filterImplicitImports` | method | [packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts#L714-L746) |
| `ImportResolver.findImplicitImports` | method | [packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts#L748-L840) |
| `ImportResolver._isPossibleImportDir` | method | [packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts#L842-L862) |
| `ImportResolver._resolveImportStrict` | method | [packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts#L864-L988) |
| `ImportResolver._getCompletionSuggestionsStrict` | method | [packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts#L990-L1055) |
| `ImportResolver._getModuleNameForImport` | method | [packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts#L1057-L1259) |
| `ImportResolver._invalidateFileSystemCache` | method | [packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts#L1261-L1263) |
| `ImportResolver._resolveAbsoluteImport` | method | [packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts#L1265-L1454) |
| `ImportResolver._getImportCacheKey` | method | [packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts#L1456-L1458) |
| `ImportResolver._lookUpResultsInCache` | method | [packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts#L1460-L1484) |
| _227 additional symbols omitted_ | | |
## Dependencies
**Imported by:**
- `packages/pyright/packages/pyright-internal/src/analyzer/analyzerNodeInfo.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/backgroundAnalysisProgram.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/binder.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/checker.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/parentDirectoryCache.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/program.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/service.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/sourceFile.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/typeDocStringUtils.ts`
- `packages/pyright/packages/pyright-internal/src/backgroundAnalysis.ts`
- `packages/pyright/packages/pyright-internal/src/backgroundAnalysisBase.ts`
- `packages/pyright/packages/pyright-internal/src/common/configOptions.ts`
- `packages/pyright/packages/pyright-internal/src/common/extensibility.ts`
- `packages/pyright/packages/pyright-internal/src/common/fullAccessHost.ts`
- `packages/pyright/packages/pyright-internal/src/common/host.ts`
- `packages/pyright/packages/pyright-internal/src/common/serviceKeys.ts`
- `packages/pyright/packages/pyright-internal/src/common/serviceProviderExtensions.ts`
- `packages/pyright/packages/pyright-internal/src/common/textEditTracker.ts`
- `packages/pyright/packages/pyright-internal/src/languageServerBase.ts`
- `packages/pyright/packages/pyright-internal/src/languageService/analyzerServiceExecutor.ts`
- `packages/pyright/packages/pyright-internal/src/languageService/autoImporter.ts`
- `packages/pyright/packages/pyright-internal/src/languageService/completionProvider.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/importSorter.ts`
- `packages/pyright/packages/pyright-internal/src/languageService/signatureHelpProvider.ts`
- `packages/pyright/packages/pyright-internal/src/languageService/tooltipUtils.ts`
- `packages/pyright/packages/pyright-internal/src/pyright.ts`
- `packages/pyright/packages/pyright-internal/src/server.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/declaration.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/parentDirectoryCache.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/program.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/sourceFile.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/sourceFileInfo.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/sourceFileInfoUtils.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/typeEvaluatorTypes.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/typeUtils.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/types.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/commandLineOptions.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/editAction.ts`
- `packages/pyright/packages/pyright-internal/src/common/extensibility.ts`
- `packages/pyright/packages/pyright-internal/src/common/fileSystem.ts`
- `packages/pyright/packages/pyright-internal/src/common/fullAccessHost.ts`
- `packages/pyright/packages/pyright-internal/src/common/host.ts`
- `packages/pyright/packages/pyright-internal/src/common/pathConsts.ts`
- `packages/pyright/packages/pyright-internal/src/common/pathUtils.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/serviceKeys.ts`
- `packages/pyright/packages/pyright-internal/src/common/serviceProvider.ts`
- `packages/pyright/packages/pyright-internal/src/common/stringUtils.ts`
- `packages/pyright/packages/pyright-internal/src/common/textRange.ts`
- `packages/pyright/packages/pyright-internal/src/common/uri/uri.ts`
- `packages/pyright/packages/pyright-internal/src/common/uri/uriUtils.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/tokenizer.ts`
- `packages/pyright/packages/pyright-internal/src/parser/tokenizerTypes.ts`

View File

@@ -0,0 +1,180 @@
<!--
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
-->
# Language Service Providers
**Feature path:** `Language Service Providers`
## Implementation summary
- **Files:** 24
- **Symbols:** 354
### Primary files
These are the main implementation files attached to this semantic node.
| File | Summary |
| ---- | ------- |
| [packages/pyright/packages/pyright-internal/src/languageServerBase.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/languageServerBase.ts#L1-L1620) | Provides core language server functionality and LSP handlers for Pyright |
| [packages/pyright/packages/pyright-internal/src/languageService/analyzerServiceExecutor.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/languageService/analyzerServiceExecutor.ts#L1-L166) | Runs and clones AnalyzerService and builds command-line options from server settings |
| [packages/pyright/packages/pyright-internal/src/languageService/autoImporter.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/languageService/autoImporter.ts#L1-L859) | Provides auto-import completion logic and utilities for finding module symbols and generating import edits |
| [packages/pyright/packages/pyright-internal/src/languageService/callHierarchyProvider.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/languageService/callHierarchyProvider.ts#L1-L628) | Provides call hierarchy items (callers and callees) for a code position across the workspace |
| [packages/pyright/packages/pyright-internal/src/languageService/codeActionProvider.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/languageService/codeActionProvider.ts#L1-L78) | Provides quick-fix code actions for diagnostics, including a create-type-stub action |
| [packages/pyright/packages/pyright-internal/src/languageService/completionProvider.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/languageService/completionProvider.ts#L1-L3698) | Provides Python language completion items for a source position using type and symbol analysis |
| [packages/pyright/packages/pyright-internal/src/languageService/completionProviderUtils.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/languageService/completionProviderUtils.ts#L1-L252) | Helper utilities for completion items: type details, formatted documentation, and trailing overlap detection |
| [packages/pyright/packages/pyright-internal/src/languageService/definitionProvider.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/languageService/definitionProvider.ts#L1-L348) | Maps positions to symbol and type declarations for go-to-definition and type-definition features |
| [packages/pyright/packages/pyright-internal/src/languageService/documentHighlightProvider.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/languageService/documentHighlightProvider.ts#L1-L76) | Provides document highlights for a name at a given position, classifying occurrences as read or write |
| [packages/pyright/packages/pyright-internal/src/languageService/documentSymbolCollector.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/languageService/documentSymbolCollector.ts#L1-L622) | Collects and resolves symbol declarations and references within a parse tree for document-level symbol occurrences |
| [packages/pyright/packages/pyright-internal/src/languageService/documentSymbolProvider.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/languageService/documentSymbolProvider.ts#L1-L147) | Provides document symbol extraction and conversion to hierarchical or flat LSP SymbolInformation for a source file |
| [packages/pyright/packages/pyright-internal/src/languageService/dynamicFeature.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/languageService/dynamicFeature.ts#L1-L75) | Manages dynamic LSP features with register/update/dispose logic and a registry for multiple features |
| [packages/pyright/packages/pyright-internal/src/languageService/fileWatcherDynamicFeature.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/languageService/fileWatcherDynamicFeature.ts#L1-L79) | Registers LSP file-watcher notifications for workspace config files and Python search paths |
| [packages/pyright/packages/pyright-internal/src/languageService/hoverProvider.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/languageService/hoverProvider.ts#L1-L682) | Generates editor hover tooltips for Python symbols with type info, signatures, and documentation |
| [packages/pyright/packages/pyright-internal/src/languageService/importSorter.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/languageService/importSorter.ts#L1-L197) | Sorts and formats top-level Python import statements and produces TextEditAction replacements |
| [packages/pyright/packages/pyright-internal/src/languageService/navigationUtils.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/languageService/navigationUtils.ts#L1-L33) | Provides helpers to check file navigability and convert DocumentRange objects to LSP Location values |
| [packages/pyright/packages/pyright-internal/src/languageService/pullDiagnosticsDynamicFeature.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/languageService/pullDiagnosticsDynamicFeature.ts#L1-L52) | Registers and manages pull-mode diagnostics and workspace support with the language server |
| [packages/pyright/packages/pyright-internal/src/languageService/quickActions.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/languageService/quickActions.ts#L1-L45) | Provides quick action handlers for source files such as ordering imports |
| [packages/pyright/packages/pyright-internal/src/languageService/referencesProvider.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/languageService/referencesProvider.ts#L1-L528) | Finds symbol references in files and returns DocumentRange/LSP locations |
| [packages/pyright/packages/pyright-internal/src/languageService/renameProvider.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/languageService/renameProvider.ts#L1-L204) | Provides rename support: checks rename eligibility and produces workspace edits for a symbol and its references |
| [packages/pyright/packages/pyright-internal/src/languageService/signatureHelpProvider.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/languageService/signatureHelpProvider.ts#L1-L488) | Provides signature help for Python call sites by mapping a cursor position to callable signatures and parameter info |
| [packages/pyright/packages/pyright-internal/src/languageService/symbolIndexer.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/languageService/symbolIndexer.ts#L1-L219) | Indexes all externally visible symbols and aliases in a source file into structured metadata |
| [packages/pyright/packages/pyright-internal/src/languageService/tooltipUtils.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/languageService/tooltipUtils.ts#L1-L846) | Formats and generates hover/completion tooltips and documentation text for types, functions, classes, and symbols |
| [packages/pyright/packages/pyright-internal/src/languageService/workspaceSymbolProvider.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/languageService/workspaceSymbolProvider.ts#L1-L162) | Provides workspace symbol search for the language server across user code |
### Symbol preview (40 of 354)
| Symbol | Kind | Source |
| ------ | ---- | ------ |
| `wrapProgressReporter` | function | [packages/pyright/packages/pyright-internal/src/languageServerBase.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/languageServerBase.ts#L145-L166) |
| `LanguageServerBase` | class | [packages/pyright/packages/pyright-internal/src/languageServerBase.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/languageServerBase.ts#L168-L1619) |
| `LanguageServerBase.dispose` | method | [packages/pyright/packages/pyright-internal/src/languageServerBase.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/languageServerBase.ts#L277-L283) |
| `LanguageServerBase.createBackgroundAnalysis` | method | [packages/pyright/packages/pyright-internal/src/languageServerBase.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/languageServerBase.ts#L285) |
| `LanguageServerBase.getSettings` | method | [packages/pyright/packages/pyright-internal/src/languageServerBase.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/languageServerBase.ts#L287) |
| `LanguageServerBase.createAnalyzerService` | method | [packages/pyright/packages/pyright-internal/src/languageServerBase.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/languageServerBase.ts#L291-L334) |
| `LanguageServerBase.getWorkspaces` | method | [packages/pyright/packages/pyright-internal/src/languageServerBase.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/languageServerBase.ts#L336-L343) |
| `LanguageServerBase.getWorkspaceForFile` | method | [packages/pyright/packages/pyright-internal/src/languageServerBase.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/languageServerBase.ts#L345-L347) |
| `LanguageServerBase.getContainingWorkspacesForFile` | method | [packages/pyright/packages/pyright-internal/src/languageServerBase.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/languageServerBase.ts#L349-L351) |
| `LanguageServerBase.reanalyze` | method | [packages/pyright/packages/pyright-internal/src/languageServerBase.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/languageServerBase.ts#L353-L357) |
| `LanguageServerBase.restart` | method | [packages/pyright/packages/pyright-internal/src/languageServerBase.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/languageServerBase.ts#L359-L363) |
| `LanguageServerBase.updateSettingsForAllWorkspaces` | method | [packages/pyright/packages/pyright-internal/src/languageServerBase.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/languageServerBase.ts#L365-L379) |
| `LanguageServerBase.updateSettingsForWorkspace` | method | [packages/pyright/packages/pyright-internal/src/languageServerBase.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/languageServerBase.ts#L381-L414) |
| `LanguageServerBase.updateOptionsAndRestartService` | method | [packages/pyright/packages/pyright-internal/src/languageServerBase.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/languageServerBase.ts#L416-L423) |
| `LanguageServerBase.executeCommand` | method | [packages/pyright/packages/pyright-internal/src/languageServerBase.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/languageServerBase.ts#L428) |
| `LanguageServerBase.isLongRunningCommand` | method | [packages/pyright/packages/pyright-internal/src/languageServerBase.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/languageServerBase.ts#L430) |
| `LanguageServerBase.isRefactoringCommand` | method | [packages/pyright/packages/pyright-internal/src/languageServerBase.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/languageServerBase.ts#L431) |
| `LanguageServerBase.executeCodeAction` | method | [packages/pyright/packages/pyright-internal/src/languageServerBase.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/languageServerBase.ts#L433-L436) |
| `LanguageServerBase.getConfiguration` | method | [packages/pyright/packages/pyright-internal/src/languageServerBase.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/languageServerBase.ts#L438-L455) |
| `LanguageServerBase.isOpenFilesOnly` | method | [packages/pyright/packages/pyright-internal/src/languageServerBase.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/languageServerBase.ts#L457-L459) |
| `LanguageServerBase.getSeverityOverrides` | method | [packages/pyright/packages/pyright-internal/src/languageServerBase.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/languageServerBase.ts#L461-L471) |
| `LanguageServerBase.getDiagnosticRuleName` | method | [packages/pyright/packages/pyright-internal/src/languageServerBase.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/languageServerBase.ts#L473-L480) |
| `LanguageServerBase.createHost` | method | [packages/pyright/packages/pyright-internal/src/languageServerBase.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/languageServerBase.ts#L482) |
| `LanguageServerBase.createImportResolver` | method | [packages/pyright/packages/pyright-internal/src/languageServerBase.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/languageServerBase.ts#L483-L487) |
| `LanguageServerBase.createBackgroundAnalysisProgram` | method | [packages/pyright/packages/pyright-internal/src/languageServerBase.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/languageServerBase.ts#L489-L506) |
| `LanguageServerBase.createWorkspaceFactory` | method | [packages/pyright/packages/pyright-internal/src/languageServerBase.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/languageServerBase.ts#L508-L516) |
| `LanguageServerBase.setupConnection` | method | [packages/pyright/packages/pyright-internal/src/languageServerBase.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/languageServerBase.ts#L518-L572) |
| `LanguageServerBase.initialize` | method | [packages/pyright/packages/pyright-internal/src/languageServerBase.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/languageServerBase.ts#L574-L698) |
| `LanguageServerBase.onInitialized` | method | [packages/pyright/packages/pyright-internal/src/languageServerBase.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/languageServerBase.ts#L700-L705) |
| `LanguageServerBase.handleInitialized` | method | [packages/pyright/packages/pyright-internal/src/languageServerBase.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/languageServerBase.ts#L707-L719) |
| `LanguageServerBase.onDidChangeConfiguration` | method | [packages/pyright/packages/pyright-internal/src/languageServerBase.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/languageServerBase.ts#L721-L727) |
| `LanguageServerBase.onDefinition` | method | [packages/pyright/packages/pyright-internal/src/languageServerBase.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/languageServerBase.ts#L729-L742) |
| `LanguageServerBase.onDeclaration` | method | [packages/pyright/packages/pyright-internal/src/languageServerBase.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/languageServerBase.ts#L744-L757) |
| `LanguageServerBase.onTypeDefinition` | method | [packages/pyright/packages/pyright-internal/src/languageServerBase.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/languageServerBase.ts#L759-L768) |
| `LanguageServerBase.getDefinitions` | method | [packages/pyright/packages/pyright-internal/src/languageServerBase.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/languageServerBase.ts#L770-L798) |
| `LanguageServerBase.onReferences` | method | [packages/pyright/packages/pyright-internal/src/languageServerBase.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/languageServerBase.ts#L800-L845) |
| `LanguageServerBase.onDocumentSymbol` | method | [packages/pyright/packages/pyright-internal/src/languageServerBase.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/languageServerBase.ts#L847-L868) |
| `LanguageServerBase.onWorkspaceSymbol` | method | [packages/pyright/packages/pyright-internal/src/languageServerBase.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/languageServerBase.ts#L870-L883) |
| `LanguageServerBase.onHover` | method | [packages/pyright/packages/pyright-internal/src/languageServerBase.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/languageServerBase.ts#L885-L895) |
| `LanguageServerBase.onDocumentHighlight` | method | [packages/pyright/packages/pyright-internal/src/languageServerBase.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/languageServerBase.ts#L897-L907) |
| _314 additional symbols omitted_ | | |
## Dependencies
**Imported by:**
- `packages/pyright/packages/pyright-internal/src/commands/createTypeStub.ts`
- `packages/pyright/packages/pyright-internal/src/commands/quickActionCommand.ts`
- `packages/pyright/packages/pyright-internal/src/server.ts`
**Imports:**
- `packages/pyright/packages/pyright-internal/src/analyzer/analysis.ts`
- `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/backgroundAnalysisProgram.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/constructors.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/enums.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/parameterUtils.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/program.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/pythonPathUtils.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/service.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/sourceFile.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/sourceFileInfoUtils.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/symbolNameUtils.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/symbolUtils.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/typeDocStringUtils.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/typeEvaluatorTypes.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/typePrinter.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/typeUtils.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/typedDicts.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/types.ts`
- `packages/pyright/packages/pyright-internal/src/backgroundAnalysisBase.ts`
- `packages/pyright/packages/pyright-internal/src/commands/commandResult.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/caseSensitivityDetector.ts`
- `packages/pyright/packages/pyright-internal/src/common/collectionUtils.ts`
- `packages/pyright/packages/pyright-internal/src/common/commandLineOptions.ts`
- `packages/pyright/packages/pyright-internal/src/common/commandUtils.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/diagnosticSink.ts`
- `packages/pyright/packages/pyright-internal/src/common/docRange.ts`
- `packages/pyright/packages/pyright-internal/src/common/docStringService.ts`
- `packages/pyright/packages/pyright-internal/src/common/editAction.ts`
- `packages/pyright/packages/pyright-internal/src/common/extensibility.ts`
- `packages/pyright/packages/pyright-internal/src/common/extensions.ts`
- `packages/pyright/packages/pyright-internal/src/common/fileSystem.ts`
- `packages/pyright/packages/pyright-internal/src/common/fileWatcher.ts`
- `packages/pyright/packages/pyright-internal/src/common/host.ts`
- `packages/pyright/packages/pyright-internal/src/common/languageServerInterface.ts`
- `packages/pyright/packages/pyright-internal/src/common/lspUtils.ts`
- `packages/pyright/packages/pyright-internal/src/common/pathConsts.ts`
- `packages/pyright/packages/pyright-internal/src/common/pathUtils.ts`
- `packages/pyright/packages/pyright-internal/src/common/positionUtils.ts`
- `packages/pyright/packages/pyright-internal/src/common/progressReporter.ts`
- `packages/pyright/packages/pyright-internal/src/common/pythonVersion.ts`
- `packages/pyright/packages/pyright-internal/src/common/serviceKeys.ts`
- `packages/pyright/packages/pyright-internal/src/common/serviceProvider.ts`
- `packages/pyright/packages/pyright-internal/src/common/serviceProviderExtensions.ts`
- `packages/pyright/packages/pyright-internal/src/common/stringUtils.ts`
- `packages/pyright/packages/pyright-internal/src/common/textRange.ts`
- `packages/pyright/packages/pyright-internal/src/common/textRangeCollection.ts`
- `packages/pyright/packages/pyright-internal/src/common/uri/emptyUri.ts`
- `packages/pyright/packages/pyright-internal/src/common/uri/uri.ts`
- `packages/pyright/packages/pyright-internal/src/common/uri/uriUtils.ts`
- `packages/pyright/packages/pyright-internal/src/common/workspaceEditUtils.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/tokenizer.ts`
- `packages/pyright/packages/pyright-internal/src/parser/tokenizerTypes.ts`
- `packages/pyright/packages/pyright-internal/src/types.ts`
- `packages/pyright/packages/pyright-internal/src/workspaceFactory.ts`

View File

@@ -0,0 +1,186 @@
<!--
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
-->
# Parser, Binder, and Symbols
**Feature path:** `Parser, Binder, and Symbols`
## Implementation summary
- **Files:** 22
- **Symbols:** 633
### Primary files
These are the main implementation files attached to this semantic node.
| File | Summary |
| ---- | ------- |
| [packages/pyright/packages/pyright-internal/src/analyzer/analyzerNodeInfo.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/analyzerNodeInfo.ts#L1-L234) | Stores and manages analysis metadata (scopes, declarations, control-flow, imports, and __all__) for parse nodes |
| [packages/pyright/packages/pyright-internal/src/analyzer/binder.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/binder.ts#L1-L4741) | Performs Python parse-tree name binding and creates scopes and symbol tables for static analysis |
| [packages/pyright/packages/pyright-internal/src/analyzer/declaration.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/declaration.ts#L1-L304) | Describes declaration kinds and interfaces that record symbol locations, nodes, and import/alias resolution metadata |
| [packages/pyright/packages/pyright-internal/src/analyzer/declarationUtils.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/declarationUtils.ts#L1-L421) | Utilities for inspecting, comparing, and resolving declarations and alias references in the analyzer |
| [packages/pyright/packages/pyright-internal/src/analyzer/parseTreeCleaner.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/parseTreeCleaner.ts#L1-L36) | Walks a Module parse tree and clears analyzer-specific analysis info from each parse node |
| [packages/pyright/packages/pyright-internal/src/analyzer/parseTreeUtils.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/parseTreeUtils.ts#L1-L2748) | Utilities for traversing, querying, and printing Python parse tree nodes and their evaluation ranges |
| [packages/pyright/packages/pyright-internal/src/analyzer/parseTreeWalker.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/parseTreeWalker.ts#L1-L936) | Traverses a Python parse tree and provides visitor/walker classes to visit and process parse nodes |
| [packages/pyright/packages/pyright-internal/src/analyzer/scope.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/scope.ts#L1-L268) | Models evaluation scopes and provides symbol table, binding info, and recursive lookup for Python analysis |
| [packages/pyright/packages/pyright-internal/src/analyzer/scopeUtils.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/scopeUtils.ts#L1-L97) | Utilities for locating and inspecting analysis scopes and scope hierarchies for parse tree nodes |
| [packages/pyright/packages/pyright-internal/src/analyzer/symbol.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/symbol.ts#L1-L312) | Represents program symbols, tracking their flags, declarations, and synthesized type information |
| [packages/pyright/packages/pyright-internal/src/analyzer/symbolNameUtils.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/symbolNameUtils.ts#L1-L51) | Classify Python symbol names (private, protected, dunder, constant, type alias, public constant/type alias) |
| [packages/pyright/packages/pyright-internal/src/analyzer/symbolUtils.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/symbolUtils.ts#L1-L53) | Helpers for Symbol declaration queries, visibility checks, TypedDict index access, and class-var/final semantics |
| [packages/pyright/packages/pyright-internal/src/analyzer/testWalker.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/testWalker.ts#L1-L123) | Validates parse-tree node parent/range invariants and evaluates NameNode types using a TypeEvaluator |
| [packages/pyright/packages/pyright-internal/src/parser/characterStream.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/parser/characterStream.ts#L1-L167) | Provides a character stream for inspecting and advancing through text used by parsers and tokenizers |
| [packages/pyright/packages/pyright-internal/src/parser/characters.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/parser/characters.ts#L1-L285) | Classifies Unicode characters and provides fast lookup helpers for identifier tokenization |
| [packages/pyright/packages/pyright-internal/src/parser/parseNodeUtils.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/parser/parseNodeUtils.ts#L1-L162) | Maps parse node and operator string names to their enum values and provides reverse lookup maps |
| [packages/pyright/packages/pyright-internal/src/parser/parseNodes.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/parser/parseNodes.ts#L1-L2864) | Parse node types, enums, and helper functions for representing and manipulating Python AST nodes |
| [packages/pyright/packages/pyright-internal/src/parser/parser.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/parser/parser.ts#L1-L5465) | Parses Python source tokens into an abstract syntax tree and reports diagnostics |
| [packages/pyright/packages/pyright-internal/src/parser/stringTokenUtils.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/parser/stringTokenUtils.ts#L1-L384) | Unescapes escaped string tokens and returns the unescaped value, escape errors, and non-ASCII/bytes info |
| [packages/pyright/packages/pyright-internal/src/parser/tokenizer.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/parser/tokenizer.ts#L1-L2246) | Converts Python source into a stream of lexed tokens for parsing and analysis |
| [packages/pyright/packages/pyright-internal/src/parser/tokenizerTypes.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/parser/tokenizerTypes.ts#L1-L619) | Defines enums, interfaces, and factory creators for Python tokenizer tokens and comments |
| [packages/pyright/packages/pyright-internal/src/parser/unicode.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/parser/unicode.ts#L1-L3649) | Unicode character range tables used by the Python language specification |
### Symbol preview (40 of 633)
| Symbol | Kind | Source |
| ------ | ---- | ------ |
| `cleanNodeAnalysisInfo` | function | [packages/pyright/packages/pyright-internal/src/analyzer/analyzerNodeInfo.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/analyzerNodeInfo.ts#L79-L112) |
| `getImportInfo` | function | [packages/pyright/packages/pyright-internal/src/analyzer/analyzerNodeInfo.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/analyzerNodeInfo.ts#L114-L117) |
| `setImportInfo` | function | [packages/pyright/packages/pyright-internal/src/analyzer/analyzerNodeInfo.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/analyzerNodeInfo.ts#L119-L122) |
| `getScope` | function | [packages/pyright/packages/pyright-internal/src/analyzer/analyzerNodeInfo.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/analyzerNodeInfo.ts#L124-L127) |
| `setScope` | function | [packages/pyright/packages/pyright-internal/src/analyzer/analyzerNodeInfo.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/analyzerNodeInfo.ts#L129-L132) |
| `getDeclaration` | function | [packages/pyright/packages/pyright-internal/src/analyzer/analyzerNodeInfo.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/analyzerNodeInfo.ts#L134-L137) |
| `setDeclaration` | function | [packages/pyright/packages/pyright-internal/src/analyzer/analyzerNodeInfo.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/analyzerNodeInfo.ts#L139-L142) |
| `getFlowNode` | function | [packages/pyright/packages/pyright-internal/src/analyzer/analyzerNodeInfo.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/analyzerNodeInfo.ts#L144-L147) |
| `setFlowNode` | function | [packages/pyright/packages/pyright-internal/src/analyzer/analyzerNodeInfo.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/analyzerNodeInfo.ts#L149-L152) |
| `getAfterFlowNode` | function | [packages/pyright/packages/pyright-internal/src/analyzer/analyzerNodeInfo.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/analyzerNodeInfo.ts#L154-L157) |
| `setAfterFlowNode` | function | [packages/pyright/packages/pyright-internal/src/analyzer/analyzerNodeInfo.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/analyzerNodeInfo.ts#L159-L162) |
| `getFileInfo` | function | [packages/pyright/packages/pyright-internal/src/analyzer/analyzerNodeInfo.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/analyzerNodeInfo.ts#L164-L170) |
| `setFileInfo` | function | [packages/pyright/packages/pyright-internal/src/analyzer/analyzerNodeInfo.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/analyzerNodeInfo.ts#L172-L175) |
| `getCodeFlowExpressions` | function | [packages/pyright/packages/pyright-internal/src/analyzer/analyzerNodeInfo.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/analyzerNodeInfo.ts#L177-L180) |
| `setCodeFlowExpressions` | function | [packages/pyright/packages/pyright-internal/src/analyzer/analyzerNodeInfo.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/analyzerNodeInfo.ts#L182-L185) |
| `getCodeFlowComplexity` | function | [packages/pyright/packages/pyright-internal/src/analyzer/analyzerNodeInfo.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/analyzerNodeInfo.ts#L187-L190) |
| `setCodeFlowComplexity` | function | [packages/pyright/packages/pyright-internal/src/analyzer/analyzerNodeInfo.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/analyzerNodeInfo.ts#L192-L195) |
| `getDunderAllInfo` | function | [packages/pyright/packages/pyright-internal/src/analyzer/analyzerNodeInfo.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/analyzerNodeInfo.ts#L197-L200) |
| `setDunderAllInfo` | function | [packages/pyright/packages/pyright-internal/src/analyzer/analyzerNodeInfo.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/analyzerNodeInfo.ts#L202-L205) |
| `isCodeUnreachable` | function | [packages/pyright/packages/pyright-internal/src/analyzer/analyzerNodeInfo.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/analyzerNodeInfo.ts#L207-L221) |
| `getAnalyzerInfo` | function | [packages/pyright/packages/pyright-internal/src/analyzer/analyzerNodeInfo.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/analyzerNodeInfo.ts#L223-L225) |
| `getAnalyzerInfoForWrite` | function | [packages/pyright/packages/pyright-internal/src/analyzer/analyzerNodeInfo.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/analyzerNodeInfo.ts#L227-L233) |
| `Binder` | class | [packages/pyright/packages/pyright-internal/src/analyzer/binder.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/binder.ts#L173-L4658) |
| `Binder.bindModule` | method | [packages/pyright/packages/pyright-internal/src/analyzer/binder.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/binder.ts#L291-L395) |
| `Binder.visitModule` | method | [packages/pyright/packages/pyright-internal/src/analyzer/binder.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/binder.ts#L397-L402) |
| `Binder.visitSuite` | method | [packages/pyright/packages/pyright-internal/src/analyzer/binder.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/binder.ts#L404-L407) |
| `Binder.visitModuleName` | method | [packages/pyright/packages/pyright-internal/src/analyzer/binder.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/binder.ts#L409-L471) |
| `Binder.visitClass` | method | [packages/pyright/packages/pyright-internal/src/analyzer/binder.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/binder.ts#L473-L529) |
| `Binder.visitFunction` | method | [packages/pyright/packages/pyright-internal/src/analyzer/binder.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/binder.ts#L531-L661) |
| `Binder.visitLambda` | method | [packages/pyright/packages/pyright-internal/src/analyzer/binder.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/binder.ts#L663-L720) |
| `Binder.visitCall` | method | [packages/pyright/packages/pyright-internal/src/analyzer/binder.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/binder.ts#L722-L837) |
| `Binder.visitTypeParameterList` | method | [packages/pyright/packages/pyright-internal/src/analyzer/binder.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/binder.ts#L839-L884) |
| `Binder.visitTypeAlias` | method | [packages/pyright/packages/pyright-internal/src/analyzer/binder.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/binder.ts#L886-L923) |
| `Binder.visitAssignment` | method | [packages/pyright/packages/pyright-internal/src/analyzer/binder.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/binder.ts#L925-L1092) |
| `Binder.visitAssignmentExpression` | method | [packages/pyright/packages/pyright-internal/src/analyzer/binder.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/binder.ts#L1094-L1136) |
| `Binder.visitAugmentedAssignment` | method | [packages/pyright/packages/pyright-internal/src/analyzer/binder.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/binder.ts#L1138-L1199) |
| `Binder.visitDel` | method | [packages/pyright/packages/pyright-internal/src/analyzer/binder.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/binder.ts#L1201-L1209) |
| `Binder.visitTypeAnnotation` | method | [packages/pyright/packages/pyright-internal/src/analyzer/binder.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/binder.ts#L1211-L1250) |
| `Binder.visitFor` | method | [packages/pyright/packages/pyright-internal/src/analyzer/binder.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/binder.ts#L1252-L1344) |
| `Binder.visitContinue` | method | [packages/pyright/packages/pyright-internal/src/analyzer/binder.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/binder.ts#L1346-L1354) |
| _593 additional symbols omitted_ | | |
## Dependencies
**Imported by:**
- `packages/pyright/packages/pyright-internal/src/analyzer/analyzerFileInfo.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/cellChainIndex.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/checker.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/codeFlowUtils.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/commentUtils.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/constructorTransform.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/constructors.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/dataClasses.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/decorators.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/enums.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/functionTransform.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/importStatementUtils.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/namedTuples.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/operations.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/packageTypeReport.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/packageTypeVerifier.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/parameterUtils.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/properties.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/protocols.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/tracePrinter.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/tuples.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/typeCacheUtils.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/typeDocStringUtils.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/typeEvaluator.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/typeEvaluatorTypes.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/typeGuards.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/typePrinter.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/typeStubWriter.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/typeUtils.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/typedDicts.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/types.ts`
- `packages/pyright/packages/pyright-internal/src/commands/dumpFileDebugInfoCommand.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/common/positionUtils.ts`
- `packages/pyright/packages/pyright-internal/src/common/textEditTracker.ts`
- `packages/pyright/packages/pyright-internal/src/languageServerBase.ts`
- `packages/pyright/packages/pyright-internal/src/languageService/autoImporter.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/documentHighlightProvider.ts`
- `packages/pyright/packages/pyright-internal/src/languageService/documentSymbolCollector.ts`
- `packages/pyright/packages/pyright-internal/src/languageService/documentSymbolProvider.ts`
- `packages/pyright/packages/pyright-internal/src/languageService/hoverProvider.ts`
- `packages/pyright/packages/pyright-internal/src/languageService/importSorter.ts`
- `packages/pyright/packages/pyright-internal/src/languageService/referencesProvider.ts`
- `packages/pyright/packages/pyright-internal/src/languageService/renameProvider.ts`
- `packages/pyright/packages/pyright-internal/src/languageService/signatureHelpProvider.ts`
- `packages/pyright/packages/pyright-internal/src/languageService/symbolIndexer.ts`
- `packages/pyright/packages/pyright-internal/src/languageService/tooltipUtils.ts`
- `packages/pyright/packages/pyright-internal/src/languageService/workspaceSymbolProvider.ts`
**Imports:**
- `packages/pyright/packages/pyright-internal/src/analyzer/analyzerFileInfo.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/cellChainIndex.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/codeFlowTypes.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/staticExpressions.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/typeEvaluatorTypes.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/types.ts`
- `packages/pyright/packages/pyright-internal/src/commands/commands.ts`
- `packages/pyright/packages/pyright-internal/src/common/charCodes.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/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/diagnosticSink.ts`
- `packages/pyright/packages/pyright-internal/src/common/pathUtils.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/stringUtils.ts`
- `packages/pyright/packages/pyright-internal/src/common/textRange.ts`
- `packages/pyright/packages/pyright-internal/src/common/textRangeCollection.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`

View File

@@ -0,0 +1,180 @@
<!--
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
-->
# Program Analysis and Scheduling
**Feature path:** `Program Analysis and Scheduling`
## Implementation summary
- **Files:** 14
- **Symbols:** 300
### Primary files
These are the main implementation files attached to this semantic node.
| File | Summary |
| ---- | ------- |
| [packages/pyright/packages/pyright-internal/src/analyzer/analysis.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/analysis.ts#L1-L106) | Exports types and analyzeProgram to run a Program analysis, gather diagnostics, and invoke a completion callback |
| [packages/pyright/packages/pyright-internal/src/analyzer/analyzerFileInfo.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/analyzerFileInfo.ts#L1-L88) | Provides interfaces and utilities for storing per-source-file analysis metadata and import lookup in the analyzer |
| [packages/pyright/packages/pyright-internal/src/analyzer/backgroundAnalysisProgram.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/backgroundAnalysisProgram.ts#L1-L313) | Manages a Program with optional background analysis, syncing config, imports, file state and diagnostics |
| [packages/pyright/packages/pyright-internal/src/analyzer/cacheManager.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/cacheManager.ts#L1-L200) | Tracks cache owners and heap usage to trigger cache eviction when memory usage approaches the heap limit |
| [packages/pyright/packages/pyright-internal/src/analyzer/cellChainIndex.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/cellChainIndex.ts#L1-L155) | Provides a lazily-built index mapping notebook CellDocs cells to their chain tails for fast later-cell lookups |
| [packages/pyright/packages/pyright-internal/src/analyzer/circularDependency.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/circularDependency.ts#L1-L55) | Represents circular import chains as ordered lists of file URIs, normalizing start and comparing equality |
| [packages/pyright/packages/pyright-internal/src/analyzer/parentDirectoryCache.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/parentDirectoryCache.ts#L1-L88) | Cache for storing parent-directory import lookup results to avoid repeated folder searches |
| [packages/pyright/packages/pyright-internal/src/analyzer/program.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/program.ts#L1-L2302) | Tracks and manages the project's source files, imports, and analysis state for Pyright's type checker |
| [packages/pyright/packages/pyright-internal/src/analyzer/programTypes.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/programTypes.ts#L1-L33) | Defines ISourceFileFactory interface and a type guard for creating SourceFile instances |
| [packages/pyright/packages/pyright-internal/src/analyzer/service.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/service.ts#L1-L1946) | Analyzes Python files and manages background analysis, programs, configuration, and import resolution |
| [packages/pyright/packages/pyright-internal/src/analyzer/serviceUtils.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/serviceUtils.ts#L1-L30) | Helpers to locate pyproject.toml and project config files starting from a given Uri |
| [packages/pyright/packages/pyright-internal/src/analyzer/sourceFile.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/sourceFile.ts#L1-L1598) | Represents a single Python source or stub file and manages its parsing, analysis, and diagnostics |
| [packages/pyright/packages/pyright-internal/src/analyzer/sourceFileInfo.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/sourceFileInfo.ts#L1-L259) | Holds per-file metadata and mutable program relations like imports, diagnostics, and edit-mode snapshots |
| [packages/pyright/packages/pyright-internal/src/analyzer/sourceFileInfoUtils.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/sourceFileInfoUtils.ts#L1-L109) | Utilities for SourceFileInfo: import/chain relationships, cycle checks, and parsing open IPython notebook cells |
### Symbol preview (40 of 300)
| Symbol | Kind | Source |
| ------ | ---- | ------ |
| `nullCallback` | function | [packages/pyright/packages/pyright-internal/src/analyzer/analysis.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/analysis.ts#L19-L21) |
| `analyzeProgram` | function | [packages/pyright/packages/pyright-internal/src/analyzer/analysis.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/analysis.ts#L42-L105) |
| `isAnnotationEvaluationPostponed` | function | [packages/pyright/packages/pyright-internal/src/analyzer/analyzerFileInfo.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/analyzerFileInfo.ts#L68-L87) |
| `BackgroundAnalysisProgram` | class | [packages/pyright/packages/pyright-internal/src/analyzer/backgroundAnalysisProgram.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/backgroundAnalysisProgram.ts#L32-L303) |
| `BackgroundAnalysisProgram.hasSourceFile` | method | [packages/pyright/packages/pyright-internal/src/analyzer/backgroundAnalysisProgram.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/backgroundAnalysisProgram.ts#L85-L87) |
| `BackgroundAnalysisProgram.setConfigOptions` | method | [packages/pyright/packages/pyright-internal/src/analyzer/backgroundAnalysisProgram.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/backgroundAnalysisProgram.ts#L89-L93) |
| `BackgroundAnalysisProgram.setImportResolver` | method | [packages/pyright/packages/pyright-internal/src/analyzer/backgroundAnalysisProgram.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/backgroundAnalysisProgram.ts#L95-L101) |
| `BackgroundAnalysisProgram.setTrackedFiles` | method | [packages/pyright/packages/pyright-internal/src/analyzer/backgroundAnalysisProgram.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/backgroundAnalysisProgram.ts#L103-L107) |
| `BackgroundAnalysisProgram.setAllowedThirdPartyImports` | method | [packages/pyright/packages/pyright-internal/src/analyzer/backgroundAnalysisProgram.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/backgroundAnalysisProgram.ts#L109-L112) |
| `BackgroundAnalysisProgram.setFileOpened` | method | [packages/pyright/packages/pyright-internal/src/analyzer/backgroundAnalysisProgram.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/backgroundAnalysisProgram.ts#L114-L117) |
| `BackgroundAnalysisProgram.getChainedUri` | method | [packages/pyright/packages/pyright-internal/src/analyzer/backgroundAnalysisProgram.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/backgroundAnalysisProgram.ts#L119-L121) |
| `BackgroundAnalysisProgram.updateChainedUri` | method | [packages/pyright/packages/pyright-internal/src/analyzer/backgroundAnalysisProgram.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/backgroundAnalysisProgram.ts#L123-L126) |
| `BackgroundAnalysisProgram.updateOpenFileContents` | method | [packages/pyright/packages/pyright-internal/src/analyzer/backgroundAnalysisProgram.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/backgroundAnalysisProgram.ts#L128-L132) |
| `BackgroundAnalysisProgram.setFileClosed` | method | [packages/pyright/packages/pyright-internal/src/analyzer/backgroundAnalysisProgram.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/backgroundAnalysisProgram.ts#L134-L138) |
| `BackgroundAnalysisProgram.addInterimFile` | method | [packages/pyright/packages/pyright-internal/src/analyzer/backgroundAnalysisProgram.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/backgroundAnalysisProgram.ts#L140-L143) |
| `BackgroundAnalysisProgram.markAllFilesDirty` | method | [packages/pyright/packages/pyright-internal/src/analyzer/backgroundAnalysisProgram.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/backgroundAnalysisProgram.ts#L145-L148) |
| `BackgroundAnalysisProgram.markFilesDirty` | method | [packages/pyright/packages/pyright-internal/src/analyzer/backgroundAnalysisProgram.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/backgroundAnalysisProgram.ts#L150-L153) |
| `BackgroundAnalysisProgram.setCompletionCallback` | method | [packages/pyright/packages/pyright-internal/src/analyzer/backgroundAnalysisProgram.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/backgroundAnalysisProgram.ts#L155-L158) |
| `BackgroundAnalysisProgram.startAnalysis` | method | [packages/pyright/packages/pyright-internal/src/analyzer/backgroundAnalysisProgram.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/backgroundAnalysisProgram.ts#L160-L174) |
| `BackgroundAnalysisProgram.analyzeFile` | method | [packages/pyright/packages/pyright-internal/src/analyzer/backgroundAnalysisProgram.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/backgroundAnalysisProgram.ts#L176-L182) |
| `BackgroundAnalysisProgram.analyzeFileAndGetDiagnostics` | method | [packages/pyright/packages/pyright-internal/src/analyzer/backgroundAnalysisProgram.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/backgroundAnalysisProgram.ts#L184-L190) |
| `BackgroundAnalysisProgram.libraryUpdated` | method | [packages/pyright/packages/pyright-internal/src/analyzer/backgroundAnalysisProgram.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/backgroundAnalysisProgram.ts#L192-L194) |
| `BackgroundAnalysisProgram.getDiagnosticsForRange` | method | [packages/pyright/packages/pyright-internal/src/analyzer/backgroundAnalysisProgram.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/backgroundAnalysisProgram.ts#L196-L202) |
| `BackgroundAnalysisProgram.writeTypeStub` | method | [packages/pyright/packages/pyright-internal/src/analyzer/backgroundAnalysisProgram.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/backgroundAnalysisProgram.ts#L204-L222) |
| `BackgroundAnalysisProgram.invalidateAndForceReanalysis` | method | [packages/pyright/packages/pyright-internal/src/analyzer/backgroundAnalysisProgram.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/backgroundAnalysisProgram.ts#L224-L245) |
| `BackgroundAnalysisProgram.restart` | method | [packages/pyright/packages/pyright-internal/src/analyzer/backgroundAnalysisProgram.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/backgroundAnalysisProgram.ts#L247-L249) |
| `BackgroundAnalysisProgram.dispose` | method | [packages/pyright/packages/pyright-internal/src/analyzer/backgroundAnalysisProgram.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/backgroundAnalysisProgram.ts#L251-L260) |
| `BackgroundAnalysisProgram.enterEditMode` | method | [packages/pyright/packages/pyright-internal/src/analyzer/backgroundAnalysisProgram.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/backgroundAnalysisProgram.ts#L262-L269) |
| `BackgroundAnalysisProgram.exitEditMode` | method | [packages/pyright/packages/pyright-internal/src/analyzer/backgroundAnalysisProgram.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/backgroundAnalysisProgram.ts#L271-L275) |
| `BackgroundAnalysisProgram._ensurePartialStubPackages` | method | [packages/pyright/packages/pyright-internal/src/analyzer/backgroundAnalysisProgram.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/backgroundAnalysisProgram.ts#L277-L280) |
| `BackgroundAnalysisProgram._reportDiagnosticsForRemovedFiles` | method | [packages/pyright/packages/pyright-internal/src/analyzer/backgroundAnalysisProgram.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/backgroundAnalysisProgram.ts#L282-L302) |
| `CacheManager` | class | [packages/pyright/packages/pyright-internal/src/analyzer/cacheManager.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/cacheManager.ts#L26-L186) |
| `CacheManager.registerCacheOwner` | method | [packages/pyright/packages/pyright-internal/src/analyzer/cacheManager.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/cacheManager.ts#L37-L39) |
| `CacheManager.addWorker` | method | [packages/pyright/packages/pyright-internal/src/analyzer/cacheManager.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/cacheManager.ts#L41-L54) |
| `CacheManager.handleCachedUsageBufferMessage` | method | [packages/pyright/packages/pyright-internal/src/analyzer/cacheManager.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/cacheManager.ts#L56-L71) |
| `CacheManager.unregisterCacheOwner` | method | [packages/pyright/packages/pyright-internal/src/analyzer/cacheManager.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/cacheManager.ts#L73-L80) |
| `CacheManager.pauseTracking` | method | [packages/pyright/packages/pyright-internal/src/analyzer/cacheManager.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/cacheManager.ts#L82-L90) |
| `CacheManager.getCacheUsage` | method | [packages/pyright/packages/pyright-internal/src/analyzer/cacheManager.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/cacheManager.ts#L92-L104) |
| `CacheManager.emptyCache` | method | [packages/pyright/packages/pyright-internal/src/analyzer/cacheManager.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/cacheManager.ts#L106-L120) |
| `CacheManager.getUsedHeapRatio` | method | [packages/pyright/packages/pyright-internal/src/analyzer/cacheManager.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/cacheManager.ts#L123-L154) |
| _260 additional symbols omitted_ | | |
## Dependencies
**Imported by:**
- `packages/pyright/packages/pyright-internal/src/analyzer/analyzerNodeInfo.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/binder.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/checker.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/declarationUtils.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/importStatementUtils.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/packageTypeVerifier.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/sourceMapper.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/tracePrinter.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/typeEvaluator.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/typeEvaluatorTypes.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/typeEvaluatorWithTracker.ts`
- `packages/pyright/packages/pyright-internal/src/backgroundAnalysisBase.ts`
- `packages/pyright/packages/pyright-internal/src/backgroundThreadBase.ts`
- `packages/pyright/packages/pyright-internal/src/commands/createTypeStub.ts`
- `packages/pyright/packages/pyright-internal/src/common/extensibility.ts`
- `packages/pyright/packages/pyright-internal/src/common/languageServerInterface.ts`
- `packages/pyright/packages/pyright-internal/src/common/serviceKeys.ts`
- `packages/pyright/packages/pyright-internal/src/common/serviceProviderExtensions.ts`
- `packages/pyright/packages/pyright-internal/src/common/workspaceEditUtils.ts`
- `packages/pyright/packages/pyright-internal/src/languageServerBase.ts`
- `packages/pyright/packages/pyright-internal/src/languageService/analyzerServiceExecutor.ts`
- `packages/pyright/packages/pyright-internal/src/languageService/autoImporter.ts`
- `packages/pyright/packages/pyright-internal/src/languageService/callHierarchyProvider.ts`
- `packages/pyright/packages/pyright-internal/src/languageService/documentSymbolCollector.ts`
- `packages/pyright/packages/pyright-internal/src/languageService/referencesProvider.ts`
- `packages/pyright/packages/pyright-internal/src/languageService/renameProvider.ts`
- `packages/pyright/packages/pyright-internal/src/languageService/symbolIndexer.ts`
- `packages/pyright/packages/pyright-internal/src/languageService/workspaceSymbolProvider.ts`
- `packages/pyright/packages/pyright-internal/src/pyright.ts`
- `packages/pyright/packages/pyright-internal/src/server.ts`
- `packages/pyright/packages/pyright-internal/src/workspaceFactory.ts`
**Imports:**
- `packages/pyright/packages/pyright-internal/src/analyzer/analyzerNodeInfo.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/binder.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/checker.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/commentUtils.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/importLogger.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/parseTreeCleaner.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/parseTreeUtils.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/pythonPathUtils.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/scope.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/sourceEnumerator.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/typeEvaluatorTypes.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/typeEvaluatorWithTracker.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/typePrinter.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/typeStubWriter.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/types.ts`
- `packages/pyright/packages/pyright-internal/src/backgroundAnalysisBase.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/commandLineOptions.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/diagnosticSink.ts`
- `packages/pyright/packages/pyright-internal/src/common/editAction.ts`
- `packages/pyright/packages/pyright-internal/src/common/extensibility.ts`
- `packages/pyright/packages/pyright-internal/src/common/fileSystem.ts`
- `packages/pyright/packages/pyright-internal/src/common/fileWatcher.ts`
- `packages/pyright/packages/pyright-internal/src/common/host.ts`
- `packages/pyright/packages/pyright-internal/src/common/logTracker.ts`
- `packages/pyright/packages/pyright-internal/src/common/memUtils.ts`
- `packages/pyright/packages/pyright-internal/src/common/pathConsts.ts`
- `packages/pyright/packages/pyright-internal/src/common/pathUtils.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/serviceKeys.ts`
- `packages/pyright/packages/pyright-internal/src/common/serviceProvider.ts`
- `packages/pyright/packages/pyright-internal/src/common/serviceProviderExtensions.ts`
- `packages/pyright/packages/pyright-internal/src/common/stringUtils.ts`
- `packages/pyright/packages/pyright-internal/src/common/textRange.ts`
- `packages/pyright/packages/pyright-internal/src/common/textRangeCollection.ts`
- `packages/pyright/packages/pyright-internal/src/common/timing.ts`
- `packages/pyright/packages/pyright-internal/src/common/tomlUtils.ts`
- `packages/pyright/packages/pyright-internal/src/common/uri/uri.ts`
- `packages/pyright/packages/pyright-internal/src/common/uri/uriMap.ts`
- `packages/pyright/packages/pyright-internal/src/common/uri/uriUtils.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/tokenizer.ts`
- `packages/pyright/packages/pyright-internal/src/parser/tokenizerTypes.ts`

View File

@@ -0,0 +1,289 @@
<!--
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
-->
# Shared Runtime Infrastructure
**Feature path:** `Shared Runtime Infrastructure`
## Implementation summary
- **Files:** 63
- **Symbols:** 775
### Primary files
These are the main implementation files attached to this semantic node.
| File | Summary |
| ---- | ------- |
| [packages/pyright/packages/pyright-internal/src/analyzer/sentinel.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/sentinel.ts#L1-L85) | Produces a PEP 661 Sentinel class instance type for sentinel declarations during type evaluation |
| [packages/pyright/packages/pyright-internal/src/analyzer/tracePrinter.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/tracePrinter.ts#L1-L273) | Converts AST nodes, declarations, symbols, and types into concise string representations |
| [packages/pyright/packages/pyright-internal/src/backgroundAnalysis.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/backgroundAnalysis.ts#L1-L66) | Provides classes to spawn and coordinate Pyright background analysis workers and runners |
| [packages/pyright/packages/pyright-internal/src/backgroundAnalysisBase.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/backgroundAnalysisBase.ts#L1-L898) | Runs the analyzer in a background worker and manages program views, diagnostics, and result serialization |
| [packages/pyright/packages/pyright-internal/src/backgroundThreadBase.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/backgroundThreadBase.ts#L1-L287) | Provides background thread classes and helpers for message serialization, logging, and cancellation |
| [packages/pyright/packages/pyright-internal/src/common/asyncInitialization.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/asyncInitialization.ts#L1-L20) | Initializes runtime dependencies for Pyright, including TOML support and production source-map support |
| [packages/pyright/packages/pyright-internal/src/common/cancellationUtils.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/cancellationUtils.ts#L1-L298) | Cancellation utilities: combining tokens, file-based tokens, throttling, timeouts, and cancellation-aware racing |
| [packages/pyright/packages/pyright-internal/src/common/caseSensitivityDetector.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/caseSensitivityDetector.ts#L1-L18) | Determines whether a given URI should be treated as case-sensitive |
| [packages/pyright/packages/pyright-internal/src/common/charCodes.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/charCodes.ts#L1-L163) | Defines Char enum mapping descriptive names to numeric character codes for ASCII and select Unicode spaces |
| [packages/pyright/packages/pyright-internal/src/common/chokidarFileWatcherProvider.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/chokidarFileWatcherProvider.ts#L1-L71) | Chokidar-based FileWatcherProvider that watches filesystem paths and emits file events |
| [packages/pyright/packages/pyright-internal/src/common/collectionUtils.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/collectionUtils.ts#L1-L413) | Provides utility helpers for arrays and maps, including searching, sorting, transforming, and mutating collections |
| [packages/pyright/packages/pyright-internal/src/common/console.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/console.ts#L1-L312) | Provides a logging abstraction with levels, multiple console implementations, chaining, cloning, and disposable support |
| [packages/pyright/packages/pyright-internal/src/common/core.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/core.ts#L1-L222) | Utility helpers and type guards for core operations like comparisons, type checks, cloning, and promise detection |
| [packages/pyright/packages/pyright-internal/src/common/crypto.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/crypto.ts#L1-L72) | Generates cryptographically secure random hex strings using Node or Web Crypto, failing if unavailable |
| [packages/pyright/packages/pyright-internal/src/common/debug.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/debug.ts#L1-L152) | Assertion and debugging utilities: assertions, error/enum formatting, function name and serializable-error helpers |
| [packages/pyright/packages/pyright-internal/src/common/deferred.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/deferred.ts#L1-L79) | Provides Deferred promise utilities with resolve/reject/completion state and helpers to create from promises |
| [packages/pyright/packages/pyright-internal/src/common/docRange.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/docRange.ts#L1-L16) | Represents a document's URI together with a text range inside that document |
| [packages/pyright/packages/pyright-internal/src/common/docStringService.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/docStringService.ts#L1-L65) | Provides an interface and Pyright implementation to convert docstrings and extract parameter and attribute docs |
| [packages/pyright/packages/pyright-internal/src/common/editAction.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/editAction.ts#L1-L69) | Defines interfaces and helpers for text and file edit actions and file create/delete/rename operations |
| [packages/pyright/packages/pyright-internal/src/common/envVarUtils.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/envVarUtils.ts#L1-L94) | Expands VS Code-style path variables and resolves the result to a Uri using workspace roots and environment variables |
| [packages/pyright/packages/pyright-internal/src/common/extensibility.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/extensibility.ts#L1-L175) | Defines interfaces for program views, mutators, symbol providers, and other language service extensibility APIs |
| [packages/pyright/packages/pyright-internal/src/common/extensions.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/extensions.ts#L1-L17) | Adds a Promise.ignoreErrors extension that logs and ignores promise rejections |
| [packages/pyright/packages/pyright-internal/src/common/fileBasedCancellationUtils.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/fileBasedCancellationUtils.ts#L1-L214) | File-based cancellation utilities and a provider for creating filesystem-backed cancellation tokens |
| [packages/pyright/packages/pyright-internal/src/common/fileSystem.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/fileSystem.ts#L1-L150) | File system provider interfaces and a virtual Dirent class for pluggable real or virtual file systems |
| [packages/pyright/packages/pyright-internal/src/common/fileWatcher.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/fileWatcher.ts#L1-L58) | File watcher types, null implementations, and a helper to filter ignored filesystem watch events |
| [packages/pyright/packages/pyright-internal/src/common/fullAccessHost.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/fullAccessHost.ts#L1-L380) | Host for executing Python interpreters and external processes to get search paths, versions, and run code |
| [packages/pyright/packages/pyright-internal/src/common/host.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/host.ts#L1-L140) | Provides host environment abstractions: Host interface, HostKind, script/process types, and NoAccessHost implementation |
| [packages/pyright/packages/pyright-internal/src/common/languageInfoUtils.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/languageInfoUtils.ts#L1-L1304) | Provides utilities to dump and format token syntax and type information for debugging and MCP tools |
| [packages/pyright/packages/pyright-internal/src/common/languageServerInterface.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/languageServerInterface.ts#L1-L134) | Language server interfaces and types for settings, window/command services, workspace and background analysis |
| [packages/pyright/packages/pyright-internal/src/common/logTracker.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/logTracker.ts#L1-L213) | Tracks nested logging blocks, measures durations and parsing stats, and emits conditional formatted console logs |
| [packages/pyright/packages/pyright-internal/src/common/lspUtils.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/lspUtils.ts#L1-L74) | Helper utilities for LSP: convert LSPAny, map declarations to SymbolKind, and detect null progress reporters |
| [packages/pyright/packages/pyright-internal/src/common/memUtils.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/memUtils.ts#L1-L49) | Exports helpers for V8 heap statistics and total/free system memory |
| [packages/pyright/packages/pyright-internal/src/common/pathConsts.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/pathConsts.ts#L1-L22) | Exports string constants for common Python filesystem paths and filenames |
| [packages/pyright/packages/pyright-internal/src/common/pathUtils.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/pathUtils.ts#L1-L698) | Utilities for manipulating, normalizing, and matching filesystem paths, filenames, and wildcard file specs |
| [packages/pyright/packages/pyright-internal/src/common/positionUtils.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/positionUtils.ts#L1-L96) | Converts between file offsets and line/column positions, ranges, and line end locations |
| [packages/pyright/packages/pyright-internal/src/common/processUtils.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/processUtils.ts#L1-L56) | Terminates processes and their child process trees across platforms |
| [packages/pyright/packages/pyright-internal/src/common/progressReporter.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/progressReporter.ts#L1-L62) | Provides an interface and a tracker that manages and delegates progress reporting for a language server client |
| [packages/pyright/packages/pyright-internal/src/common/pythonVersion.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/pythonVersion.ts#L1-L221) | Defines PythonVersion type with parsing, stringifying, comparison helpers and predefined Python 3.x version constants |
| [packages/pyright/packages/pyright-internal/src/common/realFileSystem.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/realFileSystem.ts#L1-L650) | Provides real filesystem access, temp file handling, ZIP/egg archive support, and file watching integration for Pyright |
| [packages/pyright/packages/pyright-internal/src/common/serviceKeys.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/serviceKeys.ts#L1-L48) | Provides ServiceKey and GroupServiceKey constants for registering core analyzer and language-server services |
| [packages/pyright/packages/pyright-internal/src/common/serviceProvider.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/serviceProvider.ts#L1-L166) | Registry for singleton and group services with add, remove, get, clone, and dispose operations |
| [packages/pyright/packages/pyright-internal/src/common/serviceProviderExtensions.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/serviceProviderExtensions.ts#L1-L146) | ServiceProvider extensions offering accessors and a default SourceFileFactory for common services |
| [packages/pyright/packages/pyright-internal/src/common/streamUtils.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/streamUtils.ts#L1-L31) | Provides helpers to read all stdin as a Buffer or as a string |
| [packages/pyright/packages/pyright-internal/src/common/stringUtils.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/stringUtils.ts#L1-L128) | Utility functions for string comparison, hashing, searching, counting, truncation, and escaping |
| [packages/pyright/packages/pyright-internal/src/common/textEditTracker.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/textEditTracker.ts#L1-L449) | Tracks and manages per-file text edits, merging overlapping edits and recording node removals |
| [packages/pyright/packages/pyright-internal/src/common/textRange.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/textRange.ts#L1-L208) | Defines types and utilities for text ranges, positions, and document ranges |
| [packages/pyright/packages/pyright-internal/src/common/textRangeCollection.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/textRangeCollection.ts#L1-L173) | Maintains an ordered collection of text ranges and provides fast index and lookup utilities |
| [packages/pyright/packages/pyright-internal/src/common/timing.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/timing.ts#L1-L106) | Duration and timing utilities that record, aggregate, and print operation runtimes |
| [packages/pyright/packages/pyright-internal/src/common/tomlUtils.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/tomlUtils.ts#L1-L37) | Provides TOML parsing utilities to convert TOML strings into JavaScript primitive objects |
| [packages/pyright/packages/pyright-internal/src/common/uri/baseUri.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/uri/baseUri.ts#L1-L307) | Defines an abstract BaseUri class representing URIs and providing common path and extension utilities |
| [packages/pyright/packages/pyright-internal/src/common/uri/constantUri.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/uri/constantUri.ts#L1-L142) | Immutable marker URI type with no filesystem semantics and identity-based equality |
| [packages/pyright/packages/pyright-internal/src/common/uri/emptyUri.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/uri/emptyUri.ts#L1-L43) | Defines a singleton EmptyUri class representing an empty URI value |
| [packages/pyright/packages/pyright-internal/src/common/uri/fileUri.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/uri/fileUri.ts#L1-L302) | Represents file-schemed URIs for filesystem paths and provides path, query, fragment, and resolution utilities |
| [packages/pyright/packages/pyright-internal/src/common/uri/memoization.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/uri/memoization.ts#L1-L86) | Provides decorators to memoize property getters, no-arg instance methods, and static methods with LRU caching |
| [packages/pyright/packages/pyright-internal/src/common/uri/uri.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/uri/uri.ts#L1-L227) | Manages URI creation, parsing, normalization, and helpers for file, web, constant, and empty URI types |
| [packages/pyright/packages/pyright-internal/src/common/uri/uriInterface.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/uri/uriInterface.ts#L1-L102) | Uri interface for representing and manipulating URIs, including path, fragment, query, and extension helpers |
| [packages/pyright/packages/pyright-internal/src/common/uri/uriMap.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/uri/uriMap.ts#L1-L81) | Map keyed by Uri for storing and iterating Uri-to-value mappings |
| [packages/pyright/packages/pyright-internal/src/common/uri/uriUtils.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/uri/uriUtils.ts#L1-L459) | Utilities for URI and filesystem operations, including wildcard file specs, directory entries, and path helpers |
| [packages/pyright/packages/pyright-internal/src/common/uri/webUri.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/uri/webUri.ts#L1-L295) | Implements a WebUri class representing non-file URIs and exposing path, query, fragment, and manipulation methods |
| [packages/pyright/packages/pyright-internal/src/common/workspaceEditUtils.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/workspaceEditUtils.ts#L1-L299) | Converts Pyright file edit actions to LSP WorkspaceEdit objects and applies edits to an EditableProgram |
| [packages/pyright/packages/pyright-internal/src/pprof/profiler.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/pprof/profiler.ts#L1-L64) | Starts and stops Datadog pprof CPU profiling and saves encoded profiles to disk |
| [packages/pyright/packages/pyright-internal/src/readonlyAugmentedFileSystem.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/readonlyAugmentedFileSystem.ts#L1-L271) | Provides a read-only augmented FileSystem that overlays mapped directories onto a backing FileSystem |
| [packages/pyright/packages/pyright-internal/src/types.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/types.ts#L1-L40) | Exports types describing language server client capabilities and initialization options |
### Symbol preview (40 of 775)
| Symbol | Kind | Source |
| ------ | ---- | ------ |
| `createSentinelType` | function | [packages/pyright/packages/pyright-internal/src/analyzer/sentinel.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/sentinel.ts#L19-L84) |
| `createTracePrinter` | function | [packages/pyright/packages/pyright-internal/src/analyzer/tracePrinter.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/analyzer/tracePrinter.ts#L31-L272) |
| `BackgroundAnalysis` | class | [packages/pyright/packages/pyright-internal/src/backgroundAnalysis.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/backgroundAnalysis.ts#L23-L47) |
| `BackgroundAnalysisRunner` | class | [packages/pyright/packages/pyright-internal/src/backgroundAnalysis.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/backgroundAnalysis.ts#L49-L65) |
| `BackgroundAnalysisRunner.createHost` | method | [packages/pyright/packages/pyright-internal/src/backgroundAnalysis.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/backgroundAnalysis.ts#L54-L56) |
| `BackgroundAnalysisRunner.createImportResolver` | method | [packages/pyright/packages/pyright-internal/src/backgroundAnalysis.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/backgroundAnalysis.ts#L58-L64) |
| `BackgroundAnalysisBase` | class | [packages/pyright/packages/pyright-internal/src/backgroundAnalysisBase.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/backgroundAnalysisBase.ts#L80-L377) |
| `BackgroundAnalysisBase.dispose` | method | [packages/pyright/packages/pyright-internal/src/backgroundAnalysisBase.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/backgroundAnalysisBase.ts#L100-L108) |
| `BackgroundAnalysisBase.setProgramView` | method | [packages/pyright/packages/pyright-internal/src/backgroundAnalysisBase.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/backgroundAnalysisBase.ts#L110-L112) |
| `BackgroundAnalysisBase.setCompletionCallback` | method | [packages/pyright/packages/pyright-internal/src/backgroundAnalysisBase.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/backgroundAnalysisBase.ts#L114-L116) |
| `BackgroundAnalysisBase.setImportResolver` | method | [packages/pyright/packages/pyright-internal/src/backgroundAnalysisBase.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/backgroundAnalysisBase.ts#L118-L120) |
| `BackgroundAnalysisBase.setConfigOptions` | method | [packages/pyright/packages/pyright-internal/src/backgroundAnalysisBase.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/backgroundAnalysisBase.ts#L122-L124) |
| `BackgroundAnalysisBase.setTrackedFiles` | method | [packages/pyright/packages/pyright-internal/src/backgroundAnalysisBase.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/backgroundAnalysisBase.ts#L126-L128) |
| `BackgroundAnalysisBase.setAllowedThirdPartyImports` | method | [packages/pyright/packages/pyright-internal/src/backgroundAnalysisBase.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/backgroundAnalysisBase.ts#L130-L132) |
| `BackgroundAnalysisBase.ensurePartialStubPackages` | method | [packages/pyright/packages/pyright-internal/src/backgroundAnalysisBase.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/backgroundAnalysisBase.ts#L134-L136) |
| `BackgroundAnalysisBase.setFileOpened` | method | [packages/pyright/packages/pyright-internal/src/backgroundAnalysisBase.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/backgroundAnalysisBase.ts#L138-L143) |
| `BackgroundAnalysisBase.updateChainedUri` | method | [packages/pyright/packages/pyright-internal/src/backgroundAnalysisBase.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/backgroundAnalysisBase.ts#L145-L150) |
| `BackgroundAnalysisBase.setFileClosed` | method | [packages/pyright/packages/pyright-internal/src/backgroundAnalysisBase.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/backgroundAnalysisBase.ts#L152-L154) |
| `BackgroundAnalysisBase.addInterimFile` | method | [packages/pyright/packages/pyright-internal/src/backgroundAnalysisBase.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/backgroundAnalysisBase.ts#L156-L158) |
| `BackgroundAnalysisBase.markAllFilesDirty` | method | [packages/pyright/packages/pyright-internal/src/backgroundAnalysisBase.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/backgroundAnalysisBase.ts#L160-L162) |
| `BackgroundAnalysisBase.markFilesDirty` | method | [packages/pyright/packages/pyright-internal/src/backgroundAnalysisBase.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/backgroundAnalysisBase.ts#L164-L169) |
| `BackgroundAnalysisBase.startAnalysis` | method | [packages/pyright/packages/pyright-internal/src/backgroundAnalysisBase.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/backgroundAnalysisBase.ts#L171-L181) |
| `BackgroundAnalysisBase.analyzeFile` | method | [packages/pyright/packages/pyright-internal/src/backgroundAnalysisBase.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/backgroundAnalysisBase.ts#L183-L202) |
| `BackgroundAnalysisBase.analyzeFileAndGetDiagnostics` | method | [packages/pyright/packages/pyright-internal/src/backgroundAnalysisBase.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/backgroundAnalysisBase.ts#L204-L223) |
| `BackgroundAnalysisBase.getDiagnosticsForRange` | method | [packages/pyright/packages/pyright-internal/src/backgroundAnalysisBase.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/backgroundAnalysisBase.ts#L225-L244) |
| `BackgroundAnalysisBase.writeTypeStub` | method | [packages/pyright/packages/pyright-internal/src/backgroundAnalysisBase.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/backgroundAnalysisBase.ts#L246-L273) |
| `BackgroundAnalysisBase.invalidateAndForceReanalysis` | method | [packages/pyright/packages/pyright-internal/src/backgroundAnalysisBase.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/backgroundAnalysisBase.ts#L275-L277) |
| `BackgroundAnalysisBase.restart` | method | [packages/pyright/packages/pyright-internal/src/backgroundAnalysisBase.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/backgroundAnalysisBase.ts#L279-L281) |
| `BackgroundAnalysisBase.shutdown` | method | [packages/pyright/packages/pyright-internal/src/backgroundAnalysisBase.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/backgroundAnalysisBase.ts#L283-L287) |
| `BackgroundAnalysisBase.setup` | method | [packages/pyright/packages/pyright-internal/src/backgroundAnalysisBase.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/backgroundAnalysisBase.ts#L289-L308) |
| `BackgroundAnalysisBase.onMessage` | method | [packages/pyright/packages/pyright-internal/src/backgroundAnalysisBase.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/backgroundAnalysisBase.ts#L310-L328) |
| `BackgroundAnalysisBase.enqueueRequest` | method | [packages/pyright/packages/pyright-internal/src/backgroundAnalysisBase.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/backgroundAnalysisBase.ts#L330-L334) |
| `BackgroundAnalysisBase.log` | method | [packages/pyright/packages/pyright-internal/src/backgroundAnalysisBase.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/backgroundAnalysisBase.ts#L336-L338) |
| `BackgroundAnalysisBase.handleBackgroundResponse` | method | [packages/pyright/packages/pyright-internal/src/backgroundAnalysisBase.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/backgroundAnalysisBase.ts#L340-L376) |
| `BackgroundAnalysisRunnerBase` | class | [packages/pyright/packages/pyright-internal/src/backgroundAnalysisBase.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/backgroundAnalysisBase.ts#L379-L814) |
| `BackgroundAnalysisRunnerBase.start` | method | [packages/pyright/packages/pyright-internal/src/backgroundAnalysisBase.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/backgroundAnalysisBase.ts#L418-L429) |
| `BackgroundAnalysisRunnerBase.onMessage` | method | [packages/pyright/packages/pyright-internal/src/backgroundAnalysisBase.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/backgroundAnalysisBase.ts#L431-L579) |
| `BackgroundAnalysisRunnerBase.createHost` | method | [packages/pyright/packages/pyright-internal/src/backgroundAnalysisBase.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/backgroundAnalysisBase.ts#L581) |
| `BackgroundAnalysisRunnerBase.createImportResolver` | method | [packages/pyright/packages/pyright-internal/src/backgroundAnalysisBase.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/backgroundAnalysisBase.ts#L583-L587) |
| `BackgroundAnalysisRunnerBase.handleAnalyze` | method | [packages/pyright/packages/pyright-internal/src/backgroundAnalysisBase.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/backgroundAnalysisBase.ts#L589-L605) |
| _735 additional symbols omitted_ | | |
## Dependencies
**Imported by:**
- `packages/pyright/packages/pyright-internal/src/analyzer/analysis.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/analyzerFileInfo.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/backgroundAnalysisProgram.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/binder.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/cacheManager.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/cellChainIndex.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/checker.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/circularDependency.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/codeFlowUtils.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/commentUtils.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/constraintSolution.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/constraintTracker.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/constructorTransform.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/constructors.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/dataClasses.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/decorators.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/deprecatedSymbols.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/enums.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/importResolverFileSystem.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/importResolverTypes.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/namedTuples.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/operations.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/packageTypeReport.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/packageTypeVerifier.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/parameterUtils.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/parentDirectoryCache.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/program.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/programTypes.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/protocols.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/pyTypedUtils.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/pythonPathUtils.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/scope.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/service.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/serviceUtils.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/sourceEnumerator.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/sourceFile.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/sourceFileInfo.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/sourceFileInfoUtils.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/sourceMapper.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/sourceMapperUtils.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/staticExpressions.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/testWalker.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/typeCacheUtils.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/typeDocStringUtils.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/typeEvaluator.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/typeEvaluatorTypes.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/typeEvaluatorWithTracker.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/typeGuards.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/typePrinter.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/typeStubWriter.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/typeUtils.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/typeWalker.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/typedDicts.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/types.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/typeshedInfoProvider.ts`
- `packages/pyright/packages/pyright-internal/src/commands/commandController.ts`
- `packages/pyright/packages/pyright-internal/src/commands/createTypeStub.ts`
- `packages/pyright/packages/pyright-internal/src/commands/dumpFileDebugInfoCommand.ts`
- `packages/pyright/packages/pyright-internal/src/commands/quickActionCommand.ts`
- `packages/pyright/packages/pyright-internal/src/commands/restartServer.ts`
- `packages/pyright/packages/pyright-internal/src/common/commandLineOptions.ts`
- `packages/pyright/packages/pyright-internal/src/common/commandUtils.ts`
- `packages/pyright/packages/pyright-internal/src/common/configOptions.ts`
- `packages/pyright/packages/pyright-internal/src/common/diagnostic.ts`
- `packages/pyright/packages/pyright-internal/src/common/diagnosticSink.ts`
- `packages/pyright/packages/pyright-internal/src/languageServerBase.ts`
- `packages/pyright/packages/pyright-internal/src/languageService/analyzerServiceExecutor.ts`
- `packages/pyright/packages/pyright-internal/src/languageService/autoImporter.ts`
- `packages/pyright/packages/pyright-internal/src/languageService/callHierarchyProvider.ts`
- `packages/pyright/packages/pyright-internal/src/languageService/codeActionProvider.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/documentHighlightProvider.ts`
- `packages/pyright/packages/pyright-internal/src/languageService/documentSymbolCollector.ts`
- `packages/pyright/packages/pyright-internal/src/languageService/documentSymbolProvider.ts`
- `packages/pyright/packages/pyright-internal/src/languageService/dynamicFeature.ts`
- `packages/pyright/packages/pyright-internal/src/languageService/fileWatcherDynamicFeature.ts`
- `packages/pyright/packages/pyright-internal/src/languageService/hoverProvider.ts`
- `packages/pyright/packages/pyright-internal/src/languageService/importSorter.ts`
- `packages/pyright/packages/pyright-internal/src/languageService/navigationUtils.ts`
- `packages/pyright/packages/pyright-internal/src/languageService/pullDiagnosticsDynamicFeature.ts`
- `packages/pyright/packages/pyright-internal/src/languageService/quickActions.ts`
- `packages/pyright/packages/pyright-internal/src/languageService/referencesProvider.ts`
- `packages/pyright/packages/pyright-internal/src/languageService/renameProvider.ts`
- `packages/pyright/packages/pyright-internal/src/languageService/signatureHelpProvider.ts`
- `packages/pyright/packages/pyright-internal/src/languageService/symbolIndexer.ts`
- `packages/pyright/packages/pyright-internal/src/languageService/tooltipUtils.ts`
- `packages/pyright/packages/pyright-internal/src/languageService/workspaceSymbolProvider.ts`
- `packages/pyright/packages/pyright-internal/src/localization/localize.ts`
- `packages/pyright/packages/pyright-internal/src/nodeMain.ts`
- `packages/pyright/packages/pyright-internal/src/nodeServer.ts`
- `packages/pyright/packages/pyright-internal/src/parser/characterStream.ts`
- `packages/pyright/packages/pyright-internal/src/parser/characters.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`
- `packages/pyright/packages/pyright-internal/src/partialStubService.ts`
- `packages/pyright/packages/pyright-internal/src/pyright.ts`
- `packages/pyright/packages/pyright-internal/src/pyrightFileSystem.ts`
- `packages/pyright/packages/pyright-internal/src/server.ts`
- `packages/pyright/packages/pyright-internal/src/workspaceFactory.ts`
**Imports:**
- `packages/pyright/packages/pyright-internal/src/analyzer/analysis.ts`
- `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/backgroundAnalysisProgram.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/cacheManager.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/declaration.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/docStringConversion.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/docStringUtils.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/importLogger.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/importResolverTypes.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/program.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/programTypes.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/pythonPathUtils.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/service.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/typeEvaluatorTypes.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/typeStubWriter.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/typeUtils.ts`
- `packages/pyright/packages/pyright-internal/src/analyzer/types.ts`
- `packages/pyright/packages/pyright-internal/src/common/commandLineOptions.ts`
- `packages/pyright/packages/pyright-internal/src/common/configOptions.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/diagnosticSink.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/tokenizer.ts`
- `packages/pyright/packages/pyright-internal/src/parser/tokenizerTypes.ts`
- `packages/pyright/packages/pyright-internal/src/partialStubService.ts`
- `packages/pyright/packages/pyright-internal/src/workspaceFactory.ts`

View File

@@ -0,0 +1,177 @@
<!--
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`