a XC?hPL ã @ sž d dl mZmZ d dlmZ d dlmZ d dlZd dlZd dl Z dZ dZdd„ Zed g d ¢ƒZ de _e jdkrŽd e j_de j_de j_de j_G dd„ deƒZG dd„ ded�ZG dd„ deƒZG dd„ deƒZG dd„ deƒZeedƒrúG dd„ deƒZeedƒ�rG d d!„ d!eƒZeed"ƒ�r2G d#d$„ d$eƒZeed%ƒ�rNG d&d'„ d'eƒZd(d)„ Zed%ƒ�rfeZn4edƒ�rveZn$ed"ƒ�r†eZnedƒ�r–eZneZdS )*é )ÚABCMetaÚabstractmethod)Ú namedtuple)ÚMappingNé é c C sd t | tƒr| }n:zt| ¡ ƒ}W n( tttfyH td | ¡ƒd ‚Y n0 |dk r`td |¡ƒ‚|S )NzInvalid file object: {!r}r zInvalid file descriptor: {})Ú isinstanceÚintÚfilenoÚAttributeErrorÚ TypeErrorÚ ValueErrorÚformat)ÚfileobjÚfd© r ú./opt/alt/python39/lib64/python3.9/selectors.pyÚ_fileobj_to_fd s ÿÿr ÚSelectorKey)r r ÚeventsÚdatazŸSelectorKey(fileobj, fd, events, data) Object used to associate a file object to its backing file descriptor, selected event mask, and attached data. )é é zFile object registered.zUnderlying file descriptor.z3Events that must be waited for on this file object.zzOptional opaque data associated to this file object. For example, this could be used to store a per-client session ID.c @ s, e Zd Zdd„ Zdd„ Zdd„ Zdd„ Zd S ) Ú_SelectorMappingc C s || _ d S ©N)Ú _selector)ÚselfÚselectorr r r Ú__init__@ s z_SelectorMapping.__init__c C s t | jjƒS r )Úlenr Ú _fd_to_key©r r r r Ú__len__C s z_SelectorMapping.__len__c C sB z| j |¡}| j j| W S ty< td |¡ƒd ‚Y n0 d S ©Nú{!r} is not registered)r Ú_fileobj_lookupr ÚKeyErrorr )r r r r r r Ú__getitem__F s z_SelectorMapping.__getitem__c C s t | jjƒS r )Úiterr r r! r r r Ú__iter__M s z_SelectorMapping.__iter__N)Ú__name__Ú __module__Ú__qualname__r r" r' r) r r r r r = s r c @ sj e Zd Zeddd„ƒZedd„ ƒZddd„Zeddd „ƒZd d„ Zdd „ Z edd„ ƒZ dd„ Zdd„ ZdS )ÚBaseSelectorNc C s t ‚d S r ©ÚNotImplementedError©r r r r r r r Úregister` s zBaseSelector.registerc C s t ‚d S r r. )r r r r r Ú unregisterw s zBaseSelector.unregisterc C s | |¡ | |||¡S r )r2 r1 r0 r r r ÚmodifyŠ s zBaseSelector.modifyc C s t ‚d S r r. )r Útimeoutr r r Úselect› s zBaseSelector.selectc C s d S r r r! r r r Úclose® s zBaseSelector.closec C sJ | ¡ }|d u rtdƒ‚z || W S tyD td |¡ƒd ‚Y n0 d S )NzSelector is closedr$ )Úget_mapÚRuntimeErrorr&