Implement more typing by youknowone · Pull Request #7078 · RustPython/RustPython
marked this pull request as ready for review
- Implement _ConstEvaluator type in _typing module with STRING format support via typing_type_repr (port of _Py_typing_type_repr) - Add evaluate_bound, evaluate_constraints, evaluate_default pygetset properties to TypeVar, ParamSpec, TypeVarTuple - Emit format validation in evaluator scopes (compile_type_param_bound_or_default, TypeAlias value scopes) so evaluators raise NotImplementedError for unsupported formats - Add non-default-after-default SyntaxError in scan_type_params - Fix ParamSpec default_value to use Mutex for proper caching - Fix TypeVar constructor: evaluate_constraints set to None instead of constraints tuple for eager-constructed TypeVars - Pass format=1 (FORMAT_VALUE) to all lazy evaluator calls - Remove 6 expectedFailure markers from test_type_params
…sre module names - Reject nonlocal binding for type parameters in symboltable - Enable __class_getitem__ on memoryview, Template, Interpolation - Fix __set_name__ error note to quote attribute name - Set re.Match and re.Pattern module to "re" instead of "_sre" - Migrate parking_lot::Mutex to PyMutex in typevar.rs - Collapse nested if-let chains in typing_type_repr (clippy) - Remove 5 expectedFailure markers from test files
Annotation scopes now inherit can_see_class_scope from parent scopes (not just direct Class parents), allowing annotations in generic methods inside classes to access class variables via __classdict__. Remove 3 expectedFailure markers from test_type_params.
This was referenced
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters