Team Ai
Datasetpublic

codekingpro/portable-devtools

sourceHugging Faceupdated 5mo agoView on Hugging Face
1likes14kdownloads
selectors.cpython-314.pyc187 linesDownload Raw Back to __pycache__
1+
2��iL���Rt^RIHtHt^RIHt^RIHt^RIt^RI	t	^RI3t4^t^tRt
]!R.R$O4tR]nR]PnR	]P nR5]P"nR]P$n!RR
]4t!RR]R7t!RR]4t!RR]4t!RR]4t]!]	R4'd!RR]4t]!]	R4'd&]	P4(t]	P8(t!RR]4t]!]	R4'd!RR]4t]!]	R 4'd!R!R"]4t R#t!]!!R 4'd] t"R#]!!R4'd]t"R#]!!R4'd]t"R#]!!R4'd]t"R#]t"R#)%z|Selectors module.6 7This module allows high-level and efficient I/O multiplexing, built upon the8`select` module primitives.9)�ABCMeta�abstractmethod)�10namedtuple)�MappingNc��\V\4'dTpM\VP44pV^8d\RP
V44hV# \\\113d\RP
T44Rhi;i)z�Return a file descriptor from a file object.12 13Parameters:14fileobj -- file object or file descriptor15 16Returns:17corresponding file descriptor18 19Raises:20ValueError if the object is invalid21zInvalid file object: {!r}NzInvalid file descriptor: {})�22isinstance�int�fileno�AttributeError�	TypeError�23ValueError�format)�fileobj�fds& �Lib\selectors.py�_fileobj_to_fdrs����'�3���
��	?��W�^�^�%�&�B�24�A�v��6�=�=�b�A�B�B�
�I���	�:�6�	?��$�$*�F�7�O�5�:>�
?�	?�s�A�2B	�SelectorKeyz�SelectorKey(fileobj, fd, events, data)25 26    Object used to associate a file object to its backing27    file descriptor, selected event mask, and attached data.28zFile object registered.zUnderlying file descriptor.z3Events that must be waited for on this file object.zvOptional opaque data associated to this file object.29For example, this could be used to store a per-client session ID.c�Fa�]tRt^<toRtRtRtR	RltRtRt	Rt30VtR#)31�_SelectorMappingz)Mapping of file objects to selector keys.c��WnR#�N��	_selector)�self�selectors&&r�__init__�_SelectorMapping.__init__?s��!��c�@�\VPP4#r)�lenr�32_fd_to_key�rs&r�__len__�_SelectorMapping.__len__Bs���4�>�>�,�,�-�-rNc��VPPV4pVPPPW24#r)r�_fileobj_lookupr �get)rr�defaultrs&&& rr&�_SelectorMapping.getEs1��
�^�^�
+�
+�G�
4���~�~�(�(�,�,�R�9�9rc���VPPV4pVPPPV4pVf\	RPV44hV#)N�{!r} is not registered)rr%r r&�KeyErrorr
)rrr�keys&&  r�__getitem__�_SelectorMapping.__getitem__IsQ��
�^�^�
+�
+�G�
4���n�n�'�'�+�+�B�/���;��3�:�:�7�C�D�D��33rc�@�\VPP4#r)�iterrr r!s&r�__iter__�_SelectorMapping.__iter__Ps���D�N�N�-�-�.�.rrr)�__name__�34__module__�__qualname__�__firstlineno__�__doc__rr"r&r-r1�__static_attributes__�__classdictcell__��
__classdict__s@rrr<s&����3�"�.�:��/�/rrc�a�]tRt^TtoRt]R
Rl4t]R4tR
Rlt]R
Rl4t	Rt35Rt]R	4tR36t
RtRtVtR#)�BaseSelectora	Selector abstract base class.37 38A selector supports registering file objects to be monitored for specific39I/O events.40 41A file object is a file descriptor or any object with a `fileno()` method.42An arbitrary object can be attached to the file object, which can be used43for example to store context information, a callback, etc.44 45A selector can use various implementations (select(), poll(), epoll()...)46depending on the platform. The default `Selector` class uses the most47efficient implementation on the current platform.48Nc��\h)a�Register a file object.49 50Parameters:51fileobj -- file object or file descriptor52events  -- events to monitor (bitwise mask of EVENT_READ|EVENT_WRITE)53data    -- attached data54 55Returns:56SelectorKey instance57 58Raises:59ValueError if events is invalid60KeyError if fileobj is already registered61OSError if fileobj is closed or otherwise is unacceptable to62        the underlying system call (if a system call is made)63 64Note:65OSError may or may not be raised66��NotImplementedError�rr�events�datas&&&&r�register�BaseSelector.registercs67��*"�!rc��\h)aUnregister a file object.68 69Parameters:70fileobj -- file object or file descriptor71 72Returns:73SelectorKey instance74 75Raises:76KeyError if fileobj is not registered77 78Note:79If fileobj is registered but has since been closed this does80*not* raise OSError (even if the wrapped syscall does)81r?)rrs&&r�82unregister�BaseSelector.unregisterz�83��""�!rc�H�VPV4VPWV4#)a1Change a registered file object monitored events or attached data.84 85Parameters:86fileobj -- file object or file descriptor87events  -- events to monitor (bitwise mask of EVENT_READ|EVENT_WRITE)88data    -- attached data89 90Returns:91SelectorKey instance92 93Raises:94Anything that unregister() or register() raises95)rGrDrAs&&&&r�modify�BaseSelector.modify�s!��	
���� ��}�}�W�d�3�3rc��\h)aPerform the actual selection, until some monitored file objects are96ready or a timeout expires.97 98Parameters:99timeout -- if timeout > 0, this specifies the maximum wait time, in100           seconds101           if timeout <= 0, the select() call won't block, and will102           report the currently ready file objects103           if timeout is None, select() will block until a monitored104           file object becomes ready105 106Returns:107list of (key, events) for ready file objects108`events` is a bitwise mask of EVENT_READ|EVENT_WRITE109r?)r�timeouts&&r�select�BaseSelector.select�rIrc��R#)z]Close the selector.110 111This must be called to make sure that any underlying resource is freed.112N�r!s&r�close�BaseSelector.close�s��113	
rc��VP4pVf\R4hW!,# \d\RPT44Rhi;i)zbReturn the key associated to a registered file object.114 115Returns:116SelectorKey for this file object117NzSelector is closedr*)�get_map�RuntimeErrorr+r
)rr�mappings&& r�get_key�BaseSelector.get_key�sY���,�,�.���?��3�4�4�	O��#�#���	O��3�:�:�7�C�D�$�N�	O�s	�)�'Ac��\h)z2Return a mapping of file objects to selector keys.r?r!s&rrV�BaseSelector.get_map�s118��"�!rc��V#rrRr!s&r�	__enter__�BaseSelector.__enter__�s���rc�&�VP4R#r)rS)r�argss&*r�__exit__�BaseSelector.__exit__�s���119�120�rrRr)r3r4r5r6r7rrDrGrKrOrSrYrVr^rbr8r9r:s@rr=r=Tsy������"��"�,�"��"�$4�"�"��"�$
�O��"��"���rr=)�	metaclassc�Va�]tRt^�toRtRtRtRRltRtRRlt	Rt121R	tR122tVt
R#)�_BaseSelectorImplzBase selector implementation.c�4�/Vn\V4VnR#r)r r�_mapr!s&rr�_BaseSelectorImpl.__init__�s�����$�T�*��	rc��\V4# \dDTPP4F#pTPTJgKTP123uu#	hi;i)a<Return a file descriptor from a file object.124 125This wraps _fileobj_to_fd() to do an exhaustive search in case126the object is invalid but we still have it in our map.  This127is used by unregister() so we can unregister an object that128was previously registered even if it is closed.  It is also129used by _SelectorMapping.130)rrr �valuesrr�rrr,s&& rr%�!_BaseSelectorImpl._fileobj_lookup�sR��	�!�'�*�*���	����-�-�/���;�;�'�)��6�6�M�0�
�
	�s�131
�5A�A�ANc�l�V'd V\\,(,'d\RPV44h\	WPV4W#4pVPVP9d%\RPWP44hW@PVP&V#)zInvalid events: {!r}z"{!r} (FD {}) is already registered)	�132EVENT_READ�EVENT_WRITErr
rr%rr r+�rrrBrCr,s&&&& rrD�_BaseSelectorImpl.register�s����F�z�K�'?�%@�@�@��3�:�:�6�B�C�C��'�#7�#7��#@�&�O���6�6�T�_�_�$��?�"�F�7�F�F�3�5�
5�#&��������133rc��VPPVPV44pV# \d\RP	T44Rhi;i)r*N)r �popr%r+r
rls&& rrG�_BaseSelectorImpl.unregister�sZ��	O��/�/�%�%�d�&:�&:�7�&C�D�C��134���	O��3�:�:�7�C�D�$�N�	O�s	�*.�'Ac�~�VPVPV4,pY$P8wd&TPT4TP
YT4pT#Y4P8wd+TPTR7pY@PTP&T# \d\RPT44Rhi;i)r*N)rC)135r r%r+r
rBrGrDrC�_replacerrqs&&&& rrK�_BaseSelectorImpl.modifys���	O��/�/�$�"6�"6�w�"?�@�C��Z�Z���O�O�G�$��-�-���6�C�136�137�	�X�X�
��,�,�D�,�)�C�&)�O�O�C�F�F�#��138���	O��3�:�:�7�C�D�$�N�	O�s�"B�'B<c�H�VPP4RVnR#r)r �clearrhr!s&rrS�_BaseSelectorImpl.closes����������	rc��VP#r)rhr!s&rrV�_BaseSelectorImpl.get_maps���y�y�r)r rhr)r3r4r5r6r7rr%rDrGrKrSrVr8r9r:s@rrfrf�s0����'�+��&�����rrfc�aa�]tRtRtoRtV3RltR139V3RlltV3Rlt]PR8XdR140Rlt141M]Pt142R143RltR	tVt
V;t#)�SelectSelectorizSelect-based selector.c�`<�\SV`4\4Vn\4VnR#r)�superr�set�_readers�_writers�r�	__class__s&�rr�SelectSelector.__init__s ���
�������
����
rc�<�\SV`WV4pV\,'d&VPP	VP1444V\,'d&VPP	VP1454V#r)r�rDror��addrrpr�)rrrBrCr,r�s&&&& �rrD�SelectSelector.register!s[����g��w��5���J����M�M���c�f�f�%��K����M�M���c�f�f�%��146rc�<�\SV`V4pVPPVP4VP147PVP4V#r)r�rGr��discardrr��rrr,r�s&& �rrG�SelectSelector.unregister)sC����g� ��)���
�
���c�f�f�%��
�
���c�f�f�%��148r�win32c�L�\P!WW$4wrpWV,.3#r)rO)r�r�w�_rN�xs&&&&& r�_select�SelectSelector._select0s$���m�m�A�!�5�G�A�!��!�e�R�<�rc���VfRM\V^4p.pVPVPVP.V4wr4p\T4p\T4pY4,pTPPpTFapT!T4p	T	'gKY�9;'d\Y�9;'d\,p149TPY�T	P,34Kc	T# \dTu#i;ir)�maxr�r�r��InterruptedError�	frozensetr r&rorp�appendrB)rrN�readyr�r�r��rw�
fd_to_key_getrr,rBs&&         rrO�SelectSelector.select6s���!�/�$�s�7�A�����	��l�l�4�=�=�$�-�-��W�M�G�A�!�
�a�L���a�L��
�U�����+�+�
��B���#�C��s��7�1�1�z��W�4�4��6�����c�C�J�J�#6�7�8����� �	��L�	�s�+C�
C.�-C.)r�r�r)r3r4r5r6r7rrDrG�sys�platformr�rOr8r9�
__classcell__�r�r;s@@rrrs?���� ��150���|�|�w��	 ��-�-���rrc�xaa�]tRtRtoRtRtRtRtV3RltR151V3Rllt	V3Rlt152R153V3RlltR154RltR	t
VtV;t#)�_PollLikeSelectoriJz<Base class shared between poll, epoll and devpoll selectors.Nc�N<�\SV`4VP4VnR#r)r�r�
_selector_clsrr�s&�rr�_PollLikeSelector.__init__Ps���
�����+�+�-��rc�.<�\SV`WV4pV\,;'d
VPV\,;'d
VP155,pVPPVPV4V# \ST`!T4h;ir)	r�rDro�_EVENT_READrp�_EVENT_WRITErrrG)rrrBrCr,�
poller_eventsr�s&&&&  �rrD�_PollLikeSelector.registerTs�����g��w��5�� �:�-�B�B�$�2B�2B�"�[�0�F�F�T�5F�5F�H�
�	��N�N�#�#�C�F�F�M�:��156��	��G��w�'��s�&B�Bc�<�\SV`V4pVPPVP4V# \dT#i;ir)r�rGrr�OSErrorr�s&& �rrG�_PollLikeSelector.unregister_sO����g� ��)��	��N�N�%�%�c�f�f�-�157�158��	�	�
��159�		�s�%9�A�Ac�B<�VPVPV4,pRpY$P8wdqT\,;'d
TP160T\,;'d
TP,pTPPTPT4RpY4P8wdRpT'd+TPY#R7pY@PTP&T# \d\T:R24Rhi;i \ST`1T4h;i)z is not registeredNFT)rBrC)r r%r+rBror�rpr�rrKrr�rGrCrw)rrrBrCr,�changed�selector_eventsr�s&&&&   �rrK�_PollLikeSelector.modifyis���	G��/�/�$�"6�"6�w�"?�@�C����Z�Z�� &�� 3� H� H��8H�8H�"(�;�"6�"L�"L�4�;L�;L� N�O�
����%�%�c�f�f�o�>��G��8�8���G���,�,�f�,�8�C�&)�O�O�C�F�F�#��161��'�	G��g�[�(:�;�<�$�F�	G��
���"�7�+��s�"C-�?&D�-D	�Dc���VfRpM'V^8:d^pM\P!VR,4p.pVPPV4pTP162PpTF�wrVT!T4pT'gKY`P(,;'d\Y`P(,;'d\,pTPYxTP,34K�	T# \dTu#i;i)N�@�@)
�math�ceilr�pollr�r r&r�rpr�ror�rB)	rrNr��
fd_event_listr�r�eventr,rBs	&&       rrO�_PollLikeSelector.select�s����?��G�
��\��G��i�i��#�
�.�G���	� �N�N�/�/��8�M����+�+�
�&�I�B���#�C��s� �$4�$4�#4�4�D�D��#�'8�'8�&8�8�G�G�Z�I�����c�C�J�J�#6�7�8�'���� �	��L�	�s�C,�,
C<�;C<rr)r3r4r5r6r7r�r�r�rrDrGrKrOr8r9r�r�s@@rr�r�Js5����F��M��K��L�.�	���0�rr�r�c�b�]tRtRtRt]Pt]Pt	]PtRtR#)�PollSelectori�zPoll-based selector.rRN)
r3r4r5r6r7rOr�r��POLLINr��POLLOUTr�r8rRrrr�r��s ��"����
��m�m���~�~�rr��epollc�aa�]tRtRtoRt]Pt]Pt	]PtRtRRltV3Rlt
RtVtV;t#)�
EpollSelectori�zEpoll-based selector.c�6�VPP4#r�rr	r!s&rr	�EpollSelector.fileno�����>�>�(�(�*�*rc�0�VfRpM.V^8:d^pM$\P!VR,4R,p\VP4;'g^p.pVPPW4pTPpTF~wrgTPT4pT'gK T\,;'d\T\,;'d\,p	TPY�TP,34K�	T# \dTu#i;i)Nr�g����MbP?�����)r�r�rr rr�r�r&�_NOT_EPOLLINrp�
_NOT_EPOLLOUTror�rB)163rrN�max_evr�r��	fd_to_keyrr�r,rBs164&&        rrO�EpollSelector.select�s��������A�����)�)�G�c�M�2�T�9��165����)�.�.�Q�F��E�
� $��� 3� 3�G� D�
����I�*�	���m�m�B�'���3�$�|�3�C�C��!&��!6�!E�!E�:�G�F��L�L�#��166�167�':�!;�<�+��L��$�
���
�s�D�
D�Dc�X<�VPP4\SV`4R#r�rrSr�r�s&�rrS�EpollSelector.close������N�N� � �"��G�M�OrrRr)r3r4r5r6r7rOr�r��EPOLLINr��EPOLLOUTr�r	rSr8r9r�r�s@@rr�r��s7����#����
��n�n������	+�	�<	�	rr��devpollc�aa�]tRtRtoRt]Pt]Pt	]PtRtV3Rlt
RtVtV;t#)�DevpollSelectori�zSolaris /dev/poll selector.c�6�VPP4#rr�r!s&rr	�DevpollSelector.fileno�r�rc�X<�VPP4\SV`4R#rr�r�s&�rrS�DevpollSelector.close�r�rrR)r3r4r5r6r7rOr�r�r�r�r�r�r	rSr8r9r�r�s@@rr�r��s2����)����
��m�m���~�~��	+�	�	rr��kqueuec�naa�]tRtRtoRtV3RltRtR168V3RlltV3RltR169Rlt	V3Rlt170R	tVtV;t
#)�KqueueSelectori�zKqueue-based selector.c�f<�\SV`4\P!4Vn^VnR#)�N)r�rrOr�r�_max_eventsr�s&�rr�KqueueSelector.__init__�s#����G���#�]�]�_�D�N� �D�rc�6�VPP4#rr�r!s&rr	�KqueueSelector.fileno�r�rc�t<�\SV`WV4pV\,'dv\P!VP171\P\P4pVPPV.^^4V;P^,
un172V\,'dv\P!VP173\P\P4pVPPV.^^4V;P^,
un174V# \ST`5T4h;i)r�)r�rDrorO�keventr�KQ_FILTER_READ�	KQ_EV_ADDr�controlr�rp�KQ_FILTER_WRITErG)rrrBrCr,�kevr�s&&&&  �rrD�KqueueSelector.register�s�����'�"�7�D�9�C�

��J�&�&� �-�-�����0E�0E�(.�(8�(8�:�C��N�N�*�*�C�5�!�Q�7��$�$��)�$��K�'�'� �-�-�����0F�0F�(.�(8�(8�:�C��N�N�*�*�C�5�!�Q�7��$�$��)�$��J��
���"�7�+��s�BD%�.A5D%�%D7c�<�\SV`V4pVP\,'dw\P175!VP\P\P4pV;P^,un	VPPV.^^4VP\,'dy\P176!VP\P\P4pV;P^,un	VPPV.^^4V#V# \dL�i;i \dT#i;i)�)r�rGrBrorOr�rr��KQ_EV_DELETEr�rr�r�rpr�)rrr,r�r�s&&  �rrG�KqueueSelector.unregisters����'�$�W�-�C��z�z�J�&�&��m�m�C�F�F�F�,A�,A�$*�$7�$7�9��� � �A�%� ���N�N�*�*�C�5�!�Q�7�177�z�z�K�'�'��m�m�C�F�F�F�,B�,B�$*�$7�$7�9��� � �A�%� ���N�N�*�*�C�5�!�Q�7��J�3�J�����������J��s$�D;�E�;E	�E	�E�Ec� �VfRM\V^4pVP;'g^p.pVPPRW!4pTP178PpTF�pTPpTPpT!T4p	T	'gK-T\P8H;'d\T\P8H;'d\,p179TPY�T	P,34K�	T# \dTu#i;ir)r�r�rr�r�r r&�ident�filterrOr�ror�rpr�rB)rrNr�r��kev_listr�r�r�flagr,rBs&&         rrO�KqueueSelector.selects���%�o�d�3�w��?�G��%�%�*�*��F��E�
��>�>�1�1�$��H��!�O�O�/�/�M����Y�Y���z�z��#�B�'���3�#�v�'<�'<�<�K�K��!%��)?�)?�!?�!O�!O�K�Q�F��L�L�#��180�181�':�!;�<� ��L��$�
���
�s�C=�=
D
�D
c�X<�VPP4\SV`4R#rr�r�s&�rrS�KqueueSelector.close3r�r)r�rr)r3r4r5r6r7rr	rDrGrOrSr8r9r�r�s@@rr�r��s+����$�	!�182	+�	�$	�.	�.	�	rr�c��\\VR4pVfR#V!4pVR8XdVP^4R#VP4R# \dR#i;i)zFCheck if we can use the selector depending upon the183operating system. NFr�T)�getattrrOr�rSr�)�methodr�selector_objs&  r�_can_user�8se���v�v�t�,�H����184��z���V�����a� ��
��� �������s�A�A�A�A)rrrBrC)#r7�abcrr�collectionsr�collections.abcrr�rOr�rorprrrrrBrCrr=rfrr��hasattrr�r�r�r�r�r�r�r�r��DefaultSelectorrRrr�<module>rs����(�"�#��
�185��186����2��(K�L�����1878�����6�����R�����E�����/�w�/�0{�W�{�|C��C�N.�&�.�bO�)�O�d�6�6���&�(�&��6�7����N�N�?�L��_�_�$�M�)�)�)�X�6�9����+���6�8���M�*�M�`�4�H���$�O�
�g���#�O�
�i���%�O�
�f���"�O�$�Or
codekingpro/portable-devtools · Team Ai