File: //lib/python3.9/site-packages/serial/urlhandler/__pycache__/protocol_hwgrep.cpython-39.pyc
a
��WW/ � @ sd d dl Z d dlZ ze W n ey. eZY n0 G dd� de j�Zedkr`ed�Zde_e e� dS )� Nc @ s* e Zd ZdZejjjdd� �Zdd� ZdS )�SerialzOJust inherit the native Serial port implementation and patch the port property.c C s@ t |t�r,|�d�r,tjj�| | �|�� ntjj�| |� dS )z%translate port name before storing it� hwgrep://N)�
isinstance�
basestring�
startswith�serialr �port�__set__�from_url)�self�value� r
�E/usr/lib/python3.9/site-packages/serial/urlhandler/protocol_hwgrep.pyr $ s zSerial.portc
C s& |� � �d�r|dd� }d}d}|�d�}|�d�}|D ]n}d|v rX|�dd�\}}n|}d}|d kr�t|�d }|dk r�td
�|���q:|dkr�d}q:td
�|���q:ttj j
�|��D ]T\} }
}|r�zt�| �}W n tj
y� Y q�Y n
0 |�� |�r
|d8 }q�| S t�
d�|���dS )z(extract host and port from an URL stringr � Nr F�&�=� �nz9option "n" expects a positive integer larger than 1: {!r}Z skip_busyTzunknown option: {!r}z#no ports found matching regexp {!r})�lowerr �split�pop�int�
ValueError�format�sortedr ZtoolsZ
list_portsZgrepr ZSerialException�close)
r �urlr Z test_open�argsZregexp�arg�optionr r ZdescZhwid�sr
r
r r
, s<