MINI MINI MANI MO
3
  \K                 @   s  d dl mZmZ d dlmZmZ d dlZd dlZd dlZd(Z	d)Z
dd Zeddd	d
dgZde_
ejd*krdej_
dej_
dej_
dej_
G dd deZG dd dedZG dd deZG dd deZeedrG dd deZeedrG d d! d!eZeed"rG d#d$ d$eZeed%r:G d&d' d'eZd'e krLeZn:d!e kr^eZn(d$e krpeZnde kreZneZdS )+    )ABCMetaabstractmethod)
namedtupleMappingN   c          
   C   sf   t | tr| }n<yt| j }W n* tttfk
rJ   tdj| d Y nX |dk rbtdj||S )NzInvalid file object: {!r}r   zInvalid file descriptor: {})
isinstanceintfilenoAttributeError	TypeError
ValueErrorformat)fileobjfd r   !/usr/lib64/python3.6/selectors.py_fileobj_to_fd   s    
r   SelectorKeyr   r   eventsdatazSelectorKey(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)selfZselectorr   r   r   __init__>