basedpyright 1.13.2 → 1.13.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/pyright-langserver.js +1 -1
- package/dist/pyright-langserver.js.map +1 -1
- package/dist/pyright.js +1 -1
- package/dist/pyright.js.map +1 -1
- package/dist/typeshed-fallback/commit.txt +1 -1
- package/dist/typeshed-fallback/stdlib/VERSIONS +2 -0
- package/dist/typeshed-fallback/stdlib/_ast.pyi +42 -279
- package/dist/typeshed-fallback/stdlib/_bisect.pyi +221 -221
- package/dist/typeshed-fallback/stdlib/_bootlocale.pyi +1 -1
- package/dist/typeshed-fallback/stdlib/_collections_abc.pyi +15 -5
- package/dist/typeshed-fallback/stdlib/_csv.pyi +213 -213
- package/dist/typeshed-fallback/stdlib/_decimal.pyi +0 -18
- package/dist/typeshed-fallback/stdlib/_dummy_thread.pyi +33 -33
- package/dist/typeshed-fallback/stdlib/_dummy_threading.pyi +180 -164
- package/dist/typeshed-fallback/stdlib/_heapq.pyi +67 -67
- package/dist/typeshed-fallback/stdlib/_interpqueues.pyi +16 -0
- package/dist/typeshed-fallback/stdlib/_interpreters.pyi +50 -0
- package/dist/typeshed-fallback/stdlib/_json.pyi +92 -92
- package/dist/typeshed-fallback/stdlib/_lsprof.pyi +92 -92
- package/dist/typeshed-fallback/stdlib/_msi.pyi +94 -92
- package/dist/typeshed-fallback/stdlib/_operator.pyi +0 -24
- package/dist/typeshed-fallback/stdlib/_random.pyi +30 -30
- package/dist/typeshed-fallback/stdlib/_tkinter.pyi +6 -2
- package/dist/typeshed-fallback/stdlib/_weakrefset.pyi +7 -1
- package/dist/typeshed-fallback/stdlib/abc.pyi +12 -4
- package/dist/typeshed-fallback/stdlib/argparse.pyi +3 -1
- package/dist/typeshed-fallback/stdlib/array.pyi +281 -281
- package/dist/typeshed-fallback/stdlib/asynchat.pyi +21 -21
- package/dist/typeshed-fallback/stdlib/asyncio/events.pyi +35 -4
- package/dist/typeshed-fallback/stdlib/asyncio/futures.pyi +107 -15
- package/dist/typeshed-fallback/stdlib/asyncio/locks.pyi +9 -3
- package/dist/typeshed-fallback/stdlib/asyncio/queues.pyi +10 -2
- package/dist/typeshed-fallback/stdlib/asyncio/sslproto.pyi +23 -4
- package/dist/typeshed-fallback/stdlib/asyncio/tasks.pyi +107 -12
- package/dist/typeshed-fallback/stdlib/asyncio/windows_events.pyi +86 -86
- package/dist/typeshed-fallback/stdlib/asyncio/windows_utils.pyi +49 -49
- package/dist/typeshed-fallback/stdlib/asyncore.pyi +90 -90
- package/dist/typeshed-fallback/stdlib/audioop.pyi +95 -95
- package/dist/typeshed-fallback/stdlib/binascii.pyi +123 -123
- package/dist/typeshed-fallback/stdlib/binhex.pyi +45 -45
- package/dist/typeshed-fallback/stdlib/builtins.pyi +0 -1
- package/dist/typeshed-fallback/stdlib/bz2.pyi +59 -6
- package/dist/typeshed-fallback/stdlib/cmath.pyi +112 -112
- package/dist/typeshed-fallback/stdlib/codecs.pyi +18 -6
- package/dist/typeshed-fallback/stdlib/collections/__init__.pyi +200 -56
- package/dist/typeshed-fallback/stdlib/concurrent/futures/__init__.pyi +33 -14
- package/dist/typeshed-fallback/stdlib/concurrent/futures/_base.pyi +7 -1
- package/dist/typeshed-fallback/stdlib/concurrent/futures/thread.pyi +7 -1
- package/dist/typeshed-fallback/stdlib/contextvars.pyi +99 -16
- package/dist/typeshed-fallback/stdlib/csv.pyi +14 -2
- package/dist/typeshed-fallback/stdlib/ctypes/__init__.pyi +7 -1
- package/dist/typeshed-fallback/stdlib/ctypes/_endian.pyi +6 -2
- package/dist/typeshed-fallback/stdlib/curses/panel.pyi +16 -4
- package/dist/typeshed-fallback/stdlib/dataclasses.pyi +7 -1
- package/dist/typeshed-fallback/stdlib/datetime.pyi +346 -104
- package/dist/typeshed-fallback/stdlib/dbm/gnu.pyi +52 -2
- package/dist/typeshed-fallback/stdlib/dbm/ndbm.pyi +26 -2
- package/dist/typeshed-fallback/stdlib/difflib.pyi +7 -1
- package/dist/typeshed-fallback/stdlib/distutils/__init__.pyi +5 -5
- package/dist/typeshed-fallback/stdlib/distutils/archive_util.pyi +35 -35
- package/dist/typeshed-fallback/stdlib/distutils/bcppcompiler.pyi +3 -3
- package/dist/typeshed-fallback/stdlib/distutils/ccompiler.pyi +173 -173
- package/dist/typeshed-fallback/stdlib/distutils/cmd.pyi +99 -99
- package/dist/typeshed-fallback/stdlib/distutils/command/bdist.pyi +25 -25
- package/dist/typeshed-fallback/stdlib/distutils/command/bdist_dumb.pyi +21 -21
- package/dist/typeshed-fallback/stdlib/distutils/command/bdist_msi.pyi +45 -45
- package/dist/typeshed-fallback/stdlib/distutils/command/bdist_rpm.pyi +52 -52
- package/dist/typeshed-fallback/stdlib/distutils/command/bdist_wininst.pyi +16 -16
- package/dist/typeshed-fallback/stdlib/distutils/command/build.pyi +33 -33
- package/dist/typeshed-fallback/stdlib/distutils/command/build_clib.pyi +27 -27
- package/dist/typeshed-fallback/stdlib/distutils/command/build_ext.pyi +50 -50
- package/dist/typeshed-fallback/stdlib/distutils/command/build_py.pyi +44 -44
- package/dist/typeshed-fallback/stdlib/distutils/command/build_scripts.pyi +24 -24
- package/dist/typeshed-fallback/stdlib/distutils/command/check.pyi +39 -39
- package/dist/typeshed-fallback/stdlib/distutils/command/clean.pyi +17 -17
- package/dist/typeshed-fallback/stdlib/distutils/command/config.pyi +84 -84
- package/dist/typeshed-fallback/stdlib/distutils/command/install.pyi +65 -65
- package/dist/typeshed-fallback/stdlib/distutils/command/install_data.pyi +19 -19
- package/dist/typeshed-fallback/stdlib/distutils/command/install_egg_info.pyi +18 -18
- package/dist/typeshed-fallback/stdlib/distutils/command/install_headers.pyi +16 -16
- package/dist/typeshed-fallback/stdlib/distutils/command/install_lib.pyi +25 -25
- package/dist/typeshed-fallback/stdlib/distutils/command/install_scripts.pyi +18 -18
- package/dist/typeshed-fallback/stdlib/distutils/command/register.pyi +20 -20
- package/dist/typeshed-fallback/stdlib/distutils/command/sdist.pyi +44 -44
- package/dist/typeshed-fallback/stdlib/distutils/command/upload.pyi +17 -17
- package/dist/typeshed-fallback/stdlib/distutils/config.pyi +17 -17
- package/dist/typeshed-fallback/stdlib/distutils/core.pyi +57 -57
- package/dist/typeshed-fallback/stdlib/distutils/cygwinccompiler.pyi +20 -20
- package/dist/typeshed-fallback/stdlib/distutils/debug.pyi +1 -1
- package/dist/typeshed-fallback/stdlib/distutils/dep_util.pyi +14 -14
- package/dist/typeshed-fallback/stdlib/distutils/dir_util.pyi +23 -23
- package/dist/typeshed-fallback/stdlib/distutils/dist.pyi +149 -149
- package/dist/typeshed-fallback/stdlib/distutils/errors.pyi +19 -19
- package/dist/typeshed-fallback/stdlib/distutils/extension.pyi +36 -36
- package/dist/typeshed-fallback/stdlib/distutils/fancy_getopt.pyi +34 -34
- package/dist/typeshed-fallback/stdlib/distutils/file_util.pyi +38 -38
- package/dist/typeshed-fallback/stdlib/distutils/filelist.pyi +58 -58
- package/dist/typeshed-fallback/stdlib/distutils/log.pyi +25 -25
- package/dist/typeshed-fallback/stdlib/distutils/msvccompiler.pyi +3 -3
- package/dist/typeshed-fallback/stdlib/distutils/spawn.pyi +6 -6
- package/dist/typeshed-fallback/stdlib/distutils/sysconfig.pyi +33 -33
- package/dist/typeshed-fallback/stdlib/distutils/text_file.pyi +21 -21
- package/dist/typeshed-fallback/stdlib/distutils/unixccompiler.pyi +3 -3
- package/dist/typeshed-fallback/stdlib/distutils/util.pyi +50 -50
- package/dist/typeshed-fallback/stdlib/distutils/version.pyi +38 -36
- package/dist/typeshed-fallback/stdlib/dummy_threading.pyi +2 -2
- package/dist/typeshed-fallback/stdlib/email/_header_value_parser.pyi +3 -1
- package/dist/typeshed-fallback/stdlib/email/charset.pyi +3 -1
- package/dist/typeshed-fallback/stdlib/email/header.pyi +3 -1
- package/dist/typeshed-fallback/stdlib/email/headerregistry.pyi +6 -1
- package/dist/typeshed-fallback/stdlib/enum.pyi +8 -1
- package/dist/typeshed-fallback/stdlib/filecmp.pyi +7 -1
- package/dist/typeshed-fallback/stdlib/fileinput.pyi +7 -1
- package/dist/typeshed-fallback/stdlib/formatter.pyi +88 -88
- package/dist/typeshed-fallback/stdlib/fractions.pyi +6 -2
- package/dist/typeshed-fallback/stdlib/functools.pyi +65 -13
- package/dist/typeshed-fallback/stdlib/graphlib.pyi +7 -1
- package/dist/typeshed-fallback/stdlib/gzip.pyi +3 -1
- package/dist/typeshed-fallback/stdlib/hashlib.pyi +42 -14
- package/dist/typeshed-fallback/stdlib/heapq.pyi +3 -1
- package/dist/typeshed-fallback/stdlib/hmac.pyi +30 -2
- package/dist/typeshed-fallback/stdlib/http/cookies.pyi +7 -1
- package/dist/typeshed-fallback/stdlib/imp.pyi +62 -62
- package/dist/typeshed-fallback/stdlib/importlib/abc.pyi +3 -1
- package/dist/typeshed-fallback/stdlib/importlib/machinery.pyi +3 -1
- package/dist/typeshed-fallback/stdlib/importlib/metadata/__init__.pyi +79 -15
- package/dist/typeshed-fallback/stdlib/importlib/metadata/_meta.pyi +3 -1
- package/dist/typeshed-fallback/stdlib/importlib/resources/simple.pyi +3 -1
- package/dist/typeshed-fallback/stdlib/io.pyi +428 -44
- package/dist/typeshed-fallback/stdlib/ipaddress.pyi +153 -28
- package/dist/typeshed-fallback/stdlib/itertools.pyi +5 -1
- package/dist/typeshed-fallback/stdlib/json/encoder.pyi +14 -2
- package/dist/typeshed-fallback/stdlib/keyword.pyi +6 -2
- package/dist/typeshed-fallback/stdlib/lib2to3/pytree.pyi +12 -2
- package/dist/typeshed-fallback/stdlib/logging/__init__.pyi +17 -3
- package/dist/typeshed-fallback/stdlib/lzma.pyi +107 -9
- package/dist/typeshed-fallback/stdlib/mailbox.pyi +14 -2
- package/dist/typeshed-fallback/stdlib/math.pyi +424 -424
- package/dist/typeshed-fallback/stdlib/mmap.pyi +160 -160
- package/dist/typeshed-fallback/stdlib/msilib/__init__.pyi +177 -177
- package/dist/typeshed-fallback/stdlib/msilib/schema.pyi +94 -94
- package/dist/typeshed-fallback/stdlib/msilib/sequence.pyi +13 -13
- package/dist/typeshed-fallback/stdlib/msilib/text.pyi +7 -7
- package/dist/typeshed-fallback/stdlib/multiprocessing/connection.pyi +9 -3
- package/dist/typeshed-fallback/stdlib/multiprocessing/context.pyi +12 -2
- package/dist/typeshed-fallback/stdlib/multiprocessing/dummy/__init__.pyi +3 -1
- package/dist/typeshed-fallback/stdlib/multiprocessing/managers.pyi +10 -2
- package/dist/typeshed-fallback/stdlib/multiprocessing/pool.pyi +7 -1
- package/dist/typeshed-fallback/stdlib/multiprocessing/popen_spawn_win32.pyi +30 -30
- package/dist/typeshed-fallback/stdlib/multiprocessing/process.pyi +15 -4
- package/dist/typeshed-fallback/stdlib/multiprocessing/queues.pyi +14 -2
- package/dist/typeshed-fallback/stdlib/multiprocessing/shared_memory.pyi +19 -5
- package/dist/typeshed-fallback/stdlib/nis.pyi +31 -4
- package/dist/typeshed-fallback/stdlib/numbers.pyi +26 -6
- package/dist/typeshed-fallback/stdlib/opcode.pyi +3 -1
- package/dist/typeshed-fallback/stdlib/optparse.pyi +3 -1
- package/dist/typeshed-fallback/stdlib/os/__init__.pyi +1447 -217
- package/dist/typeshed-fallback/stdlib/pathlib.pyi +42 -11
- package/dist/typeshed-fallback/stdlib/pickle.pyi +200 -12
- package/dist/typeshed-fallback/stdlib/posixpath.pyi +6 -2
- package/dist/typeshed-fallback/stdlib/pyexpat/errors.pyi +2 -0
- package/dist/typeshed-fallback/stdlib/pyexpat/model.pyi +2 -0
- package/dist/typeshed-fallback/stdlib/queue.pyi +57 -9
- package/dist/typeshed-fallback/stdlib/re.pyi +219 -57
- package/dist/typeshed-fallback/stdlib/sched.pyi +8 -1
- package/dist/typeshed-fallback/stdlib/signal.pyi +95 -19
- package/dist/typeshed-fallback/stdlib/smtpd.pyi +91 -91
- package/dist/typeshed-fallback/stdlib/socket.pyi +12 -2
- package/dist/typeshed-fallback/stdlib/sqlite3/dbapi2.pyi +417 -83
- package/dist/typeshed-fallback/stdlib/ssl.pyi +133 -22
- package/dist/typeshed-fallback/stdlib/statistics.pyi +20 -5
- package/dist/typeshed-fallback/stdlib/struct.pyi +114 -13
- package/dist/typeshed-fallback/stdlib/subprocess.pyi +14 -2
- package/dist/typeshed-fallback/stdlib/symbol.pyi +93 -93
- package/dist/typeshed-fallback/stdlib/symtable.pyi +30 -1
- package/dist/typeshed-fallback/stdlib/sys/__init__.pyi +7 -3
- package/dist/typeshed-fallback/stdlib/tarfile.pyi +6 -2
- package/dist/typeshed-fallback/stdlib/tempfile.pyi +17 -3
- package/dist/typeshed-fallback/stdlib/threading.pyi +68 -7
- package/dist/typeshed-fallback/stdlib/tkinter/__init__.pyi +3 -1
- package/dist/typeshed-fallback/stdlib/turtle.pyi +11 -3
- package/dist/typeshed-fallback/stdlib/types.pyi +306 -79
- package/dist/typeshed-fallback/stdlib/typing.pyi +310 -31
- package/dist/typeshed-fallback/stdlib/typing_extensions.pyi +42 -11
- package/dist/typeshed-fallback/stdlib/unittest/__init__.pyi +6 -1
- package/dist/typeshed-fallback/stdlib/unittest/case.pyi +7 -1
- package/dist/typeshed-fallback/stdlib/unittest/mock.pyi +3 -1
- package/dist/typeshed-fallback/stdlib/urllib/parse.pyi +51 -3
- package/dist/typeshed-fallback/stdlib/weakref.pyi +6 -2
- package/dist/typeshed-fallback/stdlib/winsound.pyi +44 -28
- package/dist/typeshed-fallback/stdlib/xml/dom/minicompat.pyi +6 -2
- package/dist/typeshed-fallback/stdlib/xml/dom/minidom.pyi +33 -11
- package/dist/typeshed-fallback/stdlib/xml/etree/ElementTree.pyi +30 -10
- package/dist/typeshed-fallback/stdlib/xml/parsers/expat/errors.pyi +2 -0
- package/dist/typeshed-fallback/stdlib/xml/parsers/expat/model.pyi +2 -0
- package/dist/typeshed-fallback/stdlib/xxlimited.pyi +19 -4
- package/dist/typeshed-fallback/stdlib/zipimport.pyi +31 -0
- package/dist/typeshed-fallback/stdlib/zlib.pyi +157 -157
- package/dist/typeshed-fallback/stdlib/zoneinfo/__init__.pyi +18 -6
- package/dist/typeshed-fallback/stubs/assertpy/assertpy/extracting.pyi +2 -2
- package/dist/typeshed-fallback/stubs/docker/docker/_types.pyi +18 -1
- package/dist/typeshed-fallback/stubs/docker/docker/api/container.pyi +5 -19
- package/dist/typeshed-fallback/stubs/docker/docker/api/daemon.pyi +2 -1
- package/dist/typeshed-fallback/stubs/docker/docker/models/containers.pyi +268 -6
- package/dist/typeshed-fallback/stubs/docker/docker/types/containers.pyi +3 -7
- package/dist/typeshed-fallback/stubs/docker/docker/types/daemon.pyi +10 -4
- package/dist/typeshed-fallback/stubs/docutils/docutils/parsers/rst/states.pyi +47 -0
- package/dist/typeshed-fallback/stubs/gdb/gdb/__init__.pyi +1 -1
- package/dist/typeshed-fallback/stubs/networkx/networkx/algorithms/shortest_paths/generic.pyi +1 -1
- package/dist/typeshed-fallback/stubs/openpyxl/METADATA.toml +1 -1
- package/dist/typeshed-fallback/stubs/openpyxl/openpyxl/packaging/extended.pyi +0 -2
- package/dist/typeshed-fallback/stubs/openpyxl/openpyxl/styles/named_styles.pyi +2 -1
- package/dist/typeshed-fallback/stubs/pygit2/METADATA.toml +1 -1
- package/dist/typeshed-fallback/stubs/pytest-lazy-fixture/pytest_lazyfixture.pyi +2 -2
- package/dist/typeshed-fallback/stubs/python-crontab/METADATA.toml +1 -1
- package/dist/typeshed-fallback/stubs/reportlab/METADATA.toml +1 -1
- package/dist/typeshed-fallback/stubs/reportlab/reportlab/lib/rl_safe_eval.pyi +23 -11
- package/dist/typeshed-fallback/stubs/reportlab/reportlab/pdfbase/pdfdoc.pyi +6 -0
- package/dist/typeshed-fallback/stubs/setuptools/METADATA.toml +1 -1
- package/dist/typeshed-fallback/stubs/setuptools/setuptools/_distutils/archive_util.pyi +8 -8
- package/dist/typeshed-fallback/stubs/setuptools/setuptools/_distutils/ccompiler.pyi +11 -17
- package/dist/typeshed-fallback/stubs/setuptools/setuptools/_distutils/cmd.pyi +11 -11
- package/dist/typeshed-fallback/stubs/setuptools/setuptools/_distutils/command/build_py.pyi +1 -2
- package/dist/typeshed-fallback/stubs/setuptools/setuptools/_distutils/filelist.pyi +4 -12
- package/dist/typeshed-fallback/stubs/setuptools/setuptools/_distutils/sysconfig.pyi +2 -4
- package/dist/typeshed-fallback/stubs/setuptools/setuptools/_distutils/util.pyi +5 -8
- package/dist/typeshed-fallback/stubs/str2bool/METADATA.toml +2 -0
- package/dist/typeshed-fallback/stubs/str2bool/str2bool/__init__.pyi +7 -0
- package/package.json +1 -1
|
@@ -1,221 +1,221 @@
|
|
|
1
|
-
"""
|
|
2
|
-
Bisection algorithms.
|
|
3
|
-
|
|
4
|
-
This module provides support for maintaining a list in sorted order without
|
|
5
|
-
having to sort the list after each insertion. For long lists of items with
|
|
6
|
-
expensive comparison operations, this can be an improvement over the more
|
|
7
|
-
common approach.
|
|
8
|
-
"""
|
|
9
|
-
|
|
10
|
-
import sys
|
|
11
|
-
from _typeshed import SupportsLenAndGetItem, SupportsRichComparisonT
|
|
12
|
-
from collections.abc import Callable, MutableSequence
|
|
13
|
-
from typing import TypeVar, overload
|
|
14
|
-
|
|
15
|
-
_T = TypeVar("_T")
|
|
16
|
-
|
|
17
|
-
if sys.version_info >= (3, 10):
|
|
18
|
-
@overload
|
|
19
|
-
def bisect_left(
|
|
20
|
-
a: SupportsLenAndGetItem[SupportsRichComparisonT],
|
|
21
|
-
x: SupportsRichComparisonT,
|
|
22
|
-
lo: int = 0,
|
|
23
|
-
hi: int | None = None,
|
|
24
|
-
*,
|
|
25
|
-
key: None = None,
|
|
26
|
-
) -> int:
|
|
27
|
-
"""
|
|
28
|
-
Return the index where to insert item x in list a, assuming a is sorted.
|
|
29
|
-
|
|
30
|
-
The return value i is such that all e in a[:i] have e < x, and all e in
|
|
31
|
-
a[i:] have e >= x. So if x already appears in the list, a.insert(i, x) will
|
|
32
|
-
insert just before the leftmost x already there.
|
|
33
|
-
|
|
34
|
-
Optional args lo (default 0) and hi (default len(a)) bound the
|
|
35
|
-
slice of a to be searched.
|
|
36
|
-
"""
|
|
37
|
-
...
|
|
38
|
-
@overload
|
|
39
|
-
def bisect_left(
|
|
40
|
-
a: SupportsLenAndGetItem[_T],
|
|
41
|
-
x: SupportsRichComparisonT,
|
|
42
|
-
lo: int = 0,
|
|
43
|
-
hi: int | None = None,
|
|
44
|
-
*,
|
|
45
|
-
key: Callable[[_T], SupportsRichComparisonT],
|
|
46
|
-
) -> int:
|
|
47
|
-
"""
|
|
48
|
-
Return the index where to insert item x in list a, assuming a is sorted.
|
|
49
|
-
|
|
50
|
-
The return value i is such that all e in a[:i] have e < x, and all e in
|
|
51
|
-
a[i:] have e >= x. So if x already appears in the list, a.insert(i, x) will
|
|
52
|
-
insert just before the leftmost x already there.
|
|
53
|
-
|
|
54
|
-
Optional args lo (default 0) and hi (default len(a)) bound the
|
|
55
|
-
slice of a to be searched.
|
|
56
|
-
"""
|
|
57
|
-
...
|
|
58
|
-
@overload
|
|
59
|
-
def bisect_right(
|
|
60
|
-
a: SupportsLenAndGetItem[SupportsRichComparisonT],
|
|
61
|
-
x: SupportsRichComparisonT,
|
|
62
|
-
lo: int = 0,
|
|
63
|
-
hi: int | None = None,
|
|
64
|
-
*,
|
|
65
|
-
key: None = None,
|
|
66
|
-
) -> int:
|
|
67
|
-
"""
|
|
68
|
-
Return the index where to insert item x in list a, assuming a is sorted.
|
|
69
|
-
|
|
70
|
-
The return value i is such that all e in a[:i] have e <= x, and all e in
|
|
71
|
-
a[i:] have e > x. So if x already appears in the list, a.insert(i, x) will
|
|
72
|
-
insert just after the rightmost x already there.
|
|
73
|
-
|
|
74
|
-
Optional args lo (default 0) and hi (default len(a)) bound the
|
|
75
|
-
slice of a to be searched.
|
|
76
|
-
"""
|
|
77
|
-
...
|
|
78
|
-
@overload
|
|
79
|
-
def bisect_right(
|
|
80
|
-
a: SupportsLenAndGetItem[_T],
|
|
81
|
-
x: SupportsRichComparisonT,
|
|
82
|
-
lo: int = 0,
|
|
83
|
-
hi: int | None = None,
|
|
84
|
-
*,
|
|
85
|
-
key: Callable[[_T], SupportsRichComparisonT],
|
|
86
|
-
) -> int:
|
|
87
|
-
"""
|
|
88
|
-
Return the index where to insert item x in list a, assuming a is sorted.
|
|
89
|
-
|
|
90
|
-
The return value i is such that all e in a[:i] have e <= x, and all e in
|
|
91
|
-
a[i:] have e > x. So if x already appears in the list, a.insert(i, x) will
|
|
92
|
-
insert just after the rightmost x already there.
|
|
93
|
-
|
|
94
|
-
Optional args lo (default 0) and hi (default len(a)) bound the
|
|
95
|
-
slice of a to be searched.
|
|
96
|
-
"""
|
|
97
|
-
...
|
|
98
|
-
@overload
|
|
99
|
-
def insort_left(
|
|
100
|
-
a: MutableSequence[SupportsRichComparisonT],
|
|
101
|
-
x: SupportsRichComparisonT,
|
|
102
|
-
lo: int = 0,
|
|
103
|
-
hi: int | None = None,
|
|
104
|
-
*,
|
|
105
|
-
key: None = None,
|
|
106
|
-
) -> None:
|
|
107
|
-
"""
|
|
108
|
-
Insert item x in list a, and keep it sorted assuming a is sorted.
|
|
109
|
-
|
|
110
|
-
If x is already in a, insert it to the left of the leftmost x.
|
|
111
|
-
|
|
112
|
-
Optional args lo (default 0) and hi (default len(a)) bound the
|
|
113
|
-
slice of a to be searched.
|
|
114
|
-
"""
|
|
115
|
-
...
|
|
116
|
-
@overload
|
|
117
|
-
def insort_left(
|
|
118
|
-
a: MutableSequence[_T], x: _T, lo: int = 0, hi: int | None = None, *, key: Callable[[_T], SupportsRichComparisonT]
|
|
119
|
-
) -> None:
|
|
120
|
-
"""
|
|
121
|
-
Insert item x in list a, and keep it sorted assuming a is sorted.
|
|
122
|
-
|
|
123
|
-
If x is already in a, insert it to the left of the leftmost x.
|
|
124
|
-
|
|
125
|
-
Optional args lo (default 0) and hi (default len(a)) bound the
|
|
126
|
-
slice of a to be searched.
|
|
127
|
-
"""
|
|
128
|
-
...
|
|
129
|
-
@overload
|
|
130
|
-
def insort_right(
|
|
131
|
-
a: MutableSequence[SupportsRichComparisonT],
|
|
132
|
-
x: SupportsRichComparisonT,
|
|
133
|
-
lo: int = 0,
|
|
134
|
-
hi: int | None = None,
|
|
135
|
-
*,
|
|
136
|
-
key: None = None,
|
|
137
|
-
) -> None:
|
|
138
|
-
"""
|
|
139
|
-
Insert item x in list a, and keep it sorted assuming a is sorted.
|
|
140
|
-
|
|
141
|
-
If x is already in a, insert it to the right of the rightmost x.
|
|
142
|
-
|
|
143
|
-
Optional args lo (default 0) and hi (default len(a)) bound the
|
|
144
|
-
slice of a to be searched.
|
|
145
|
-
"""
|
|
146
|
-
...
|
|
147
|
-
@overload
|
|
148
|
-
def insort_right(
|
|
149
|
-
a: MutableSequence[_T], x: _T, lo: int = 0, hi: int | None = None, *, key: Callable[[_T], SupportsRichComparisonT]
|
|
150
|
-
) -> None:
|
|
151
|
-
"""
|
|
152
|
-
Insert item x in list a, and keep it sorted assuming a is sorted.
|
|
153
|
-
|
|
154
|
-
If x is already in a, insert it to the right of the rightmost x.
|
|
155
|
-
|
|
156
|
-
Optional args lo (default 0) and hi (default len(a)) bound the
|
|
157
|
-
slice of a to be searched.
|
|
158
|
-
"""
|
|
159
|
-
...
|
|
160
|
-
|
|
161
|
-
else:
|
|
162
|
-
def bisect_left(
|
|
163
|
-
a: SupportsLenAndGetItem[SupportsRichComparisonT], x: SupportsRichComparisonT, lo: int = 0, hi: int | None = None
|
|
164
|
-
) -> int:
|
|
165
|
-
"""
|
|
166
|
-
bisect_left(a, x[, lo[, hi]]) -> index
|
|
167
|
-
|
|
168
|
-
Return the index where to insert item x in list a, assuming a is sorted.
|
|
169
|
-
|
|
170
|
-
The return value i is such that all e in a[:i] have e < x, and all e in
|
|
171
|
-
a[i:] have e >= x. So if x already appears in the list, i points just
|
|
172
|
-
before the leftmost x already there.
|
|
173
|
-
|
|
174
|
-
Optional args lo (default 0) and hi (default len(a)) bound the
|
|
175
|
-
slice of a to be searched.
|
|
176
|
-
"""
|
|
177
|
-
...
|
|
178
|
-
def bisect_right(
|
|
179
|
-
a: SupportsLenAndGetItem[SupportsRichComparisonT], x: SupportsRichComparisonT, lo: int = 0, hi: int | None = None
|
|
180
|
-
) -> int:
|
|
181
|
-
"""
|
|
182
|
-
bisect_right(a, x[, lo[, hi]]) -> index
|
|
183
|
-
|
|
184
|
-
Return the index where to insert item x in list a, assuming a is sorted.
|
|
185
|
-
|
|
186
|
-
The return value i is such that all e in a[:i] have e <= x, and all e in
|
|
187
|
-
a[i:] have e > x. So if x already appears in the list, i points just
|
|
188
|
-
beyond the rightmost x already there
|
|
189
|
-
|
|
190
|
-
Optional args lo (default 0) and hi (default len(a)) bound the
|
|
191
|
-
slice of a to be searched.
|
|
192
|
-
"""
|
|
193
|
-
...
|
|
194
|
-
def insort_left(
|
|
195
|
-
a: MutableSequence[SupportsRichComparisonT], x: SupportsRichComparisonT, lo: int = 0, hi: int | None = None
|
|
196
|
-
) -> None:
|
|
197
|
-
"""
|
|
198
|
-
insort_left(a, x[, lo[, hi]])
|
|
199
|
-
|
|
200
|
-
Insert item x in list a, and keep it sorted assuming a is sorted.
|
|
201
|
-
|
|
202
|
-
If x is already in a, insert it to the left of the leftmost x.
|
|
203
|
-
|
|
204
|
-
Optional args lo (default 0) and hi (default len(a)) bound the
|
|
205
|
-
slice of a to be searched.
|
|
206
|
-
"""
|
|
207
|
-
...
|
|
208
|
-
def insort_right(
|
|
209
|
-
a: MutableSequence[SupportsRichComparisonT], x: SupportsRichComparisonT, lo: int = 0, hi: int | None = None
|
|
210
|
-
) -> None:
|
|
211
|
-
"""
|
|
212
|
-
insort_right(a, x[, lo[, hi]])
|
|
213
|
-
|
|
214
|
-
Insert item x in list a, and keep it sorted assuming a is sorted.
|
|
215
|
-
|
|
216
|
-
If x is already in a, insert it to the right of the rightmost x.
|
|
217
|
-
|
|
218
|
-
Optional args lo (default 0) and hi (default len(a)) bound the
|
|
219
|
-
slice of a to be searched.
|
|
220
|
-
"""
|
|
221
|
-
...
|
|
1
|
+
"""
|
|
2
|
+
Bisection algorithms.
|
|
3
|
+
|
|
4
|
+
This module provides support for maintaining a list in sorted order without
|
|
5
|
+
having to sort the list after each insertion. For long lists of items with
|
|
6
|
+
expensive comparison operations, this can be an improvement over the more
|
|
7
|
+
common approach.
|
|
8
|
+
"""
|
|
9
|
+
|
|
10
|
+
import sys
|
|
11
|
+
from _typeshed import SupportsLenAndGetItem, SupportsRichComparisonT
|
|
12
|
+
from collections.abc import Callable, MutableSequence
|
|
13
|
+
from typing import TypeVar, overload
|
|
14
|
+
|
|
15
|
+
_T = TypeVar("_T")
|
|
16
|
+
|
|
17
|
+
if sys.version_info >= (3, 10):
|
|
18
|
+
@overload
|
|
19
|
+
def bisect_left(
|
|
20
|
+
a: SupportsLenAndGetItem[SupportsRichComparisonT],
|
|
21
|
+
x: SupportsRichComparisonT,
|
|
22
|
+
lo: int = 0,
|
|
23
|
+
hi: int | None = None,
|
|
24
|
+
*,
|
|
25
|
+
key: None = None,
|
|
26
|
+
) -> int:
|
|
27
|
+
"""
|
|
28
|
+
Return the index where to insert item x in list a, assuming a is sorted.
|
|
29
|
+
|
|
30
|
+
The return value i is such that all e in a[:i] have e < x, and all e in
|
|
31
|
+
a[i:] have e >= x. So if x already appears in the list, a.insert(i, x) will
|
|
32
|
+
insert just before the leftmost x already there.
|
|
33
|
+
|
|
34
|
+
Optional args lo (default 0) and hi (default len(a)) bound the
|
|
35
|
+
slice of a to be searched.
|
|
36
|
+
"""
|
|
37
|
+
...
|
|
38
|
+
@overload
|
|
39
|
+
def bisect_left(
|
|
40
|
+
a: SupportsLenAndGetItem[_T],
|
|
41
|
+
x: SupportsRichComparisonT,
|
|
42
|
+
lo: int = 0,
|
|
43
|
+
hi: int | None = None,
|
|
44
|
+
*,
|
|
45
|
+
key: Callable[[_T], SupportsRichComparisonT],
|
|
46
|
+
) -> int:
|
|
47
|
+
"""
|
|
48
|
+
Return the index where to insert item x in list a, assuming a is sorted.
|
|
49
|
+
|
|
50
|
+
The return value i is such that all e in a[:i] have e < x, and all e in
|
|
51
|
+
a[i:] have e >= x. So if x already appears in the list, a.insert(i, x) will
|
|
52
|
+
insert just before the leftmost x already there.
|
|
53
|
+
|
|
54
|
+
Optional args lo (default 0) and hi (default len(a)) bound the
|
|
55
|
+
slice of a to be searched.
|
|
56
|
+
"""
|
|
57
|
+
...
|
|
58
|
+
@overload
|
|
59
|
+
def bisect_right(
|
|
60
|
+
a: SupportsLenAndGetItem[SupportsRichComparisonT],
|
|
61
|
+
x: SupportsRichComparisonT,
|
|
62
|
+
lo: int = 0,
|
|
63
|
+
hi: int | None = None,
|
|
64
|
+
*,
|
|
65
|
+
key: None = None,
|
|
66
|
+
) -> int:
|
|
67
|
+
"""
|
|
68
|
+
Return the index where to insert item x in list a, assuming a is sorted.
|
|
69
|
+
|
|
70
|
+
The return value i is such that all e in a[:i] have e <= x, and all e in
|
|
71
|
+
a[i:] have e > x. So if x already appears in the list, a.insert(i, x) will
|
|
72
|
+
insert just after the rightmost x already there.
|
|
73
|
+
|
|
74
|
+
Optional args lo (default 0) and hi (default len(a)) bound the
|
|
75
|
+
slice of a to be searched.
|
|
76
|
+
"""
|
|
77
|
+
...
|
|
78
|
+
@overload
|
|
79
|
+
def bisect_right(
|
|
80
|
+
a: SupportsLenAndGetItem[_T],
|
|
81
|
+
x: SupportsRichComparisonT,
|
|
82
|
+
lo: int = 0,
|
|
83
|
+
hi: int | None = None,
|
|
84
|
+
*,
|
|
85
|
+
key: Callable[[_T], SupportsRichComparisonT],
|
|
86
|
+
) -> int:
|
|
87
|
+
"""
|
|
88
|
+
Return the index where to insert item x in list a, assuming a is sorted.
|
|
89
|
+
|
|
90
|
+
The return value i is such that all e in a[:i] have e <= x, and all e in
|
|
91
|
+
a[i:] have e > x. So if x already appears in the list, a.insert(i, x) will
|
|
92
|
+
insert just after the rightmost x already there.
|
|
93
|
+
|
|
94
|
+
Optional args lo (default 0) and hi (default len(a)) bound the
|
|
95
|
+
slice of a to be searched.
|
|
96
|
+
"""
|
|
97
|
+
...
|
|
98
|
+
@overload
|
|
99
|
+
def insort_left(
|
|
100
|
+
a: MutableSequence[SupportsRichComparisonT],
|
|
101
|
+
x: SupportsRichComparisonT,
|
|
102
|
+
lo: int = 0,
|
|
103
|
+
hi: int | None = None,
|
|
104
|
+
*,
|
|
105
|
+
key: None = None,
|
|
106
|
+
) -> None:
|
|
107
|
+
"""
|
|
108
|
+
Insert item x in list a, and keep it sorted assuming a is sorted.
|
|
109
|
+
|
|
110
|
+
If x is already in a, insert it to the left of the leftmost x.
|
|
111
|
+
|
|
112
|
+
Optional args lo (default 0) and hi (default len(a)) bound the
|
|
113
|
+
slice of a to be searched.
|
|
114
|
+
"""
|
|
115
|
+
...
|
|
116
|
+
@overload
|
|
117
|
+
def insort_left(
|
|
118
|
+
a: MutableSequence[_T], x: _T, lo: int = 0, hi: int | None = None, *, key: Callable[[_T], SupportsRichComparisonT]
|
|
119
|
+
) -> None:
|
|
120
|
+
"""
|
|
121
|
+
Insert item x in list a, and keep it sorted assuming a is sorted.
|
|
122
|
+
|
|
123
|
+
If x is already in a, insert it to the left of the leftmost x.
|
|
124
|
+
|
|
125
|
+
Optional args lo (default 0) and hi (default len(a)) bound the
|
|
126
|
+
slice of a to be searched.
|
|
127
|
+
"""
|
|
128
|
+
...
|
|
129
|
+
@overload
|
|
130
|
+
def insort_right(
|
|
131
|
+
a: MutableSequence[SupportsRichComparisonT],
|
|
132
|
+
x: SupportsRichComparisonT,
|
|
133
|
+
lo: int = 0,
|
|
134
|
+
hi: int | None = None,
|
|
135
|
+
*,
|
|
136
|
+
key: None = None,
|
|
137
|
+
) -> None:
|
|
138
|
+
"""
|
|
139
|
+
Insert item x in list a, and keep it sorted assuming a is sorted.
|
|
140
|
+
|
|
141
|
+
If x is already in a, insert it to the right of the rightmost x.
|
|
142
|
+
|
|
143
|
+
Optional args lo (default 0) and hi (default len(a)) bound the
|
|
144
|
+
slice of a to be searched.
|
|
145
|
+
"""
|
|
146
|
+
...
|
|
147
|
+
@overload
|
|
148
|
+
def insort_right(
|
|
149
|
+
a: MutableSequence[_T], x: _T, lo: int = 0, hi: int | None = None, *, key: Callable[[_T], SupportsRichComparisonT]
|
|
150
|
+
) -> None:
|
|
151
|
+
"""
|
|
152
|
+
Insert item x in list a, and keep it sorted assuming a is sorted.
|
|
153
|
+
|
|
154
|
+
If x is already in a, insert it to the right of the rightmost x.
|
|
155
|
+
|
|
156
|
+
Optional args lo (default 0) and hi (default len(a)) bound the
|
|
157
|
+
slice of a to be searched.
|
|
158
|
+
"""
|
|
159
|
+
...
|
|
160
|
+
|
|
161
|
+
else:
|
|
162
|
+
def bisect_left(
|
|
163
|
+
a: SupportsLenAndGetItem[SupportsRichComparisonT], x: SupportsRichComparisonT, lo: int = 0, hi: int | None = None
|
|
164
|
+
) -> int:
|
|
165
|
+
"""
|
|
166
|
+
bisect_left(a, x[, lo[, hi]]) -> index
|
|
167
|
+
|
|
168
|
+
Return the index where to insert item x in list a, assuming a is sorted.
|
|
169
|
+
|
|
170
|
+
The return value i is such that all e in a[:i] have e < x, and all e in
|
|
171
|
+
a[i:] have e >= x. So if x already appears in the list, i points just
|
|
172
|
+
before the leftmost x already there.
|
|
173
|
+
|
|
174
|
+
Optional args lo (default 0) and hi (default len(a)) bound the
|
|
175
|
+
slice of a to be searched.
|
|
176
|
+
"""
|
|
177
|
+
...
|
|
178
|
+
def bisect_right(
|
|
179
|
+
a: SupportsLenAndGetItem[SupportsRichComparisonT], x: SupportsRichComparisonT, lo: int = 0, hi: int | None = None
|
|
180
|
+
) -> int:
|
|
181
|
+
"""
|
|
182
|
+
bisect_right(a, x[, lo[, hi]]) -> index
|
|
183
|
+
|
|
184
|
+
Return the index where to insert item x in list a, assuming a is sorted.
|
|
185
|
+
|
|
186
|
+
The return value i is such that all e in a[:i] have e <= x, and all e in
|
|
187
|
+
a[i:] have e > x. So if x already appears in the list, i points just
|
|
188
|
+
beyond the rightmost x already there
|
|
189
|
+
|
|
190
|
+
Optional args lo (default 0) and hi (default len(a)) bound the
|
|
191
|
+
slice of a to be searched.
|
|
192
|
+
"""
|
|
193
|
+
...
|
|
194
|
+
def insort_left(
|
|
195
|
+
a: MutableSequence[SupportsRichComparisonT], x: SupportsRichComparisonT, lo: int = 0, hi: int | None = None
|
|
196
|
+
) -> None:
|
|
197
|
+
"""
|
|
198
|
+
insort_left(a, x[, lo[, hi]])
|
|
199
|
+
|
|
200
|
+
Insert item x in list a, and keep it sorted assuming a is sorted.
|
|
201
|
+
|
|
202
|
+
If x is already in a, insert it to the left of the leftmost x.
|
|
203
|
+
|
|
204
|
+
Optional args lo (default 0) and hi (default len(a)) bound the
|
|
205
|
+
slice of a to be searched.
|
|
206
|
+
"""
|
|
207
|
+
...
|
|
208
|
+
def insort_right(
|
|
209
|
+
a: MutableSequence[SupportsRichComparisonT], x: SupportsRichComparisonT, lo: int = 0, hi: int | None = None
|
|
210
|
+
) -> None:
|
|
211
|
+
"""
|
|
212
|
+
insort_right(a, x[, lo[, hi]])
|
|
213
|
+
|
|
214
|
+
Insert item x in list a, and keep it sorted assuming a is sorted.
|
|
215
|
+
|
|
216
|
+
If x is already in a, insert it to the right of the rightmost x.
|
|
217
|
+
|
|
218
|
+
Optional args lo (default 0) and hi (default len(a)) bound the
|
|
219
|
+
slice of a to be searched.
|
|
220
|
+
"""
|
|
221
|
+
...
|
|
@@ -1 +1 @@
|
|
|
1
|
-
def getpreferredencoding(do_setlocale: bool = True) -> str: ...
|
|
1
|
+
def getpreferredencoding(do_setlocale: bool = True) -> str: ...
|
|
@@ -69,23 +69,33 @@ _VT_co = TypeVar("_VT_co", covariant=True) # Value type covariant containers.
|
|
|
69
69
|
|
|
70
70
|
@final
|
|
71
71
|
class dict_keys(KeysView[_KT_co], Generic[_KT_co, _VT_co]): # undocumented
|
|
72
|
-
def __eq__(self, value: object, /) -> bool:
|
|
72
|
+
def __eq__(self, value: object, /) -> bool:
|
|
73
|
+
"""Return self==value."""
|
|
74
|
+
...
|
|
73
75
|
if sys.version_info >= (3, 10):
|
|
74
76
|
@property
|
|
75
|
-
def mapping(self) -> MappingProxyType[_KT_co, _VT_co]:
|
|
77
|
+
def mapping(self) -> MappingProxyType[_KT_co, _VT_co]:
|
|
78
|
+
"""dictionary that this view refers to"""
|
|
79
|
+
...
|
|
76
80
|
|
|
77
81
|
@final
|
|
78
82
|
class dict_values(ValuesView[_VT_co], Generic[_KT_co, _VT_co]): # undocumented
|
|
79
83
|
if sys.version_info >= (3, 10):
|
|
80
84
|
@property
|
|
81
|
-
def mapping(self) -> MappingProxyType[_KT_co, _VT_co]:
|
|
85
|
+
def mapping(self) -> MappingProxyType[_KT_co, _VT_co]:
|
|
86
|
+
"""dictionary that this view refers to"""
|
|
87
|
+
...
|
|
82
88
|
|
|
83
89
|
@final
|
|
84
90
|
class dict_items(ItemsView[_KT_co, _VT_co]): # undocumented
|
|
85
|
-
def __eq__(self, value: object, /) -> bool:
|
|
91
|
+
def __eq__(self, value: object, /) -> bool:
|
|
92
|
+
"""Return self==value."""
|
|
93
|
+
...
|
|
86
94
|
if sys.version_info >= (3, 10):
|
|
87
95
|
@property
|
|
88
|
-
def mapping(self) -> MappingProxyType[_KT_co, _VT_co]:
|
|
96
|
+
def mapping(self) -> MappingProxyType[_KT_co, _VT_co]:
|
|
97
|
+
"""dictionary that this view refers to"""
|
|
98
|
+
...
|
|
89
99
|
|
|
90
100
|
if sys.version_info >= (3, 12):
|
|
91
101
|
@runtime_checkable
|