mirror of
				https://github.com/python/cpython.git
				synced 2025-10-26 03:04:41 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			24 lines
		
	
	
	
		
			508 B
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			24 lines
		
	
	
	
		
			508 B
		
	
	
	
		
			Python
		
	
	
	
	
	
| """Module for testing the behavior of generics across different modules."""
 | |
| 
 | |
| from typing import TypeVar, Generic, Optional, TypeAliasType
 | |
| 
 | |
| default_a: Optional['A'] = None
 | |
| default_b: Optional['B'] = None
 | |
| 
 | |
| T = TypeVar('T')
 | |
| 
 | |
| 
 | |
| class A(Generic[T]):
 | |
|     some_b: 'B'
 | |
| 
 | |
| 
 | |
| class B(Generic[T]):
 | |
|     class A(Generic[T]):
 | |
|         pass
 | |
| 
 | |
|     my_inner_a1: 'B.A'
 | |
|     my_inner_a2: A
 | |
|     my_outer_a: 'A'  # unless somebody calls get_type_hints with localns=B.__dict__
 | |
| 
 | |
| type Alias = int
 | |
| OldStyle = TypeAliasType("OldStyle", int)
 | 
