U
    ÏÐ~dñ  ã                   @   sh   d dl mZ zd dlZW n  ek
r8   d dlmZ Y nX d dlZdd„ Zedkrde 	d¡Z
ee
ƒ dS )é    )Úabsolute_importNc              
   C   sð   t  | ¡}|jdkr&t d |j¡¡‚d}z@t  |jd¡ ¡ D ](\}}|dkrX|d }q>t	d |¡ƒ‚q>W n2 t	k
rœ } zt d |¡¡‚W 5 d	}~X Y nX t
t|ƒs¶t	d
 |¡ƒ‚tt|ƒ}t|tjƒsÚt	d |¡ƒ‚d |j|jg¡|fS )z(extract host and port from an URL stringZaltzmexpected a string in the form "alt://port[?option[=value][&option[=value]]]": not starting with alt:// ({!r})ÚSerialTÚclassr   zunknown option: {!r}zRexpected a string in the form "alt://port[?option[=value][&option[=value]]]": {!r}Nzunknown class: {!r}z'class {!r} is not an instance of SerialÚ )ÚurlparseÚurlsplitÚschemeÚserialZSerialExceptionÚformatÚparse_qsÚqueryÚitemsÚ
ValueErrorÚhasattrÚgetattrÚ
issubclassr   ÚjoinÚnetlocÚpath)ÚurlÚpartsÚ
class_nameÚoptionÚvaluesÚeÚcls© r   ú[/var/www/html/myproject/myenv/lib/python3.8/site-packages/serial/urlhandler/protocol_alt.pyÚserial_class_for_url   s2    

ÿÿ
ÿÿ

r   Ú__main__z&alt:///dev/ttyS0?class=PosixPollSerial)Ú
__future__r   r   ÚImportErrorÚurllib.parseÚparser	   r   Ú__name__Zserial_for_urlÚsÚprintr   r   r   r   Ú<module>   s   
