mirror of
https://github.com/johndoe6345789/typthon.git
synced 2026-04-24 13:45:05 +00:00
- Fixed _PyExc_ → _TyExc_ globally - Fixed duplicated macro in SimpleExtendsException - Fixed Py ## EXCSTORE ## Object → Ty ## EXCSTORE ## Object in macros These fixes resolve macro expansion issues in exception definitions. Co-authored-by: johndoe6345789 <224850594+johndoe6345789@users.noreply.github.com>
41 lines
900 B
C
41 lines
900 B
C
#ifndef Ty_INTERNAL_EXCEPTIONS_H
|
|
#define Ty_INTERNAL_EXCEPTIONS_H
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
#ifndef Ty_BUILD_CORE
|
|
# error "this header requires Ty_BUILD_CORE define"
|
|
#endif
|
|
|
|
|
|
/* runtime lifecycle */
|
|
|
|
extern TyStatus _TyExc_InitState(TyInterpreterState *);
|
|
extern TyStatus _TyExc_InitGlobalObjects(TyInterpreterState *);
|
|
extern int _TyExc_InitTypes(TyInterpreterState *);
|
|
extern void _TyExc_Fini(TyInterpreterState *);
|
|
|
|
|
|
/* other API */
|
|
|
|
struct _Py_exc_state {
|
|
// The dict mapping from errno codes to OSError subclasses
|
|
TyObject *errnomap;
|
|
TyBaseExceptionObject *memerrors_freelist;
|
|
int memerrors_numfree;
|
|
#ifdef Ty_GIL_DISABLED
|
|
PyMutex memerrors_lock;
|
|
#endif
|
|
// The ExceptionGroup type
|
|
TyObject *TyExc_ExceptionGroup;
|
|
};
|
|
|
|
extern void _TyExc_ClearExceptionGroupType(TyInterpreterState *);
|
|
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
#endif /* !Ty_INTERNAL_EXCEPTIONS_H */
|