MINI MINI MANI MO

Path : /usr/lib64/python3.6/__pycache__/
File Upload :
Current File : //usr/lib64/python3.6/__pycache__/selectors.cpython-36.opt-2.pyc

3


 \K@sddlmZmZddlmZmZddlZddlZddlZd(Z	d)Z
ddZeddd	d
dgZde_
ejd*krdej_
dej_
dej_
dej_
GdddeZGdddedZGdddeZGdddeZeedrGdddeZeedrGd d!d!eZeed"rGd#d$d$eZeed%r:Gd&d'd'eZd'ekrLeZn:d!ekr^eZn(d$ekrpeZndekreZneZdS)+)ABCMetaabstractmethod)
namedtupleMappingNc
Csft|tr|}n<yt|j}Wn*tttfk
rJtdj|dYnX|dkrbtdj||S)NzInvalid file object: {!r}rzInvalid file descriptor: {})
isinstanceintfilenoAttributeError	TypeError
ValueErrorformat)fileobjfdr!/usr/lib64/python3.6/selectors.py_fileobj_to_fds
rSelectorKeyrreventsdatazSelectorKey(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,eZdZddZddZddZddZd	S)
_SelectorMappingcCs
||_dS)N)	_selector)selfZselectorrrr__init__>sz_SelectorMapping.__init__cCst|jjS)N)lenr
_fd_to_key)rrrr__len__Asz_SelectorMapping.__len__cCsBy|jj|}|jj|Stk
r<tdj|dYnXdS)Nz{!r} is not registered)r_fileobj_lookuprKeyErrorr
)rrrrrr__getitem__Ds
z_SelectorMapping.__getitem__cCst|jjS)N)iterrr)rrrr__iter__Ksz_SelectorMapping.__iter__N)__name__
__module____qualname__rrr!r#rrrrr;src@sjeZdZedddZeddZdddZeddd	Zd
dZdd
Z	eddZ
ddZddZdS)BaseSelectorNcCstdS)N)NotImplementedError)rrrrrrrregister^szBaseSelector.registercCstdS)N)r()rrrrr
unregisteruszBaseSelector.unregistercCs|j||j|||S)N)r*r))rrrrrrrmodifys
zBaseSelector.modifycCstdS)N)r()rtimeoutrrrselectszBaseSelector.selectcCsdS)Nr)rrrrcloseszBaseSelector.closecCsJ|j}|dkrtdy||Stk
rDtdj|dYnXdS)NzSelector is closedz{!r} is not registered)get_mapRuntimeErrorr r
)rrmappingrrrget_keyszBaseSelector.get_keycCstdS)N)r()rrrrr/szBaseSelector.get_mapcCs|S)Nr)rrrr	__enter__szBaseSelector.__enter__cGs|jdS)N)r.)rargsrrr__exit__szBaseSelector.__exit__)N)N)N)
r$r%r&rr)r*r+r-r.r2r/r3r5rrrrr'Os
r')	metaclassc@sPeZdZddZddZdddZdd	Zdd
dZdd
ZddZ	ddZ
dS)_BaseSelectorImplcCsi|_t||_dS)N)rr_map)rrrrrsz_BaseSelectorImpl.__init__cCsHyt|Stk
rBx"|jjD]}|j|kr$|jSq$WYnXdS)N)rrrvaluesrr)rrkeyrrrrs	

z!_BaseSelectorImpl._fileobj_lookupNcCsd|s|ttB@r"tdj|t||j|||}|j|jkrTtdj||j||j|j<|S)NzInvalid events: {!r}z"{!r} (FD {}) is already registered)	
EVENT_READEVENT_WRITErr
rrrrr )rrrrr:rrrr)sz_BaseSelectorImpl.registercCs@y|jj|j|}Wn$tk
r:tdj|dYnX|S)Nz{!r} is not registered)rpoprr r
)rrr:rrrr*s
z_BaseSelectorImpl.unregistercCsy|j|j|}Wn$tk
r8tdj|dYnX||jkr^|j||j|||}n"||jkr|j|d}||j|j	<|S)Nz{!r} is not registered)r)
rrr r
rr*r)r_replacer)rrrrr:rrrr+s


z_BaseSelectorImpl.modifycCs|jjd|_dS)N)rclearr8)rrrrr.s
z_BaseSelectorImpl.closecCs|jS)N)r8)rrrrr/sz_BaseSelectorImpl.get_mapcCs$y
|j|Stk
rdSXdS)N)rr )rrrrr_key_from_fds	
z_BaseSelectorImpl._key_from_fd)N)N)r$r%r&rrr)r*r+r.r/r@rrrrr7s


r7cs\eZdZfddZd
fdd	ZfddZejdkrDdd	d
Zne	j	ZdddZ	Z
S)SelectSelectorcstjt|_t|_dS)N)superrset_readers_writers)r)	__class__rrr%s
zSelectSelector.__init__Ncs@tj|||}|t@r&|jj|j|t@r<|jj|j|S)N)rBr)r;rDaddrr<rE)rrrrr:)rFrrr)*szSelectSelector.registercs,tj|}|jj|j|jj|j|S)N)rBr*rDdiscardrrE)rrr:)rFrrr*2szSelectSelector.unregisterZwin32cCs$tj||||\}}}|||gfS)N)r-)rrw_r,xrrr_select9szSelectSelector._selectc	
Cs|dkrdnt|d}g}y|j|j|jg|\}}}Wntk
rL|SXt|}t|}xV||BD]J}d}||kr|tO}||kr|tO}|j|}|rh|j	|||j
@fqhW|S)Nr)maxrMrDrEInterruptedErrorrCr;r<r@appendr)	rr,readyrIrJrKrrr:rrrr-?s$
zSelectSelector.select)N)N)N)r$r%r&rr)r*sysplatformrMr-
__classcell__rr)rFrrA"s
rApollcs@eZdZfddZd
fdd	ZfddZddd	ZZS)PollSelectorcstjtj|_dS)N)rBrr-rU_poll)r)rFrrrZs
zPollSelector.__init__NcsLtj|||}d}|t@r&|tjO}|t@r8|tjO}|jj|j||S)Nr)	rBr)r;r-POLLINr<POLLOUTrWr)rrrrr:poll_events)rFrrr)^s

zPollSelector.registercstj|}|jj|j|S)N)rBr*rWr)rrr:)rFrrr*hszPollSelector.unregisterc
Cs|dkrd}n|dkrd}ntj|d}g}y|jj|}Wntk
rR|SXx^|D]V\}}d}|tj@rz|tO}|tj@r|t	O}|j
|}|rZ|j|||j@fqZW|S)Nrg@@)
mathceilrWrUrOr-rXr<rYr;r@rPr)rr,rQ
fd_event_listreventrr:rrrr-ms(
zPollSelector.select)N)N)r$r%r&rr)r*r-rTrr)rFrrVWs
rVepollcsTeZdZfddZddZdfdd	Zfdd	Zdd
dZfdd
ZZ	S)
EpollSelectorcstjtj|_dS)N)rBrr-r__epoll)r)rFrrrs
zEpollSelector.__init__cCs
|jjS)N)rar	)rrrrr	szEpollSelector.filenoNcsttj|||}d}|t@r&|tjO}|t@r8|tjO}y|jj|j|Wn"t	k
rntj
|YnX|S)Nr)rBr)r;r-EPOLLINr<EPOLLOUTrar
BaseExceptionr*)rrrrr:Zepoll_events)rFrrr)s

zEpollSelector.registercs8tj|}y|jj|jWntk
r2YnX|S)N)rBr*rarOSError)rrr:)rFrrr*szEpollSelector.unregisterc	
Cs|dkrd}n |dkrd}ntj|dd}tt|jd}g}y|jj||}Wntk
rh|SXx^|D]V\}}d}|tj	@r|t
O}|tj@r|tO}|j
|}|rp|j|||j@fqpW|S)Nrrg@@gMbP?)r[r\rNrrrarUrOr-rbr<rcr;r@rPr)	rr,max_evrQr]rr^rr:rrrr-s*
zEpollSelector.selectcs|jjtjdS)N)rar.rB)r)rFrrr.s
zEpollSelector.close)N)N)
r$r%r&rr	r)r*r-r.rTrr)rFrr`s

 r`devpollcsTeZdZfddZddZdfdd	Zfdd	Zdd
dZfdd
ZZ	S)DevpollSelectorcstjtj|_dS)N)rBrr-rh_devpoll)r)rFrrrs
zDevpollSelector.__init__cCs
|jjS)N)rjr	)rrrrr	szDevpollSelector.filenoNcsLtj|||}d}|t@r&|tjO}|t@r8|tjO}|jj|j||S)Nr)	rBr)r;r-rXr<rYrjr)rrrrr:rZ)rFrrr)s

zDevpollSelector.registercstj|}|jj|j|S)N)rBr*rjr)rrr:)rFrrr*szDevpollSelector.unregisterc
Cs|dkrd}n|dkrd}ntj|d}g}y|jj|}Wntk
rR|SXx^|D]V\}}d}|tj@rz|tO}|tj@r|t	O}|j
|}|rZ|j|||j@fqZW|S)Nrg@@)
r[r\rjrUrOr-rXr<rYr;r@rPr)rr,rQr]rr^rr:rrrr-s(
zDevpollSelector.selectcs|jjtjdS)N)rjr.rB)r)rFrrr.s
zDevpollSelector.close)N)N)
r$r%r&rr	r)r*r-r.rTrr)rFrris

rikqueuecsTeZdZfddZddZdfdd	Zfdd	Zdd
dZfdd
ZZ	S)KqueueSelectorcstjtj|_dS)N)rBrr-rk_kqueue)r)rFrrrs
zKqueueSelector.__init__cCs
|jjS)N)rmr	)rrrrr	szKqueueSelector.filenoNcstj|||}y`|t@r@tj|jtjtj}|jj	|gdd|t
@rntj|jtjtj}|jj	|gddWn"tk
rtj
|YnX|S)Nr)rBr)r;r-keventrKQ_FILTER_READZ	KQ_EV_ADDrmcontrolr<KQ_FILTER_WRITErdr*)rrrrr:kev)rFrrr)szKqueueSelector.registercstj|}|jt@rVtj|jtjtj}y|j	j
|gddWntk
rTYnX|jt@rtj|jtj
tj}y|j	j
|gddWntk
rYnX|S)Nr)rBr*rr;r-rnrroZKQ_EV_DELETErmrprer<rq)rrr:rr)rFrrr*'s 

zKqueueSelector.unregisterc

Cs|dkrdnt|d}t|j}g}y|jjd||}Wntk
rL|SXxb|D]Z}|j}|j}d}|tj	krz|t
O}|tjkr|tO}|j
|}	|	rT|j|	||	j@fqTW|S)Nr)rNrrrmrprOZidentfilterr-ror;rqr<r@rPr)
rr,rgrQZkev_listrrrflagrr:rrrr-<s&




zKqueueSelector.selectcs|jjtjdS)N)rmr.rB)r)rFrrr.Rs
zKqueueSelector.close)N)N)
r$r%r&rr	r)r*r-r.rTrr)rFrrl
s
rlr)rr)abcrrcollectionsrrr[r-rRr;r<rr__doc__version_inforrrrrr'r7rAhasattrrVr`rirlglobalsZDefaultSelectorrrrr<module>sF
~U3
1G8M

OHA YOOOO