mirror of
https://github.com/davidhalter/typeshed.git
synced 2025-12-08 04:54:47 +08:00
158 lines
5.7 KiB
Python
158 lines
5.7 KiB
Python
import textwrap
|
|
from typing import IO, Any, Callable, Generic, Text, TypeVar, overload
|
|
from typing_extensions import SupportsIndex
|
|
|
|
_TB = TypeVar("_TB", bound=_BaseEntry)
|
|
_TP = TypeVar("_TP", bound=POFile)
|
|
_TM = TypeVar("_TM", bound=MOFile)
|
|
|
|
default_encoding: str
|
|
|
|
# wrapwidth: int
|
|
# encoding: str
|
|
# check_for_duplicates: bool
|
|
@overload
|
|
def pofile(pofile: Text, *, klass: type[_TP], **kwargs: Any) -> _TP: ...
|
|
@overload
|
|
def pofile(pofile: Text, **kwargs: Any) -> POFile: ...
|
|
@overload
|
|
def mofile(mofile: Text, *, klass: type[_TM], **kwargs: Any) -> _TM: ...
|
|
@overload
|
|
def mofile(mofile: Text, **kwargs: Any) -> MOFile: ...
|
|
def detect_encoding(file: bytes | Text, binary_mode: bool = ...) -> str: ...
|
|
def escape(st: Text) -> Text: ...
|
|
def unescape(st: Text) -> Text: ...
|
|
|
|
class _BaseFile(list[_TB]):
|
|
fpath: Text
|
|
wrapwidth: int
|
|
encoding: Text
|
|
check_for_duplicates: bool
|
|
header: Text
|
|
metadata: dict[Text, Text]
|
|
metadata_is_fuzzy: bool
|
|
def __init__(self, *args: Any, **kwargs: Any) -> None: ...
|
|
def __unicode__(self) -> Text: ...
|
|
def __contains__(self, entry: _TB) -> bool: ... # type: ignore # AttributeError otherwise
|
|
def __eq__(self, other: object) -> bool: ...
|
|
def append(self, entry: _TB) -> None: ...
|
|
def insert(self, index: SupportsIndex, entry: _TB) -> None: ...
|
|
def metadata_as_entry(self) -> POEntry: ...
|
|
def save(self, fpath: Text | None = ..., repr_method: str = ...) -> None: ...
|
|
def find(self, st: Text, by: str = ..., include_obsolete_entries: bool = ..., msgctxt: bool = ...) -> _TB | None: ...
|
|
def ordered_metadata(self) -> list[tuple[Text, Text]]: ...
|
|
def to_binary(self) -> bytes: ...
|
|
|
|
class POFile(_BaseFile[POEntry]):
|
|
def __unicode__(self) -> Text: ...
|
|
def save_as_mofile(self, fpath: Text) -> None: ...
|
|
def percent_translated(self) -> int: ...
|
|
def translated_entries(self) -> list[POEntry]: ...
|
|
def untranslated_entries(self) -> list[POEntry]: ...
|
|
def fuzzy_entries(self) -> list[POEntry]: ...
|
|
def obsolete_entries(self) -> list[POEntry]: ...
|
|
def merge(self, refpot: POFile) -> None: ...
|
|
|
|
class MOFile(_BaseFile[MOEntry]):
|
|
MAGIC: int
|
|
MAGIC_SWAPPED: int
|
|
magic_number: int | None
|
|
version: int
|
|
def __init__(self, *args: Any, **kwargs: Any) -> None: ...
|
|
def save_as_pofile(self, fpath: str) -> None: ...
|
|
def save(self, fpath: Text | None = ...) -> None: ... # type: ignore # binary file does not allow argument repr_method
|
|
def percent_translated(self) -> int: ...
|
|
def translated_entries(self) -> list[MOEntry]: ...
|
|
def untranslated_entries(self) -> list[MOEntry]: ...
|
|
def fuzzy_entries(self) -> list[MOEntry]: ...
|
|
def obsolete_entries(self) -> list[MOEntry]: ...
|
|
|
|
class _BaseEntry(object):
|
|
msgid: Text
|
|
msgstr: Text
|
|
msgid_plural: Text
|
|
msgstr_plural: list[Text]
|
|
msgctxt: Text
|
|
obsolete: bool
|
|
encoding: str
|
|
def __init__(self, *args: Any, **kwargs: Any) -> None: ...
|
|
def __unicode__(self, wrapwidth: int = ...) -> Text: ...
|
|
def __eq__(self, other: object) -> bool: ...
|
|
|
|
class POEntry(_BaseEntry):
|
|
comment: Text
|
|
tcomment: Text
|
|
occurrences: list[tuple[str, int]]
|
|
flags: list[Text]
|
|
previous_msgctxt: Text | None
|
|
previous_msgid: Text | None
|
|
previous_msgid_plural: Text | None
|
|
linenum: int | None
|
|
def __init__(self, *args: Any, **kwargs: Any) -> None: ...
|
|
def __unicode__(self, wrapwidth: int = ...) -> Text: ...
|
|
def __cmp__(self, other: POEntry) -> int: ...
|
|
def __gt__(self, other: POEntry) -> bool: ...
|
|
def __lt__(self, other: POEntry) -> bool: ...
|
|
def __ge__(self, other: POEntry) -> bool: ...
|
|
def __le__(self, other: POEntry) -> bool: ...
|
|
def __eq__(self, other: POEntry) -> bool: ... # type: ignore[override]
|
|
def __ne__(self, other: POEntry) -> bool: ... # type: ignore[override]
|
|
def translated(self) -> bool: ...
|
|
def merge(self, other: POEntry) -> None: ...
|
|
@property
|
|
def fuzzy(self) -> bool: ...
|
|
@property
|
|
def msgid_with_context(self) -> Text: ...
|
|
def __hash__(self) -> int: ...
|
|
|
|
class MOEntry(_BaseEntry):
|
|
comment: Text
|
|
tcomment: Text
|
|
occurrences: list[tuple[str, int]]
|
|
flags: list[Text]
|
|
previous_msgctxt: Text | None
|
|
previous_msgid: Text | None
|
|
previous_msgid_plural: Text | None
|
|
def __init__(self, *args: Any, **kwargs: Any) -> None: ...
|
|
def __hash__(self) -> int: ...
|
|
|
|
class _POFileParser(Generic[_TP]):
|
|
fhandle: IO[Text]
|
|
instance: _TP
|
|
transitions: dict[tuple[str, str], tuple[Callable[[], bool], str]]
|
|
current_line: int
|
|
current_entry: POEntry
|
|
current_state: str
|
|
current_token: str | None
|
|
msgstr_index: int
|
|
entry_obsolete: int
|
|
def __init__(self, pofile: Text, *args: Any, **kwargs: Any) -> None: ...
|
|
def parse(self) -> _TP: ...
|
|
def add(self, symbol: str, states: list[str], next_state: str) -> None: ...
|
|
def process(self, symbol: str) -> None: ...
|
|
def handle_he(self) -> bool: ...
|
|
def handle_tc(self) -> bool: ...
|
|
def handle_gc(self) -> bool: ...
|
|
def handle_oc(self) -> bool: ...
|
|
def handle_fl(self) -> bool: ...
|
|
def handle_pp(self) -> bool: ...
|
|
def handle_pm(self) -> bool: ...
|
|
def handle_pc(self) -> bool: ...
|
|
def handle_ct(self) -> bool: ...
|
|
def handle_mi(self) -> bool: ...
|
|
def handle_mp(self) -> bool: ...
|
|
def handle_ms(self) -> bool: ...
|
|
def handle_mx(self) -> bool: ...
|
|
def handle_mc(self) -> bool: ...
|
|
|
|
class _MOFileParser(Generic[_TM]):
|
|
fhandle: IO[bytes]
|
|
instance: _TM
|
|
def __init__(self, mofile: Text, *args: Any, **kwargs: Any) -> None: ...
|
|
def __del__(self) -> None: ...
|
|
def parse(self) -> _TM: ...
|
|
|
|
class TextWrapper(textwrap.TextWrapper):
|
|
drop_whitespace: bool
|
|
def __init__(self, *args: Any, **kwargs: Any) -> None: ...
|