mirror of
				https://github.com/python/cpython.git
				synced 2025-11-03 23:21:29 +00:00 
			
		
		
		
	
		
			
	
	
		
			42 lines
		
	
	
	
		
			701 B
		
	
	
	
		
			C
		
	
	
	
	
	
		
		
			
		
	
	
			42 lines
		
	
	
	
		
			701 B
		
	
	
	
		
			C
		
	
	
	
	
	
| 
								 | 
							
								#ifndef Py_INTERNAL_CONTEXT_H
							 | 
						||
| 
								 | 
							
								#define Py_INTERNAL_CONTEXT_H
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#include "internal/hamt.h"
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								struct _pycontextobject {
							 | 
						||
| 
								 | 
							
								    PyObject_HEAD
							 | 
						||
| 
								 | 
							
								    PyContext *ctx_prev;
							 | 
						||
| 
								 | 
							
								    PyHamtObject *ctx_vars;
							 | 
						||
| 
								 | 
							
								    PyObject *ctx_weakreflist;
							 | 
						||
| 
								 | 
							
								    int ctx_entered;
							 | 
						||
| 
								 | 
							
								};
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								struct _pycontextvarobject {
							 | 
						||
| 
								 | 
							
								    PyObject_HEAD
							 | 
						||
| 
								 | 
							
								    PyObject *var_name;
							 | 
						||
| 
								 | 
							
								    PyObject *var_default;
							 | 
						||
| 
								 | 
							
								    PyObject *var_cached;
							 | 
						||
| 
								 | 
							
								    uint64_t var_cached_tsid;
							 | 
						||
| 
								 | 
							
								    uint64_t var_cached_tsver;
							 | 
						||
| 
								 | 
							
								    Py_hash_t var_hash;
							 | 
						||
| 
								 | 
							
								};
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								struct _pycontexttokenobject {
							 | 
						||
| 
								 | 
							
								    PyObject_HEAD
							 | 
						||
| 
								 | 
							
								    PyContext *tok_ctx;
							 | 
						||
| 
								 | 
							
								    PyContextVar *tok_var;
							 | 
						||
| 
								 | 
							
								    PyObject *tok_oldval;
							 | 
						||
| 
								 | 
							
								    int tok_used;
							 | 
						||
| 
								 | 
							
								};
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								int _PyContext_Init(void);
							 | 
						||
| 
								 | 
							
								void _PyContext_Fini(void);
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#endif /* !Py_INTERNAL_CONTEXT_H */
							 |