You cannot select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
	
	
		
			141 lines
		
	
	
		
			4.0 KiB
		
	
	
	
		
			Python
		
	
			
		
		
	
	
			141 lines
		
	
	
		
			4.0 KiB
		
	
	
	
		
			Python
		
	
from types import UnionType
 | 
						|
from typing import (
 | 
						|
    Any,
 | 
						|
    AnyStr,
 | 
						|
    Callable,
 | 
						|
    Container,
 | 
						|
    ContextManager,
 | 
						|
    Iterable,
 | 
						|
    Mapping,
 | 
						|
    Match,
 | 
						|
    Pattern,
 | 
						|
    TypeVar,
 | 
						|
    overload,
 | 
						|
)
 | 
						|
 | 
						|
from attrs import _ValidatorType
 | 
						|
from attrs import _ValidatorArgType
 | 
						|
 | 
						|
_T = TypeVar("_T")
 | 
						|
_T1 = TypeVar("_T1")
 | 
						|
_T2 = TypeVar("_T2")
 | 
						|
_T3 = TypeVar("_T3")
 | 
						|
_T4 = TypeVar("_T4")
 | 
						|
_T5 = TypeVar("_T5")
 | 
						|
_T6 = TypeVar("_T6")
 | 
						|
_I = TypeVar("_I", bound=Iterable)
 | 
						|
_K = TypeVar("_K")
 | 
						|
_V = TypeVar("_V")
 | 
						|
_M = TypeVar("_M", bound=Mapping)
 | 
						|
 | 
						|
def set_disabled(run: bool) -> None: ...
 | 
						|
def get_disabled() -> bool: ...
 | 
						|
def disabled() -> ContextManager[None]: ...
 | 
						|
 | 
						|
# To be more precise on instance_of use some overloads.
 | 
						|
# If there are more than 3 items in the tuple then we fall back to Any
 | 
						|
@overload
 | 
						|
def instance_of(type: type[_T]) -> _ValidatorType[_T]: ...
 | 
						|
@overload
 | 
						|
def instance_of(type: tuple[type[_T]]) -> _ValidatorType[_T]: ...
 | 
						|
@overload
 | 
						|
def instance_of(
 | 
						|
    type: tuple[type[_T1], type[_T2]],
 | 
						|
) -> _ValidatorType[_T1 | _T2]: ...
 | 
						|
@overload
 | 
						|
def instance_of(
 | 
						|
    type: tuple[type[_T1], type[_T2], type[_T3]],
 | 
						|
) -> _ValidatorType[_T1 | _T2 | _T3]: ...
 | 
						|
@overload
 | 
						|
def instance_of(type: tuple[type, ...]) -> _ValidatorType[Any]: ...
 | 
						|
@overload
 | 
						|
def instance_of(type: UnionType) -> _ValidatorType[Any]: ...
 | 
						|
def optional(
 | 
						|
    validator: (
 | 
						|
        _ValidatorType[_T]
 | 
						|
        | list[_ValidatorType[_T]]
 | 
						|
        | tuple[_ValidatorType[_T]]
 | 
						|
    ),
 | 
						|
) -> _ValidatorType[_T | None]: ...
 | 
						|
def in_(options: Container[_T]) -> _ValidatorType[_T]: ...
 | 
						|
def and_(*validators: _ValidatorType[_T]) -> _ValidatorType[_T]: ...
 | 
						|
def matches_re(
 | 
						|
    regex: Pattern[AnyStr] | AnyStr,
 | 
						|
    flags: int = ...,
 | 
						|
    func: Callable[[AnyStr, AnyStr, int], Match[AnyStr] | None] | None = ...,
 | 
						|
) -> _ValidatorType[AnyStr]: ...
 | 
						|
def deep_iterable(
 | 
						|
    member_validator: _ValidatorArgType[_T],
 | 
						|
    iterable_validator: _ValidatorArgType[_I] | None = ...,
 | 
						|
) -> _ValidatorType[_I]: ...
 | 
						|
@overload
 | 
						|
def deep_mapping(
 | 
						|
    key_validator: _ValidatorArgType[_K],
 | 
						|
    value_validator: _ValidatorArgType[_V] | None = ...,
 | 
						|
    mapping_validator: _ValidatorArgType[_M] | None = ...,
 | 
						|
) -> _ValidatorType[_M]: ...
 | 
						|
@overload
 | 
						|
def deep_mapping(
 | 
						|
    key_validator: _ValidatorArgType[_K] | None = ...,
 | 
						|
    value_validator: _ValidatorArgType[_V] = ...,
 | 
						|
    mapping_validator: _ValidatorArgType[_M] | None = ...,
 | 
						|
) -> _ValidatorType[_M]: ...
 | 
						|
def is_callable() -> _ValidatorType[_T]: ...
 | 
						|
def lt(val: _T) -> _ValidatorType[_T]: ...
 | 
						|
def le(val: _T) -> _ValidatorType[_T]: ...
 | 
						|
def ge(val: _T) -> _ValidatorType[_T]: ...
 | 
						|
def gt(val: _T) -> _ValidatorType[_T]: ...
 | 
						|
def max_len(length: int) -> _ValidatorType[_T]: ...
 | 
						|
def min_len(length: int) -> _ValidatorType[_T]: ...
 | 
						|
def not_(
 | 
						|
    validator: _ValidatorType[_T],
 | 
						|
    *,
 | 
						|
    msg: str | None = None,
 | 
						|
    exc_types: type[Exception] | Iterable[type[Exception]] = ...,
 | 
						|
) -> _ValidatorType[_T]: ...
 | 
						|
@overload
 | 
						|
def or_(
 | 
						|
    __v1: _ValidatorType[_T1],
 | 
						|
    __v2: _ValidatorType[_T2],
 | 
						|
) -> _ValidatorType[_T1 | _T2]: ...
 | 
						|
@overload
 | 
						|
def or_(
 | 
						|
    __v1: _ValidatorType[_T1],
 | 
						|
    __v2: _ValidatorType[_T2],
 | 
						|
    __v3: _ValidatorType[_T3],
 | 
						|
) -> _ValidatorType[_T1 | _T2 | _T3]: ...
 | 
						|
@overload
 | 
						|
def or_(
 | 
						|
    __v1: _ValidatorType[_T1],
 | 
						|
    __v2: _ValidatorType[_T2],
 | 
						|
    __v3: _ValidatorType[_T3],
 | 
						|
    __v4: _ValidatorType[_T4],
 | 
						|
) -> _ValidatorType[_T1 | _T2 | _T3 | _T4]: ...
 | 
						|
@overload
 | 
						|
def or_(
 | 
						|
    __v1: _ValidatorType[_T1],
 | 
						|
    __v2: _ValidatorType[_T2],
 | 
						|
    __v3: _ValidatorType[_T3],
 | 
						|
    __v4: _ValidatorType[_T4],
 | 
						|
    __v5: _ValidatorType[_T5],
 | 
						|
) -> _ValidatorType[_T1 | _T2 | _T3 | _T4 | _T5]: ...
 | 
						|
@overload
 | 
						|
def or_(
 | 
						|
    __v1: _ValidatorType[_T1],
 | 
						|
    __v2: _ValidatorType[_T2],
 | 
						|
    __v3: _ValidatorType[_T3],
 | 
						|
    __v4: _ValidatorType[_T4],
 | 
						|
    __v5: _ValidatorType[_T5],
 | 
						|
    __v6: _ValidatorType[_T6],
 | 
						|
) -> _ValidatorType[_T1 | _T2 | _T3 | _T4 | _T5 | _T6]: ...
 | 
						|
@overload
 | 
						|
def or_(
 | 
						|
    __v1: _ValidatorType[Any],
 | 
						|
    __v2: _ValidatorType[Any],
 | 
						|
    __v3: _ValidatorType[Any],
 | 
						|
    __v4: _ValidatorType[Any],
 | 
						|
    __v5: _ValidatorType[Any],
 | 
						|
    __v6: _ValidatorType[Any],
 | 
						|
    *validators: _ValidatorType[Any],
 | 
						|
) -> _ValidatorType[Any]: ...
 |