From a342a49d38f8d725b0e39aca38058557530ffb7f Mon Sep 17 00:00:00 2001 From: Martin Fischer Date: Thu, 24 Feb 2022 11:46:05 +0100 Subject: [PATCH] docutils: Add missing dunders to nodes.Element (#7377) --- stubs/docutils/docutils/nodes.pyi | 23 ++++++++++++++++++++++- 1 file changed, 22 insertions(+), 1 deletion(-) diff --git a/stubs/docutils/docutils/nodes.pyi b/stubs/docutils/docutils/nodes.pyi index c69e9686d..7df55c0bd 100644 --- a/stubs/docutils/docutils/nodes.pyi +++ b/stubs/docutils/docutils/nodes.pyi @@ -1,4 +1,6 @@ -from typing import Any +from _typeshed import Self +from collections.abc import Iterable +from typing import Any, overload from docutils.transforms import Transformer @@ -10,7 +12,26 @@ class Node: def __getattr__(self, __name: str) -> Any: ... # incomplete class Element(Node): + children: list[Node] def __init__(self, rawsource: str = ..., *children: Node, **attributes): ... + def __len__(self) -> int: ... + def __contains__(self, key: str | Node) -> bool: ... + @overload + def __getitem__(self, key: str) -> Any: ... + @overload + def __getitem__(self, key: int) -> Node: ... + @overload + def __getitem__(self, key: slice) -> list[Node]: ... + @overload + def __setitem__(self, key: str, item: Any) -> None: ... + @overload + def __setitem__(self, key: int, item: Node) -> None: ... + @overload + def __setitem__(self, key: slice, item: Iterable[Node]) -> None: ... + def __delitem__(self, key: str | int | slice) -> None: ... + def __add__(self, other: list[Node]) -> list[Node]: ... + def __radd__(self, other: list[Node]) -> list[Node]: ... + def __iadd__(self: Self, other: Node | Iterable[Node]) -> Self: ... def __getattr__(self, __name: str) -> Any: ... # incomplete class Structural: ...