1 # Stubs for urllib.parse
\r
2 from typing import Any, List, Dict, Tuple, AnyStr, Generic, overload, Sequence, Mapping, Union, NamedTuple, Callable
\r
5 _Str = Union[bytes, str]
\r
8 uses_relative = ... # type: List[str]
\r
9 uses_netloc = ... # type: List[str]
\r
10 uses_params = ... # type: List[str]
\r
11 non_hierarchical = ... # type: List[str]
\r
12 uses_query = ... # type: List[str]
\r
13 uses_fragment = ... # type: List[str]
\r
14 scheme_chars = ... # type: str
\r
17 class _ResultMixinBase(Generic[AnyStr]):
\r
18 def geturl(self) -> AnyStr: ...
\r
20 class _ResultMixinStr(_ResultMixinBase[str]):
\r
21 def encode(self, encoding: str = ..., errors: str = ...) -> '_ResultMixinBytes': ...
\r
24 class _ResultMixinBytes(_ResultMixinBase[str]):
\r
25 def decode(self, encoding: str = ..., errors: str = ...) -> '_ResultMixinStr': ...
\r
28 class _NetlocResultMixinBase(Generic[AnyStr]):
\r
29 username = ... # type: AnyStr
\r
30 password = ... # type: AnyStr
\r
31 hostname = ... # type: AnyStr
\r
32 port = ... # type: int
\r
34 class _NetlocResultMixinStr(_NetlocResultMixinBase[str], _ResultMixinStr): ...
\r
37 class _NetlocResultMixinBytes(_NetlocResultMixinBase[str], _ResultMixinBytes): ...
\r
39 class _DefragResultBase(tuple, Generic[AnyStr]):
\r
40 url = ... # type: AnyStr
\r
41 fragment = ... # type: AnyStr
\r
44 _SplitResultBase = NamedTuple(
\r
47 ('scheme', str), ('netloc', str), ('path', str), ('query', str), ('fragment', str)
\r
50 _SplitResultBytesBase = NamedTuple(
\r
51 '_SplitResultBytesBase',
\r
53 ('scheme', bytes), ('netloc', bytes), ('path', bytes), ('query', bytes), ('fragment', bytes)
\r
57 _ParseResultBase = NamedTuple(
\r
60 ('scheme', str), ('netloc', str), ('path', str), ('params', str), ('query', str), ('fragment', str)
\r
63 _ParseResultBytesBase = NamedTuple(
\r
64 '_ParseResultBytesBase',
\r
66 ('scheme', bytes), ('netloc', bytes), ('path', bytes), ('params', bytes), ('query', bytes), ('fragment', bytes)
\r
70 # Structured result objects for string data
\r
71 class DefragResult(_DefragResultBase[str], _ResultMixinStr): ...
\r
73 class SplitResult(_SplitResultBase, _NetlocResultMixinStr): ...
\r
75 class ParseResult(_ParseResultBase, _NetlocResultMixinStr): ...
\r
77 # Structured result objects for bytes data
\r
78 class DefragResultBytes(_DefragResultBase[bytes], _ResultMixinBytes): ...
\r
80 class SplitResultBytes(_SplitResultBytesBase, _NetlocResultMixinBytes): ...
\r
82 class ParseResultBytes(_ParseResultBytesBase, _NetlocResultMixinBytes): ...
\r
85 def parse_qs(qs: AnyStr, keep_blank_values: bool = ..., strict_parsing: bool = ..., encoding: str = ..., errors: str = ...) -> Dict[AnyStr, List[AnyStr]]: ...
\r
87 def parse_qsl(qs: AnyStr, keep_blank_values: bool = ..., strict_parsing: bool = ..., encoding: str = ..., errors: str = ...) -> List[Tuple[AnyStr, AnyStr]]: ...
\r
91 def quote(string: str, safe: _Str = ..., encoding: str = ..., errors: str = ...) -> str: ...
\r
93 def quote(string: bytes, safe: _Str = ...) -> str: ...
\r
95 def quote_from_bytes(bs: bytes, safe: _Str = ...) -> str: ...
\r
98 def quote_plus(string: str, safe: _Str = ..., encoding: str = ..., errors: str = ...) -> str: ...
\r
100 def quote_plus(string: bytes, safe: _Str = ...) -> str: ...
\r
102 def unquote(string: str, encoding: str = ..., errors: str = ...) -> str: ...
\r
104 def unquote_to_bytes(string: _Str) -> bytes: ...
\r
106 def unquote_plus(string: str, encoding: str = ..., errors: str = ...) -> str: ...
\r
109 def urldefrag(url: str) -> DefragResult: ...
\r
111 def urldefrag(url: bytes) -> DefragResultBytes: ...
\r
113 if sys.version_info >= (3, 5):
\r
114 def urlencode(query: Union[Mapping[Any, Any],
\r
115 Mapping[Any, Sequence[Any]],
\r
116 Sequence[Tuple[Any, Any]],
\r
117 Sequence[Tuple[Any, Sequence[Any]]]],
\r
118 doseq: bool = ..., safe: AnyStr = ..., encoding: str = ..., errors: str = ...,
\r
119 quote_via: Callable[[str, AnyStr, str, str], str] = ...) -> str: ...
\r
121 def urlencode(query: Union[Mapping[Any, Any],
\r
122 Mapping[Any, Sequence[Any]],
\r
123 Sequence[Tuple[Any, Any]],
\r
124 Sequence[Tuple[Any, Sequence[Any]]]],
\r
125 doseq: bool = ..., safe: AnyStr = ..., encoding: str = ..., errors: str = ...) -> str: ...
\r
127 def urljoin(base: AnyStr, url: AnyStr, allow_fragments: bool = ...) -> AnyStr: ...
\r
130 def urlparse(url: str, scheme: str = ..., allow_fragments: bool = ...) -> ParseResult: ...
\r
132 def urlparse(url: bytes, scheme: bytes = ..., allow_fragments: bool = ...) -> ParseResultBytes: ...
\r
135 def urlsplit(url: str, scheme: str = ..., allow_fragments: bool = ...) -> SplitResult: ...
\r
137 def urlsplit(url: bytes, scheme: bytes = ..., allow_fragments: bool = ...) -> SplitResultBytes: ...
\r
140 def urlunparse(components: Tuple[AnyStr, AnyStr, AnyStr, AnyStr, AnyStr, AnyStr]) -> AnyStr: ...
\r
142 def urlunparse(components: Sequence[AnyStr]) -> AnyStr: ...
\r
145 def urlunsplit(components: Tuple[AnyStr, AnyStr, AnyStr, AnyStr, AnyStr]) -> AnyStr: ...
\r
147 def urlunsplit(components: Sequence[AnyStr]) -> AnyStr: ...
\r