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
211 lines
39 KiB
Markdown
211 lines
39 KiB
Markdown
<!--
|
|
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
|
|
-->
|
|
# Subsystem: `analyzer`
|
|
|
|
Source files under `analyzer/`. Grouped by the functional area each file was assigned to during semantic lifting.
|
|
|
|
- **Files**: 82
|
|
- **Symbols (leaves)**: 1776
|
|
|
|
## Constraint Solving and Type Variables
|
|
|
|
- [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
|
|
- [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
|
|
- [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
|
|
|
|
## Diagnostics and Configuration
|
|
|
|
- [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
|
|
|
|
## Documentation and Comments
|
|
|
|
- [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
|
|
- [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
|
|
- [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
|
|
|
|
## Flow Narrowing and Type Guards
|
|
|
|
- [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
|
|
- [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
|
|
- [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
|
|
- [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
|
|
- [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
|
|
- [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
|
|
|
|
## Import Resolution and Packaging
|
|
|
|
- [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
|
|
- [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
|
|
- [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
|
|
- [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
|
|
- [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
|
|
- [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
|
|
- [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
|
|
- [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
|
|
- [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
|
|
- [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
|
|
- [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
|
|
- [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
|
|
- [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
|
|
- [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
|
|
- [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
|
|
|
|
## Parser, Binder, and Symbols
|
|
|
|
- [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
|
|
- [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
|
|
- [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
|
|
- [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
|
|
- [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
|
|
- [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
|
|
- [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
|
|
- [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
|
|
- [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
|
|
- [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
|
|
- [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)
|
|
- [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
|
|
- [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
|
|
|
|
## Program Analysis and Scheduling
|
|
|
|
- [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
|
|
- [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
|
|
- [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
|
|
- [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
|
|
- [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
|
|
- [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
|
|
- [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
|
|
- [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
|
|
- [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
|
|
- [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
|
|
- [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
|
|
- [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
|
|
- [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
|
|
- [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
|
|
|
|
## Shared Runtime Infrastructure
|
|
|
|
- [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
|
|
- [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
|
|
|
|
## Type Evaluation
|
|
|
|
- [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
|
|
- [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
|
|
- [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
|
|
- [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
|
|
- [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
|
|
- [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
|
|
- [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
|
|
- [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
|
|
- [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
|
|
- [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
|
|
- [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
|
|
- [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
|
|
- [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
|
|
- [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
|
|
- [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
|
|
- [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
|
|
- [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
|
|
- [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
|
|
- [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
|
|
- [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
|
|
- [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
|
|
- [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
|
|
- [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
|
|
- [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
|
|
- [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
|
|
|
|
## Cross-subsystem dependencies
|
|
|
|
**Imported by (external):**
|
|
|
|
- [src/backgroundAnalysis.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/backgroundAnalysis.ts)
|
|
- [src/backgroundAnalysisBase.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/backgroundAnalysisBase.ts)
|
|
- [src/backgroundThreadBase.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/backgroundThreadBase.ts)
|
|
- [commands/createTypeStub.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/commands/createTypeStub.ts)
|
|
- [commands/dumpFileDebugInfoCommand.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/commands/dumpFileDebugInfoCommand.ts)
|
|
- [common/configOptions.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/configOptions.ts)
|
|
- [common/docStringService.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/docStringService.ts)
|
|
- [common/extensibility.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/extensibility.ts)
|
|
- [common/fullAccessHost.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/fullAccessHost.ts)
|
|
- [common/host.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/host.ts)
|
|
- [common/languageInfoUtils.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/languageInfoUtils.ts)
|
|
- [common/languageServerInterface.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/languageServerInterface.ts)
|
|
- [common/lspUtils.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/lspUtils.ts)
|
|
- [common/serviceKeys.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/serviceKeys.ts)
|
|
- [common/serviceProviderExtensions.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/serviceProviderExtensions.ts)
|
|
- [common/textEditTracker.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/textEditTracker.ts)
|
|
- [common/workspaceEditUtils.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/workspaceEditUtils.ts)
|
|
- [src/languageServerBase.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/languageServerBase.ts)
|
|
- [languageService/analyzerServiceExecutor.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/languageService/analyzerServiceExecutor.ts)
|
|
- [languageService/autoImporter.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/languageService/autoImporter.ts)
|
|
- [languageService/callHierarchyProvider.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/languageService/callHierarchyProvider.ts)
|
|
- [languageService/completionProvider.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/languageService/completionProvider.ts)
|
|
- [languageService/completionProviderUtils.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/languageService/completionProviderUtils.ts)
|
|
- [languageService/definitionProvider.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/languageService/definitionProvider.ts)
|
|
- [languageService/documentHighlightProvider.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/languageService/documentHighlightProvider.ts)
|
|
- [languageService/documentSymbolCollector.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/languageService/documentSymbolCollector.ts)
|
|
- [languageService/documentSymbolProvider.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/languageService/documentSymbolProvider.ts)
|
|
- [languageService/hoverProvider.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/languageService/hoverProvider.ts)
|
|
- [languageService/importSorter.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/languageService/importSorter.ts)
|
|
- [languageService/referencesProvider.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/languageService/referencesProvider.ts)
|
|
- [languageService/renameProvider.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/languageService/renameProvider.ts)
|
|
- [languageService/signatureHelpProvider.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/languageService/signatureHelpProvider.ts)
|
|
- [languageService/symbolIndexer.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/languageService/symbolIndexer.ts)
|
|
- [languageService/tooltipUtils.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/languageService/tooltipUtils.ts)
|
|
- [languageService/workspaceSymbolProvider.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/languageService/workspaceSymbolProvider.ts)
|
|
- [src/partialStubService.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/partialStubService.ts)
|
|
- [src/pyright.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/pyright.ts)
|
|
- [src/server.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/server.ts)
|
|
- [src/workspaceFactory.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/workspaceFactory.ts)
|
|
|
|
**Imports (external):**
|
|
|
|
- [src/backgroundAnalysisBase.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/backgroundAnalysisBase.ts)
|
|
- [commands/commands.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/commands/commands.ts)
|
|
- [common/cancellationUtils.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/cancellationUtils.ts)
|
|
- [common/collectionUtils.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/collectionUtils.ts)
|
|
- [common/commandLineOptions.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/commandLineOptions.ts)
|
|
- [common/configOptions.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/configOptions.ts)
|
|
- [common/console.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/console.ts)
|
|
- [common/core.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/core.ts)
|
|
- [common/debug.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/debug.ts)
|
|
- [common/diagnostic.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/diagnostic.ts)
|
|
- [common/diagnosticRules.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/diagnosticRules.ts)
|
|
- [common/diagnosticSink.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/diagnosticSink.ts)
|
|
- [common/editAction.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/editAction.ts)
|
|
- [common/extensibility.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/extensibility.ts)
|
|
- [common/fileSystem.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/fileSystem.ts)
|
|
- [common/fileWatcher.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/fileWatcher.ts)
|
|
- [common/fullAccessHost.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/fullAccessHost.ts)
|
|
- [common/host.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/host.ts)
|
|
- [common/logTracker.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/logTracker.ts)
|
|
- [common/memUtils.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/memUtils.ts)
|
|
- [common/pathConsts.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/pathConsts.ts)
|
|
- [common/pathUtils.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/pathUtils.ts)
|
|
- [common/positionUtils.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/positionUtils.ts)
|
|
- [common/pythonVersion.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/pythonVersion.ts)
|
|
- [common/serviceKeys.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/serviceKeys.ts)
|
|
- [common/serviceProvider.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/serviceProvider.ts)
|
|
- [common/serviceProviderExtensions.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/serviceProviderExtensions.ts)
|
|
- [common/stringUtils.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/stringUtils.ts)
|
|
- [common/textRange.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/textRange.ts)
|
|
- [common/textRangeCollection.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/textRangeCollection.ts)
|
|
- [common/timing.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/timing.ts)
|
|
- [common/tomlUtils.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/tomlUtils.ts)
|
|
- [uri/uri.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/uri/uri.ts)
|
|
- [uri/uriMap.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/uri/uriMap.ts)
|
|
- [uri/uriUtils.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/common/uri/uriUtils.ts)
|
|
- [localization/localize.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/localization/localize.ts)
|
|
- [parser/parseNodeUtils.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/parser/parseNodeUtils.ts)
|
|
- [parser/parseNodes.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/parser/parseNodes.ts)
|
|
- [parser/parser.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/parser/parser.ts)
|
|
- [parser/stringTokenUtils.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/parser/stringTokenUtils.ts)
|
|
- [parser/tokenizer.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/parser/tokenizer.ts)
|
|
- [parser/tokenizerTypes.ts](https://github.com/microsoft/pyrx/blob/784698179a5627072df39bbe0fcadb55bb7dd408/packages/pyright/packages/pyright-internal/src/parser/tokenizerTypes.ts)
|