mirror of
https://github.com/davidhalter/typeshed.git
synced 2026-05-07 05:54:02 +08:00
Add string.templatelib in 3.14 (#14044)
This commit is contained in:
@@ -111,7 +111,6 @@ sre_compile.CH_NEGATE
|
||||
sre_constants.CH_NEGATE
|
||||
sre_parse.CH_NEGATE
|
||||
string.Template.flags
|
||||
string.templatelib
|
||||
sys.is_remote_debug_enabled
|
||||
sys.remote_exec
|
||||
tarfile.TarFile.zstopen
|
||||
|
||||
@@ -283,6 +283,7 @@ ssl: 3.0-
|
||||
stat: 3.0-
|
||||
statistics: 3.4-
|
||||
string: 3.0-
|
||||
string.templatelib: 3.14-
|
||||
stringprep: 3.0-
|
||||
struct: 3.0-
|
||||
subprocess: 3.0-
|
||||
|
||||
@@ -0,0 +1,28 @@
|
||||
from collections.abc import Iterator
|
||||
from typing import Any, Literal, final
|
||||
|
||||
__all__ = ["Interpolation", "Template"]
|
||||
|
||||
@final
|
||||
class Template: # TODO: consider making `Template` generic on `TypeVarTuple`
|
||||
strings: tuple[str, ...]
|
||||
interpolations: tuple[Interpolation, ...]
|
||||
|
||||
def __new__(cls, *args: str | Interpolation) -> Template: ...
|
||||
def __iter__(self) -> Iterator[str | Interpolation]: ...
|
||||
def __add__(self, other: Template | str) -> Template: ...
|
||||
@property
|
||||
def values(self) -> tuple[Any, ...]: ... # Tuple of interpolation values, which can have any type
|
||||
|
||||
@final
|
||||
class Interpolation:
|
||||
value: Any # TODO: consider making `Interpolation` generic in runtime
|
||||
expression: str
|
||||
conversion: Literal["a", "r", "s"] | None
|
||||
format_spec: str
|
||||
|
||||
__match_args__ = ("value", "expression", "conversion", "format_spec")
|
||||
|
||||
def __new__(
|
||||
cls, value: Any, expression: str, conversion: Literal["a", "r", "s"] | None = None, format_spec: str = ""
|
||||
) -> Interpolation: ...
|
||||
Reference in New Issue
Block a user