a xa@s&ddlZddlTddlmZddlmZeZe de dde de d dd evrle d e d dd dZ ddZ eej ddZ eejddZd evreejdd Zejje_devreejddZdevreejddZeje_devreejddZ[[dS)N)*)wraps)IntEnumSignalscCs(|r|dr|d p&|dS)NZSIGZSIG_ZCTRL_)isupper startswithnamer /usr/lib/python3.9/signal.py sr HandlerscCs|dvS)N)SIG_DFLSIG_IGNr rr r r r pthread_sigmaskZSigmaskscCs|dvS)N) SIG_BLOCK SIG_UNBLOCK SIG_SETMASKr rr r r r rcCs&z ||WSty |YS0dS)zsConvert a numeric value to an IntEnum member. If it's not a known member, return the numeric value itself. N) ValueError)valueZ enum_klassr r r _int_to_enums  rc Cs*z t|WSttfy$|YS0dS)zmConvert an IntEnum member to a numeric value. If it's not an IntEnum member return the value itself. N)intr TypeError)rr r r _enum_to_int#s rcCstt|t|}t|tSN)_signalsignalrrr Z signalnumZhandlerr r r r-srcCst|}t|tSr)r getsignalrr rr r r r3s rcCst||}tdd|DS)Ncss|]}t|tVqdSrrr.0xr r r =rz"pthread_sigmask..)rrset)ZhowmaskZsigs_setr r r r:s  sigpendingcCsddtDS)NcSsh|]}t|tqSr r r!r r r Drzsigpending..)rr'r r r r r'BssigwaitcCst|}t|tSr)rr)rr)ZsigsetZretsigr r r r)Hs  valid_signalscCsddtDS)NcSsh|]}t|tqSr r r!r r r r(Rrz valid_signals..)rr*r r r r r*Ps)r functoolsrZ_wrapsenumrZ_IntEnumglobalsZ_globals _convert___name__rrrrr__doc__r'r)r*r r r r sL