File: //lib/python3.9/site-packages/serial/urlhandler/__pycache__/protocol_alt.cpython-39.pyc
a
��WW� � @ sZ zd dl Z W n ey* d dlmZ Y n0 d dlZdd� ZedkrVe�d�Ze e� dS )� Nc
C s� t �| �}|jdkr&t�d�|j���d}z@t �|jd��� D ](\}}|dkrX|d }q>t d�|���q>W n4 t y� } zt�d�|���W Y d }~n
d }~0 0 t
t|�s�t d
�|���tt|�}t|tj
�s�t d�|���d�|j|jg�|fS )
z(extract host and port from an URL stringZaltzmexpected a string in the form "alt://port[?option[=value][&option[=value]]]": not starting with alt:// ({!r})�SerialT�classr zunknown option: {!r}zRexpected a string in the form "alt://port[?option[=value][&option[=value]]]": {!r}Nzunknown class: {!r}z'class {!r} is not an instance of Serial� )�urlparse�urlsplit�scheme�serialZSerialException�format�parse_qs�query�items�
ValueError�hasattr�getattr�
issubclassr �join�netloc�path)�url�parts�
class_name�option�values�e�cls� r �B/usr/lib/python3.9/site-packages/serial/urlhandler/protocol_alt.py�serial_class_for_url s2
��
��
r �__main__z&alt:///dev/ttyS0?class=PosixPollSerial)
r �ImportError�urllib.parse�parser r �__name__Zserial_for_url�s�printr r r r �<module> s