Your IP : 216.73.216.213


Current Path : /opt/alt/python37/lib/python3.7/site-packages/clint/textui/__pycache__/
Upload File :
Current File : //opt/alt/python37/lib/python3.7/site-packages/clint/textui/__pycache__/validators.cpython-37.pyc

B

���U9�@s�dZddlmZddlZddlZddlZejddkZejddkZerPe	fZ
nefZ
Gdd�de�Z
Gdd	�d	e�ZGd
d�de�ZGdd
�d
e�ZGdd�de�ZGdd�de�ZdS)zc
clint.textui.validators
~~~~~~~~~~~~~~~~~~~~~~~

Core TextUI functionality for input validation.

�)�absolute_importN��c@seZdZdZdd�ZdS)�ValidationErrorzAn error while validating data.cCs||_|g|_dS)N)�message�
error_list)�selfr�r	�H/opt/alt/python37/lib/python3.7/site-packages/clint/textui/validators.py�__init__szValidationError.__init__N)�__name__�
__module__�__qualname__�__doc__rr	r	r	r
rsrc@s&eZdZdZdZddd�Zdd�ZdS)	�RegexValidator�zEnter a valid value.NcCs:|dk	r||_|dk	r||_t|jt�r6t�|j�|_dS)N)�regexr�
isinstance�string_types�re�compile)rrrr	r	r
r'szRegexValidator.__init__cCs|j�|�st|j��|S)zJ
        Validates that the input matches the regular expression.
        )r�searchrr)r�valuer	r	r
�__call__1s
zRegexValidator.__call__)NN)rr
rrrrrr	r	r	r
r#s

rc@s"eZdZdZddd�Zdd�ZdS)�
PathValidatorzEnter a valid path.NcCs|dk	r||_dS)N)r)rrr	r	r
r=szPathValidator.__init__cCstj�|�st|j��|S)z@
        Validates that the input is a valid directory.
        )�os�path�isdirrr)rrr	r	r
rAs
zPathValidator.__call__)N)rr
rrrrr	r	r	r
r:s
rc@s"eZdZdZddd�Zdd�ZdS)�
FileValidatorzEnter a valid file.NcCs|dk	r||_dS)N)r)rrr	r	r
rMszFileValidator.__init__cCstj�|�st|j��|S)z;
        Validates that the input is a valid file.
        )rr�isfilerr)rrr	r	r
rQs
zFileValidator.__call__)N)rr
rrrrr	r	r	r
rJs
rc@s"eZdZdZddd�Zdd�ZdS)�IntegerValidatorzEnter a valid number.NcCs|dk	r||_dS)N)r)rrr	r	r
r]szIntegerValidator.__init__c	Cs0yt|�Sttfk
r*t|j��YnXdS)z8
        Validates that the input is a integer.
        N)�int�	TypeError�
ValueErrorrr)rrr	r	r
raszIntegerValidator.__call__)N)rr
rrrrr	r	r	r
r Zs
r c@s"eZdZdZddd�Zdd�ZdS)�OptionValidatorz&Select from the list of valid options.NcCs||_|dk	r||_dS)N)�optionsr)rr%rr	r	r
rmszOptionValidator.__init__cCs||jkr|St|j��dS)zB
        Validates that the input is in the options list.
        N)r%rr)rrr	r	r
rrs
zOptionValidator.__call__)N)rr
rrrrr	r	r	r
r$js
r$)r�
__future__rr�sysr�version_info�PY2�PY3�strr�
basestring�	Exceptionr�objectrrrr r$r	r	r	r
�<module>	s