11import sys
2- from typing import IO , Any , Callable , Iterator , Sequence , Text , Type , TypeVar , Union , overload
2+ from typing import IO , Any , Callable , Iterable , Iterator , Pattern , Sequence , Text , Type , TypeVar , Union , overload
33
4+ from yaml .constructor import BaseConstructor
45from yaml .dumper import * # noqa: F403
56from yaml .error import * # noqa: F403
67from yaml .events import * # noqa: F403
78from yaml .loader import * # noqa: F403
89from yaml .nodes import * # noqa: F403
910from yaml .representer import BaseRepresenter
11+ from yaml .resolver import BaseResolver
1012from yaml .tokens import * # noqa: F403
1113
1214from . import resolver as resolver # Help mypy a bit; this is implied by loader and dumper
@@ -23,7 +25,8 @@ __with_libyaml__: Any
2325__version__ : str
2426
2527_T = TypeVar ("_T" )
26- _R = TypeVar ("_R" , bound = BaseRepresenter )
28+ _Constructor = TypeVar ("_Constructor" , bound = BaseConstructor )
29+ _Representer = TypeVar ("_Representer" , bound = BaseRepresenter )
2730
2831def scan (stream , Loader = ...): ...
2932def parse (stream , Loader = ...): ...
@@ -258,12 +261,44 @@ def safe_dump(
258261 tags = ...,
259262 sort_keys : bool = ...,
260263) -> _Yaml : ...
261- def add_implicit_resolver (tag , regexp , first = ..., Loader = ..., Dumper = ...): ...
262- def add_path_resolver (tag , path , kind = ..., Loader = ..., Dumper = ...): ...
263- def add_constructor (tag : _Str , constructor : Callable [[Loader , Node ], Any ], Loader : Loader = ...): ...
264- def add_multi_constructor (tag_prefix , multi_constructor , Loader = ...): ...
265- def add_representer (data_type : Type [_T ], representer : Callable [[_R , _T ], Node ], Dumper : Type [_R ] = ...) -> None : ...
266- def add_multi_representer (data_type : Type [_T ], multi_representer : Callable [[_R , _T ], Node ], Dumper : Type [_R ] = ...) -> None : ...
264+ def add_implicit_resolver (
265+ tag : _Str ,
266+ regexp : Pattern [str ],
267+ first : Iterable [Any ] | None = ...,
268+ Loader : Type [BaseResolver ] | None = ...,
269+ Dumper : Type [BaseResolver ] = ...,
270+ ) -> None : ...
271+ def add_path_resolver (
272+ tag : _Str ,
273+ path : Iterable [Any ],
274+ kind : Type [Any ] | None = ...,
275+ Loader : Type [BaseResolver ] | None = ...,
276+ Dumper : Type [BaseResolver ] = ...,
277+ ) -> None : ...
278+ @overload
279+ def add_constructor (
280+ tag : _Str , constructor : Callable [[Loader | FullLoader | UnsafeLoader , Node ], Any ], Loader : None = ...
281+ ) -> None : ...
282+ @overload
283+ def add_constructor (tag : _Str , constructor : Callable [[_Constructor , Node ], Any ], Loader : Type [_Constructor ]) -> None : ...
284+ @overload
285+ def add_multi_constructor (
286+ tag_prefix : _Str , multi_constructor : Callable [[Loader | FullLoader | UnsafeLoader , _Str , Node ], Any ], Loader : None = ...
287+ ) -> None : ...
288+ @overload
289+ def add_multi_constructor (
290+ tag_prefix : _Str , multi_constructor : Callable [[_Constructor , _Str , Node ], Any ], Loader : Type [_Constructor ]
291+ ) -> None : ...
292+ @overload
293+ def add_representer (data_type : Type [_T ], representer : Callable [[Dumper , _T ], Node ]) -> None : ...
294+ @overload
295+ def add_representer (data_type : Type [_T ], representer : Callable [[_Representer , _T ], Node ], Dumper : Type [_Representer ]) -> None : ...
296+ @overload
297+ def add_multi_representer (data_type : Type [_T ], multi_representer : Callable [[Dumper , _T ], Node ]) -> None : ...
298+ @overload
299+ def add_multi_representer (
300+ data_type : Type [_T ], multi_representer : Callable [[_Representer , _T ], Node ], Dumper : Type [_Representer ]
301+ ) -> None : ...
267302
268303class YAMLObjectMetaclass (type ):
269304 def __init__ (self , name , bases , kwds ) -> None : ...
0 commit comments