
Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­
<!DOCTYPE html>
<html>
3
MÊ]Wf  ã               @   s²   d dl Z d dlZd dlT dZeZejdkr8d dlmZ nhd dlZej	dkrXd dl
mZ nHej	dkrxd dlmZmZmZ n(ej	d	kr�d dlmZ ned
jej	ƒƒ‚dgZdd„ ZdS )é    N)Ú*z3.1.1Zcli)ÚSerialÚntÚposix)r   ÚPosixPollSerialÚVTIMESerialÚjavaz;Sorry: no implementation for your platform ('{}') availablezserial.urlhandlerc             O   sê   |j ddƒ }t}y| jƒ }W n tk
r2   Y n”X d|krÆ|jddƒd }dj|ƒ}xntD ]X}ytj|ƒ tj||ƒ}	W n t	k
r�   w\Y q\X t
|	dƒr¬|	j| ƒ\} }n|	j}P q\W tdj|ƒƒ‚|d
|ž|Ž}
| |
_|ræ|
jƒ  |
S )a‰      Get an instance of the Serial class, depending on port/url. The port is not
    opened when the keyword parameter 'do_not_open' is true, by default it
    is. All other parameters are directly passed to the __init__ method when
    the port is instantiated.

    The list of package names that is searched for protocol handlers is kept in
    ``protocol_handler_packages``.

    e.g. we want to support a URL ``foobar://``. A module
    ``my_handlers.protocol_foobar`` is provided by the user. Then
    ``protocol_handler_packages.append("my_handlers")`` would extend the search
    path so that ``serial_for_url("foobar://"))`` would work.
    Zdo_not_openFz://é   r   z.protocol_{}Úserial_class_for_urlz$invalid URL, protocol {!r} not knownN)N)Úpopr   ÚlowerÚAttributeErrorÚsplitÚformatÚprotocol_handler_packagesÚ	importlibÚimport_moduleÚImportErrorÚhasattrr
   Ú
ValueErrorZportÚopen)ZurlÚargsÚkwargsZdo_openÚklassZurl_lowercaseZprotocolZmodule_nameZpackage_nameZhandler_moduleÚinstance© r   ú/usr/lib/python3.6/__init__.pyÚserial_for_url)   s2    



r   )r   ÚsysZserial.serialutilÚ__version__ÚVERSIONÚplatformZserial.serialclir   ÚosÚnameZserial.serialwin32Zserial.serialposixr   r   Zserial.serialjavar   r   r   r   r   r   r   r   Ú<module>
   s    



