|
1 |
| -from typing import IO, Any |
| 1 | +from typing import IO, Any, Sequence, Tuple, Union |
| 2 | +from typing_extensions import Literal |
| 3 | +from xml.dom.minidom import Document, DOMImplementation, Element, Text |
2 | 4 | from xml.sax.handler import ContentHandler
|
3 | 5 | from xml.sax.xmlreader import XMLReader
|
4 | 6 |
|
5 |
| -START_ELEMENT: str |
6 |
| -END_ELEMENT: str |
7 |
| -COMMENT: str |
8 |
| -START_DOCUMENT: str |
9 |
| -END_DOCUMENT: str |
10 |
| -PROCESSING_INSTRUCTION: str |
11 |
| -IGNORABLE_WHITESPACE: str |
12 |
| -CHARACTERS: str |
| 7 | +START_ELEMENT: Literal["START_ELEMENT"] |
| 8 | +END_ELEMENT: Literal["END_ELEMENT"] |
| 9 | +COMMENT: Literal["COMMENT"] |
| 10 | +START_DOCUMENT: Literal["START_DOCUMENT"] |
| 11 | +END_DOCUMENT: Literal["END_DOCUMENT"] |
| 12 | +PROCESSING_INSTRUCTION: Literal["PROCESSING_INSTRUCTION"] |
| 13 | +IGNORABLE_WHITESPACE: Literal["IGNORABLE_WHITESPACE"] |
| 14 | +CHARACTERS: Literal["CHARACTERS"] |
| 15 | + |
| 16 | +_DocumentFactory = Union[DOMImplementation, None] |
| 17 | +_Node = Union[Document, Element, Text] |
| 18 | + |
| 19 | +_Event = Tuple[ |
| 20 | + Literal[ |
| 21 | + Literal["START_ELEMENT"], |
| 22 | + Literal["END_ELEMENT"], |
| 23 | + Literal["COMMENT"], |
| 24 | + Literal["START_DOCUMENT"], |
| 25 | + Literal["END_DOCUMENT"], |
| 26 | + Literal["PROCESSING_INSTRUCTION"], |
| 27 | + Literal["IGNORABLE_WHITESPACE"], |
| 28 | + Literal["CHARACTERS"], |
| 29 | + ], |
| 30 | + _Node, |
| 31 | +] |
13 | 32 |
|
14 | 33 | class PullDOM(ContentHandler):
|
15 |
| - document: Any | None |
16 |
| - documentFactory: Any |
| 34 | + document: Document | None |
| 35 | + documentFactory: _DocumentFactory |
17 | 36 | firstEvent: Any
|
18 | 37 | lastEvent: Any
|
19 |
| - elementStack: Any |
20 |
| - push: Any |
21 |
| - pending_events: Any |
22 |
| - def __init__(self, documentFactory: Any | None = ...) -> None: ... |
23 |
| - def pop(self): ... |
| 38 | + elementStack: Sequence[Any] |
| 39 | + pending_events: Sequence[Any] |
| 40 | + def __init__(self, documentFactory: _DocumentFactory = ...) -> None: ... |
| 41 | + def pop(self) -> Element: ... |
24 | 42 | def setDocumentLocator(self, locator) -> None: ...
|
25 | 43 | def startPrefixMapping(self, prefix, uri) -> None: ...
|
26 | 44 | def endPrefixMapping(self, prefix) -> None: ...
|
@@ -48,12 +66,12 @@ class DOMEventStream:
|
48 | 66 | bufsize: int
|
49 | 67 | def __init__(self, stream: IO[bytes], parser: XMLReader, bufsize: int) -> None: ...
|
50 | 68 | pulldom: Any
|
51 |
| - def reset(self) -> None: ... |
52 | 69 | def __getitem__(self, pos): ...
|
53 | 70 | def __next__(self): ...
|
54 | 71 | def __iter__(self): ...
|
55 |
| - def expandNode(self, node) -> None: ... |
56 |
| - def getEvent(self): ... |
| 72 | + def getEvent(self) -> _Event: ... |
| 73 | + def expandNode(self, node: _Node) -> None: ... |
| 74 | + def reset(self) -> None: ... |
57 | 75 | def clear(self) -> None: ...
|
58 | 76 |
|
59 | 77 | class SAX2DOM(PullDOM):
|
|
0 commit comments