mypy-dev 1.9.0.dev0__py3-none-any.whl
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.
- mypy/__init__.py +1 -0
- mypy/__main__.py +37 -0
- mypy/api.py +94 -0
- mypy/applytype.py +156 -0
- mypy/argmap.py +268 -0
- mypy/binder.py +538 -0
- mypy/bogus_type.py +27 -0
- mypy/build.py +3562 -0
- mypy/checker.py +8372 -0
- mypy/checkexpr.py +6615 -0
- mypy/checkmember.py +1356 -0
- mypy/checkpattern.py +801 -0
- mypy/checkstrformat.py +1109 -0
- mypy/config_parser.py +670 -0
- mypy/constant_fold.py +187 -0
- mypy/constraints.py +1624 -0
- mypy/copytype.py +133 -0
- mypy/defaults.py +46 -0
- mypy/dmypy/__init__.py +0 -0
- mypy/dmypy/__main__.py +6 -0
- mypy/dmypy/client.py +749 -0
- mypy/dmypy_os.py +42 -0
- mypy/dmypy_server.py +1107 -0
- mypy/dmypy_util.py +117 -0
- mypy/erasetype.py +278 -0
- mypy/errorcodes.py +285 -0
- mypy/errors.py +1280 -0
- mypy/evalexpr.py +205 -0
- mypy/expandtype.py +510 -0
- mypy/exprtotype.py +206 -0
- mypy/fastparse.py +2147 -0
- mypy/find_sources.py +243 -0
- mypy/fixup.py +426 -0
- mypy/freetree.py +23 -0
- mypy/fscache.py +309 -0
- mypy/fswatcher.py +106 -0
- mypy/gclogger.py +47 -0
- mypy/git.py +34 -0
- mypy/graph_utils.py +112 -0
- mypy/indirection.py +121 -0
- mypy/infer.py +75 -0
- mypy/inspections.py +627 -0
- mypy/ipc.py +310 -0
- mypy/join.py +866 -0
- mypy/literals.py +306 -0
- mypy/lookup.py +61 -0
- mypy/main.py +1574 -0
- mypy/maptype.py +106 -0
- mypy/meet.py +1140 -0
- mypy/memprofile.py +121 -0
- mypy/message_registry.py +326 -0
- mypy/messages.py +3171 -0
- mypy/metastore.py +225 -0
- mypy/mixedtraverser.py +112 -0
- mypy/modulefinder.py +875 -0
- mypy/moduleinspect.py +184 -0
- mypy/mro.py +62 -0
- mypy/nodes.py +4112 -0
- mypy/operators.py +126 -0
- mypy/options.py +556 -0
- mypy/parse.py +30 -0
- mypy/partially_defined.py +675 -0
- mypy/patterns.py +150 -0
- mypy/plugin.py +901 -0
- mypy/plugins/__init__.py +0 -0
- mypy/plugins/attrs.py +1152 -0
- mypy/plugins/common.py +440 -0
- mypy/plugins/ctypes.py +245 -0
- mypy/plugins/dataclasses.py +1101 -0
- mypy/plugins/default.py +518 -0
- mypy/plugins/enums.py +259 -0
- mypy/plugins/functools.py +104 -0
- mypy/plugins/proper_plugin.py +175 -0
- mypy/plugins/singledispatch.py +224 -0
- mypy/py.typed +1 -0
- mypy/pyinfo.py +78 -0
- mypy/reachability.py +362 -0
- mypy/refinfo.py +92 -0
- mypy/renaming.py +568 -0
- mypy/report.py +924 -0
- mypy/scope.py +125 -0
- mypy/semanal.py +7023 -0
- mypy/semanal_classprop.py +187 -0
- mypy/semanal_enum.py +253 -0
- mypy/semanal_infer.py +128 -0
- mypy/semanal_main.py +511 -0
- mypy/semanal_namedtuple.py +670 -0
- mypy/semanal_newtype.py +273 -0
- mypy/semanal_pass1.py +156 -0
- mypy/semanal_shared.py +490 -0
- mypy/semanal_typeargs.py +265 -0
- mypy/semanal_typeddict.py +575 -0
- mypy/server/__init__.py +0 -0
- mypy/server/astdiff.py +518 -0
- mypy/server/astmerge.py +562 -0
- mypy/server/aststrip.py +281 -0
- mypy/server/deps.py +1137 -0
- mypy/server/mergecheck.py +83 -0
- mypy/server/objgraph.py +101 -0
- mypy/server/subexpr.py +198 -0
- mypy/server/target.py +11 -0
- mypy/server/trigger.py +26 -0
- mypy/server/update.py +1339 -0
- mypy/sharedparse.py +112 -0
- mypy/solve.py +562 -0
- mypy/split_namespace.py +35 -0
- mypy/state.py +28 -0
- mypy/stats.py +489 -0
- mypy/strconv.py +641 -0
- mypy/stubdoc.py +491 -0
- mypy/stubgen.py +1873 -0
- mypy/stubgenc.py +993 -0
- mypy/stubinfo.py +173 -0
- mypy/stubtest.py +2079 -0
- mypy/stubutil.py +807 -0
- mypy/subtypes.py +1967 -0
- mypy/suggestions.py +1046 -0
- mypy/test/__init__.py +0 -0
- mypy/test/config.py +28 -0
- mypy/test/data.py +823 -0
- mypy/test/helpers.py +476 -0
- mypy/test/meta/__init__.py +0 -0
- mypy/test/meta/_pytest.py +72 -0
- mypy/test/meta/test_diff_helper.py +47 -0
- mypy/test/meta/test_parse_data.py +73 -0
- mypy/test/meta/test_update_data.py +135 -0
- mypy/test/test_find_sources.py +376 -0
- mypy/test/test_ref_info.py +45 -0
- mypy/test/testapi.py +45 -0
- mypy/test/testargs.py +77 -0
- mypy/test/testcheck.py +322 -0
- mypy/test/testcmdline.py +152 -0
- mypy/test/testconstraints.py +134 -0
- mypy/test/testdaemon.py +132 -0
- mypy/test/testdeps.py +77 -0
- mypy/test/testdiff.py +67 -0
- mypy/test/testerrorstream.py +46 -0
- mypy/test/testfinegrained.py +438 -0
- mypy/test/testfinegrainedcache.py +18 -0
- mypy/test/testformatter.py +85 -0
- mypy/test/testfscache.py +101 -0
- mypy/test/testgraph.py +83 -0
- mypy/test/testinfer.py +373 -0
- mypy/test/testipc.py +119 -0
- mypy/test/testmerge.py +238 -0
- mypy/test/testmodulefinder.py +278 -0
- mypy/test/testmypyc.py +14 -0
- mypy/test/testparse.py +107 -0
- mypy/test/testpep561.py +211 -0
- mypy/test/testpythoneval.py +117 -0
- mypy/test/testreports.py +55 -0
- mypy/test/testsemanal.py +209 -0
- mypy/test/testsolve.py +285 -0
- mypy/test/teststubgen.py +1412 -0
- mypy/test/teststubinfo.py +12 -0
- mypy/test/teststubtest.py +2492 -0
- mypy/test/testsubtypes.py +303 -0
- mypy/test/testtransform.py +64 -0
- mypy/test/testtypegen.py +83 -0
- mypy/test/testtypes.py +1551 -0
- mypy/test/testutil.py +111 -0
- mypy/test/typefixture.py +415 -0
- mypy/test/update_data.py +87 -0
- mypy/test/visitors.py +63 -0
- mypy/traverser.py +961 -0
- mypy/treetransform.py +800 -0
- mypy/tvar_scope.py +147 -0
- mypy/type_visitor.py +564 -0
- mypy/typeanal.py +2510 -0
- mypy/typeops.py +1082 -0
- mypy/types.py +3686 -0
- mypy/types_utils.py +166 -0
- mypy/typeshed/LICENSE +237 -0
- mypy/typeshed/stdlib/VERSIONS +308 -0
- mypy/typeshed/stdlib/__future__.pyi +36 -0
- mypy/typeshed/stdlib/__main__.pyi +3 -0
- mypy/typeshed/stdlib/_ast.pyi +587 -0
- mypy/typeshed/stdlib/_bisect.pyi +84 -0
- mypy/typeshed/stdlib/_bootlocale.pyi +1 -0
- mypy/typeshed/stdlib/_codecs.pyi +133 -0
- mypy/typeshed/stdlib/_collections_abc.pyi +94 -0
- mypy/typeshed/stdlib/_compat_pickle.pyi +8 -0
- mypy/typeshed/stdlib/_compression.pyi +25 -0
- mypy/typeshed/stdlib/_csv.pyi +90 -0
- mypy/typeshed/stdlib/_ctypes.pyi +205 -0
- mypy/typeshed/stdlib/_curses.pyi +557 -0
- mypy/typeshed/stdlib/_decimal.pyi +281 -0
- mypy/typeshed/stdlib/_dummy_thread.pyi +27 -0
- mypy/typeshed/stdlib/_dummy_threading.pyi +164 -0
- mypy/typeshed/stdlib/_heapq.pyi +11 -0
- mypy/typeshed/stdlib/_imp.pyi +28 -0
- mypy/typeshed/stdlib/_json.pyi +49 -0
- mypy/typeshed/stdlib/_locale.pyi +100 -0
- mypy/typeshed/stdlib/_markupbase.pyi +16 -0
- mypy/typeshed/stdlib/_msi.pyi +91 -0
- mypy/typeshed/stdlib/_operator.pyi +147 -0
- mypy/typeshed/stdlib/_osx_support.pyi +34 -0
- mypy/typeshed/stdlib/_posixsubprocess.pyi +32 -0
- mypy/typeshed/stdlib/_py_abc.pyi +14 -0
- mypy/typeshed/stdlib/_pydecimal.pyi +43 -0
- mypy/typeshed/stdlib/_random.pyi +12 -0
- mypy/typeshed/stdlib/_sitebuiltins.pyi +16 -0
- mypy/typeshed/stdlib/_socket.pyi +802 -0
- mypy/typeshed/stdlib/_stat.pyi +103 -0
- mypy/typeshed/stdlib/_thread.pyi +52 -0
- mypy/typeshed/stdlib/_threading_local.pyi +17 -0
- mypy/typeshed/stdlib/_tkinter.pyi +120 -0
- mypy/typeshed/stdlib/_tracemalloc.pyi +17 -0
- mypy/typeshed/stdlib/_typeshed/__init__.pyi +347 -0
- mypy/typeshed/stdlib/_typeshed/dbapi.pyi +37 -0
- mypy/typeshed/stdlib/_typeshed/wsgi.pyi +44 -0
- mypy/typeshed/stdlib/_typeshed/xml.pyi +9 -0
- mypy/typeshed/stdlib/_warnings.pyi +55 -0
- mypy/typeshed/stdlib/_weakref.pyi +41 -0
- mypy/typeshed/stdlib/_weakrefset.pyi +51 -0
- mypy/typeshed/stdlib/_winapi.pyi +251 -0
- mypy/typeshed/stdlib/abc.pyi +49 -0
- mypy/typeshed/stdlib/aifc.pyi +91 -0
- mypy/typeshed/stdlib/antigravity.pyi +3 -0
- mypy/typeshed/stdlib/argparse.pyi +571 -0
- mypy/typeshed/stdlib/array.pyi +92 -0
- mypy/typeshed/stdlib/ast.pyi +277 -0
- mypy/typeshed/stdlib/asynchat.pyi +21 -0
- mypy/typeshed/stdlib/asyncio/__init__.pyi +41 -0
- mypy/typeshed/stdlib/asyncio/base_events.pyi +440 -0
- mypy/typeshed/stdlib/asyncio/base_futures.pyi +19 -0
- mypy/typeshed/stdlib/asyncio/base_subprocess.pyi +63 -0
- mypy/typeshed/stdlib/asyncio/base_tasks.pyi +9 -0
- mypy/typeshed/stdlib/asyncio/constants.pyi +20 -0
- mypy/typeshed/stdlib/asyncio/coroutines.pyi +26 -0
- mypy/typeshed/stdlib/asyncio/events.pyi +574 -0
- mypy/typeshed/stdlib/asyncio/exceptions.pyi +43 -0
- mypy/typeshed/stdlib/asyncio/format_helpers.pyi +20 -0
- mypy/typeshed/stdlib/asyncio/futures.pyi +57 -0
- mypy/typeshed/stdlib/asyncio/locks.pyi +121 -0
- mypy/typeshed/stdlib/asyncio/log.pyi +3 -0
- mypy/typeshed/stdlib/asyncio/mixins.pyi +9 -0
- mypy/typeshed/stdlib/asyncio/proactor_events.pyi +64 -0
- mypy/typeshed/stdlib/asyncio/protocols.pyi +34 -0
- mypy/typeshed/stdlib/asyncio/queues.pyi +47 -0
- mypy/typeshed/stdlib/asyncio/runners.pyi +32 -0
- mypy/typeshed/stdlib/asyncio/selector_events.pyi +8 -0
- mypy/typeshed/stdlib/asyncio/sslproto.pyi +163 -0
- mypy/typeshed/stdlib/asyncio/staggered.pyi +10 -0
- mypy/typeshed/stdlib/asyncio/streams.pyi +148 -0
- mypy/typeshed/stdlib/asyncio/subprocess.pyi +229 -0
- mypy/typeshed/stdlib/asyncio/taskgroups.pyi +25 -0
- mypy/typeshed/stdlib/asyncio/tasks.pyi +477 -0
- mypy/typeshed/stdlib/asyncio/threads.pyi +9 -0
- mypy/typeshed/stdlib/asyncio/timeouts.pyi +19 -0
- mypy/typeshed/stdlib/asyncio/transports.pyi +47 -0
- mypy/typeshed/stdlib/asyncio/trsock.pyi +98 -0
- mypy/typeshed/stdlib/asyncio/unix_events.pyi +173 -0
- mypy/typeshed/stdlib/asyncio/windows_events.pyi +83 -0
- mypy/typeshed/stdlib/asyncio/windows_utils.pyi +49 -0
- mypy/typeshed/stdlib/asyncore.pyi +90 -0
- mypy/typeshed/stdlib/atexit.pyi +12 -0
- mypy/typeshed/stdlib/audioop.pyi +42 -0
- mypy/typeshed/stdlib/base64.pyi +59 -0
- mypy/typeshed/stdlib/bdb.pyi +102 -0
- mypy/typeshed/stdlib/binascii.pyi +36 -0
- mypy/typeshed/stdlib/binhex.pyi +45 -0
- mypy/typeshed/stdlib/bisect.pyi +4 -0
- mypy/typeshed/stdlib/builtins.pyi +1937 -0
- mypy/typeshed/stdlib/bz2.pyi +146 -0
- mypy/typeshed/stdlib/cProfile.pyi +35 -0
- mypy/typeshed/stdlib/calendar.pyi +206 -0
- mypy/typeshed/stdlib/cgi.pyi +118 -0
- mypy/typeshed/stdlib/cgitb.pyi +32 -0
- mypy/typeshed/stdlib/chunk.pyi +20 -0
- mypy/typeshed/stdlib/cmath.pyi +36 -0
- mypy/typeshed/stdlib/cmd.pyi +45 -0
- mypy/typeshed/stdlib/code.pyi +33 -0
- mypy/typeshed/stdlib/codecs.pyi +285 -0
- mypy/typeshed/stdlib/codeop.pyi +13 -0
- mypy/typeshed/stdlib/collections/__init__.pyi +477 -0
- mypy/typeshed/stdlib/collections/abc.pyi +2 -0
- mypy/typeshed/stdlib/colorsys.pyi +13 -0
- mypy/typeshed/stdlib/compileall.pyi +111 -0
- mypy/typeshed/stdlib/concurrent/__init__.pyi +0 -0
- mypy/typeshed/stdlib/concurrent/futures/__init__.pyi +32 -0
- mypy/typeshed/stdlib/concurrent/futures/_base.pyi +120 -0
- mypy/typeshed/stdlib/concurrent/futures/process.pyi +233 -0
- mypy/typeshed/stdlib/concurrent/futures/thread.pyi +80 -0
- mypy/typeshed/stdlib/configparser.pyi +313 -0
- mypy/typeshed/stdlib/contextlib.pyi +207 -0
- mypy/typeshed/stdlib/contextvars.pyi +63 -0
- mypy/typeshed/stdlib/copy.pyi +16 -0
- mypy/typeshed/stdlib/copyreg.pyi +21 -0
- mypy/typeshed/stdlib/crypt.pyi +12 -0
- mypy/typeshed/stdlib/csv.pyi +147 -0
- mypy/typeshed/stdlib/ctypes/__init__.pyi +187 -0
- mypy/typeshed/stdlib/ctypes/_endian.pyi +19 -0
- mypy/typeshed/stdlib/ctypes/util.pyi +6 -0
- mypy/typeshed/stdlib/ctypes/wintypes.pyi +298 -0
- mypy/typeshed/stdlib/curses/__init__.pyi +21 -0
- mypy/typeshed/stdlib/curses/ascii.pyi +63 -0
- mypy/typeshed/stdlib/curses/has_key.pyi +4 -0
- mypy/typeshed/stdlib/curses/panel.pyi +25 -0
- mypy/typeshed/stdlib/curses/textpad.pyi +13 -0
- mypy/typeshed/stdlib/dataclasses.pyi +313 -0
- mypy/typeshed/stdlib/datetime.pyi +295 -0
- mypy/typeshed/stdlib/dbm/__init__.pyi +95 -0
- mypy/typeshed/stdlib/dbm/dumb.pyi +31 -0
- mypy/typeshed/stdlib/dbm/gnu.pyi +40 -0
- mypy/typeshed/stdlib/dbm/ndbm.pyi +36 -0
- mypy/typeshed/stdlib/decimal.pyi +2 -0
- mypy/typeshed/stdlib/difflib.pyi +140 -0
- mypy/typeshed/stdlib/dis.pyi +144 -0
- mypy/typeshed/stdlib/distutils/__init__.pyi +5 -0
- mypy/typeshed/stdlib/distutils/archive_util.pyi +20 -0
- mypy/typeshed/stdlib/distutils/bcppcompiler.pyi +3 -0
- mypy/typeshed/stdlib/distutils/ccompiler.pyi +152 -0
- mypy/typeshed/stdlib/distutils/cmd.pyi +66 -0
- mypy/typeshed/stdlib/distutils/command/__init__.pyi +0 -0
- mypy/typeshed/stdlib/distutils/command/bdist.pyi +25 -0
- mypy/typeshed/stdlib/distutils/command/bdist_dumb.pyi +21 -0
- mypy/typeshed/stdlib/distutils/command/bdist_msi.pyi +45 -0
- mypy/typeshed/stdlib/distutils/command/bdist_packager.pyi +0 -0
- mypy/typeshed/stdlib/distutils/command/bdist_rpm.pyi +52 -0
- mypy/typeshed/stdlib/distutils/command/bdist_wininst.pyi +16 -0
- mypy/typeshed/stdlib/distutils/command/build.pyi +31 -0
- mypy/typeshed/stdlib/distutils/command/build_clib.pyi +27 -0
- mypy/typeshed/stdlib/distutils/command/build_ext.pyi +50 -0
- mypy/typeshed/stdlib/distutils/command/build_py.pyi +44 -0
- mypy/typeshed/stdlib/distutils/command/build_scripts.pyi +24 -0
- mypy/typeshed/stdlib/distutils/command/check.pyi +39 -0
- mypy/typeshed/stdlib/distutils/command/clean.pyi +17 -0
- mypy/typeshed/stdlib/distutils/command/config.pyi +83 -0
- mypy/typeshed/stdlib/distutils/command/install.pyi +63 -0
- mypy/typeshed/stdlib/distutils/command/install_data.pyi +19 -0
- mypy/typeshed/stdlib/distutils/command/install_egg_info.pyi +18 -0
- mypy/typeshed/stdlib/distutils/command/install_headers.pyi +16 -0
- mypy/typeshed/stdlib/distutils/command/install_lib.pyi +25 -0
- mypy/typeshed/stdlib/distutils/command/install_scripts.pyi +18 -0
- mypy/typeshed/stdlib/distutils/command/register.pyi +18 -0
- mypy/typeshed/stdlib/distutils/command/sdist.pyi +42 -0
- mypy/typeshed/stdlib/distutils/command/upload.pyi +17 -0
- mypy/typeshed/stdlib/distutils/config.pyi +17 -0
- mypy/typeshed/stdlib/distutils/core.pyi +57 -0
- mypy/typeshed/stdlib/distutils/cygwinccompiler.pyi +20 -0
- mypy/typeshed/stdlib/distutils/debug.pyi +1 -0
- mypy/typeshed/stdlib/distutils/dep_util.pyi +3 -0
- mypy/typeshed/stdlib/distutils/dir_util.pyi +13 -0
- mypy/typeshed/stdlib/distutils/dist.pyi +146 -0
- mypy/typeshed/stdlib/distutils/errors.pyi +19 -0
- mypy/typeshed/stdlib/distutils/extension.pyi +36 -0
- mypy/typeshed/stdlib/distutils/fancy_getopt.pyi +34 -0
- mypy/typeshed/stdlib/distutils/file_util.pyi +14 -0
- mypy/typeshed/stdlib/distutils/filelist.pyi +50 -0
- mypy/typeshed/stdlib/distutils/log.pyi +25 -0
- mypy/typeshed/stdlib/distutils/msvccompiler.pyi +3 -0
- mypy/typeshed/stdlib/distutils/spawn.pyi +2 -0
- mypy/typeshed/stdlib/distutils/sysconfig.pyi +22 -0
- mypy/typeshed/stdlib/distutils/text_file.pyi +21 -0
- mypy/typeshed/stdlib/distutils/unixccompiler.pyi +3 -0
- mypy/typeshed/stdlib/distutils/util.pyi +46 -0
- mypy/typeshed/stdlib/distutils/version.pyi +36 -0
- mypy/typeshed/stdlib/doctest.pyi +248 -0
- mypy/typeshed/stdlib/dummy_threading.pyi +2 -0
- mypy/typeshed/stdlib/email/__init__.pyi +29 -0
- mypy/typeshed/stdlib/email/_header_value_parser.pyi +392 -0
- mypy/typeshed/stdlib/email/_policybase.pyi +51 -0
- mypy/typeshed/stdlib/email/base64mime.pyi +13 -0
- mypy/typeshed/stdlib/email/charset.pyi +34 -0
- mypy/typeshed/stdlib/email/contentmanager.pyi +11 -0
- mypy/typeshed/stdlib/email/encoders.pyi +8 -0
- mypy/typeshed/stdlib/email/errors.pyi +39 -0
- mypy/typeshed/stdlib/email/feedparser.pyi +23 -0
- mypy/typeshed/stdlib/email/generator.pyi +40 -0
- mypy/typeshed/stdlib/email/header.pyi +31 -0
- mypy/typeshed/stdlib/email/headerregistry.pyi +178 -0
- mypy/typeshed/stdlib/email/iterators.pyi +12 -0
- mypy/typeshed/stdlib/email/message.pyi +161 -0
- mypy/typeshed/stdlib/email/mime/__init__.pyi +0 -0
- mypy/typeshed/stdlib/email/mime/application.pyi +17 -0
- mypy/typeshed/stdlib/email/mime/audio.pyi +17 -0
- mypy/typeshed/stdlib/email/mime/base.pyi +8 -0
- mypy/typeshed/stdlib/email/mime/image.pyi +17 -0
- mypy/typeshed/stdlib/email/mime/message.pyi +8 -0
- mypy/typeshed/stdlib/email/mime/multipart.pyi +18 -0
- mypy/typeshed/stdlib/email/mime/nonmultipart.pyi +5 -0
- mypy/typeshed/stdlib/email/mime/text.pyi +9 -0
- mypy/typeshed/stdlib/email/parser.pyi +26 -0
- mypy/typeshed/stdlib/email/policy.pyi +38 -0
- mypy/typeshed/stdlib/email/quoprimime.pyi +28 -0
- mypy/typeshed/stdlib/email/utils.pyi +66 -0
- mypy/typeshed/stdlib/encodings/__init__.pyi +10 -0
- mypy/typeshed/stdlib/encodings/utf_8.pyi +21 -0
- mypy/typeshed/stdlib/encodings/utf_8_sig.pyi +22 -0
- mypy/typeshed/stdlib/ensurepip/__init__.pyi +12 -0
- mypy/typeshed/stdlib/enum.pyi +317 -0
- mypy/typeshed/stdlib/errno.pyi +222 -0
- mypy/typeshed/stdlib/faulthandler.pyi +13 -0
- mypy/typeshed/stdlib/fcntl.pyi +127 -0
- mypy/typeshed/stdlib/filecmp.pyi +57 -0
- mypy/typeshed/stdlib/fileinput.pyi +213 -0
- mypy/typeshed/stdlib/fnmatch.pyi +9 -0
- mypy/typeshed/stdlib/formatter.pyi +88 -0
- mypy/typeshed/stdlib/fractions.pyi +150 -0
- mypy/typeshed/stdlib/ftplib.pyi +178 -0
- mypy/typeshed/stdlib/functools.pyi +200 -0
- mypy/typeshed/stdlib/gc.pyi +37 -0
- mypy/typeshed/stdlib/genericpath.pyi +52 -0
- mypy/typeshed/stdlib/getopt.pyi +11 -0
- mypy/typeshed/stdlib/getpass.pyi +8 -0
- mypy/typeshed/stdlib/gettext.pyi +169 -0
- mypy/typeshed/stdlib/glob.pyi +42 -0
- mypy/typeshed/stdlib/graphlib.pyi +28 -0
- mypy/typeshed/stdlib/grp.pyi +21 -0
- mypy/typeshed/stdlib/gzip.pyi +160 -0
- mypy/typeshed/stdlib/hashlib.pyi +165 -0
- mypy/typeshed/stdlib/heapq.pyi +17 -0
- mypy/typeshed/stdlib/hmac.pyi +38 -0
- mypy/typeshed/stdlib/html/__init__.pyi +6 -0
- mypy/typeshed/stdlib/html/entities.pyi +6 -0
- mypy/typeshed/stdlib/html/parser.pyi +34 -0
- mypy/typeshed/stdlib/http/__init__.pyi +105 -0
- mypy/typeshed/stdlib/http/client.pyi +259 -0
- mypy/typeshed/stdlib/http/cookiejar.pyi +159 -0
- mypy/typeshed/stdlib/http/cookies.pyi +60 -0
- mypy/typeshed/stdlib/http/server.pyi +83 -0
- mypy/typeshed/stdlib/imaplib.pyi +168 -0
- mypy/typeshed/stdlib/imghdr.pyi +17 -0
- mypy/typeshed/stdlib/imp.pyi +62 -0
- mypy/typeshed/stdlib/importlib/__init__.pyi +24 -0
- mypy/typeshed/stdlib/importlib/_abc.pyi +15 -0
- mypy/typeshed/stdlib/importlib/abc.pyi +172 -0
- mypy/typeshed/stdlib/importlib/machinery.pyi +179 -0
- mypy/typeshed/stdlib/importlib/metadata/__init__.pyi +276 -0
- mypy/typeshed/stdlib/importlib/metadata/_meta.pyi +40 -0
- mypy/typeshed/stdlib/importlib/readers.pyi +68 -0
- mypy/typeshed/stdlib/importlib/resources/__init__.pyi +46 -0
- mypy/typeshed/stdlib/importlib/resources/abc.pyi +12 -0
- mypy/typeshed/stdlib/importlib/resources/readers.pyi +14 -0
- mypy/typeshed/stdlib/importlib/resources/simple.pyi +49 -0
- mypy/typeshed/stdlib/importlib/simple.pyi +11 -0
- mypy/typeshed/stdlib/importlib/util.pyi +43 -0
- mypy/typeshed/stdlib/inspect.pyi +631 -0
- mypy/typeshed/stdlib/io.pyi +204 -0
- mypy/typeshed/stdlib/ipaddress.pyi +208 -0
- mypy/typeshed/stdlib/itertools.pyi +293 -0
- mypy/typeshed/stdlib/json/__init__.pyi +61 -0
- mypy/typeshed/stdlib/json/decoder.pyi +32 -0
- mypy/typeshed/stdlib/json/encoder.pyi +38 -0
- mypy/typeshed/stdlib/json/tool.pyi +1 -0
- mypy/typeshed/stdlib/keyword.pyi +21 -0
- mypy/typeshed/stdlib/lib2to3/__init__.pyi +0 -0
- mypy/typeshed/stdlib/lib2to3/btm_matcher.pyi +28 -0
- mypy/typeshed/stdlib/lib2to3/fixer_base.pyi +42 -0
- mypy/typeshed/stdlib/lib2to3/fixes/__init__.pyi +0 -0
- mypy/typeshed/stdlib/lib2to3/fixes/fix_apply.pyi +8 -0
- mypy/typeshed/stdlib/lib2to3/fixes/fix_asserts.pyi +10 -0
- mypy/typeshed/stdlib/lib2to3/fixes/fix_basestring.pyi +8 -0
- mypy/typeshed/stdlib/lib2to3/fixes/fix_buffer.pyi +8 -0
- mypy/typeshed/stdlib/lib2to3/fixes/fix_dict.pyi +16 -0
- mypy/typeshed/stdlib/lib2to3/fixes/fix_except.pyi +14 -0
- mypy/typeshed/stdlib/lib2to3/fixes/fix_exec.pyi +8 -0
- mypy/typeshed/stdlib/lib2to3/fixes/fix_execfile.pyi +8 -0
- mypy/typeshed/stdlib/lib2to3/fixes/fix_exitfunc.pyi +13 -0
- mypy/typeshed/stdlib/lib2to3/fixes/fix_filter.pyi +9 -0
- mypy/typeshed/stdlib/lib2to3/fixes/fix_funcattrs.pyi +8 -0
- mypy/typeshed/stdlib/lib2to3/fixes/fix_future.pyi +8 -0
- mypy/typeshed/stdlib/lib2to3/fixes/fix_getcwdu.pyi +8 -0
- mypy/typeshed/stdlib/lib2to3/fixes/fix_has_key.pyi +8 -0
- mypy/typeshed/stdlib/lib2to3/fixes/fix_idioms.pyi +15 -0
- mypy/typeshed/stdlib/lib2to3/fixes/fix_import.pyi +16 -0
- mypy/typeshed/stdlib/lib2to3/fixes/fix_imports.pyi +21 -0
- mypy/typeshed/stdlib/lib2to3/fixes/fix_imports2.pyi +6 -0
- mypy/typeshed/stdlib/lib2to3/fixes/fix_input.pyi +11 -0
- mypy/typeshed/stdlib/lib2to3/fixes/fix_intern.pyi +9 -0
- mypy/typeshed/stdlib/lib2to3/fixes/fix_isinstance.pyi +8 -0
- mypy/typeshed/stdlib/lib2to3/fixes/fix_itertools.pyi +9 -0
- mypy/typeshed/stdlib/lib2to3/fixes/fix_itertools_imports.pyi +7 -0
- mypy/typeshed/stdlib/lib2to3/fixes/fix_long.pyi +7 -0
- mypy/typeshed/stdlib/lib2to3/fixes/fix_map.pyi +9 -0
- mypy/typeshed/stdlib/lib2to3/fixes/fix_metaclass.pyi +17 -0
- mypy/typeshed/stdlib/lib2to3/fixes/fix_methodattrs.pyi +10 -0
- mypy/typeshed/stdlib/lib2to3/fixes/fix_ne.pyi +8 -0
- mypy/typeshed/stdlib/lib2to3/fixes/fix_next.pyi +19 -0
- mypy/typeshed/stdlib/lib2to3/fixes/fix_nonzero.pyi +8 -0
- mypy/typeshed/stdlib/lib2to3/fixes/fix_numliterals.pyi +8 -0
- mypy/typeshed/stdlib/lib2to3/fixes/fix_operator.pyi +12 -0
- mypy/typeshed/stdlib/lib2to3/fixes/fix_paren.pyi +8 -0
- mypy/typeshed/stdlib/lib2to3/fixes/fix_print.pyi +12 -0
- mypy/typeshed/stdlib/lib2to3/fixes/fix_raise.pyi +8 -0
- mypy/typeshed/stdlib/lib2to3/fixes/fix_raw_input.pyi +8 -0
- mypy/typeshed/stdlib/lib2to3/fixes/fix_reduce.pyi +8 -0
- mypy/typeshed/stdlib/lib2to3/fixes/fix_reload.pyi +9 -0
- mypy/typeshed/stdlib/lib2to3/fixes/fix_renames.pyi +17 -0
- mypy/typeshed/stdlib/lib2to3/fixes/fix_repr.pyi +8 -0
- mypy/typeshed/stdlib/lib2to3/fixes/fix_set_literal.pyi +7 -0
- mypy/typeshed/stdlib/lib2to3/fixes/fix_standarderror.pyi +8 -0
- mypy/typeshed/stdlib/lib2to3/fixes/fix_sys_exc.pyi +9 -0
- mypy/typeshed/stdlib/lib2to3/fixes/fix_throw.pyi +8 -0
- mypy/typeshed/stdlib/lib2to3/fixes/fix_tuple_params.pyi +17 -0
- mypy/typeshed/stdlib/lib2to3/fixes/fix_types.pyi +8 -0
- mypy/typeshed/stdlib/lib2to3/fixes/fix_unicode.pyi +12 -0
- mypy/typeshed/stdlib/lib2to3/fixes/fix_urllib.pyi +15 -0
- mypy/typeshed/stdlib/lib2to3/fixes/fix_ws_comma.pyi +12 -0
- mypy/typeshed/stdlib/lib2to3/fixes/fix_xrange.pyi +20 -0
- mypy/typeshed/stdlib/lib2to3/fixes/fix_xreadlines.pyi +8 -0
- mypy/typeshed/stdlib/lib2to3/fixes/fix_zip.pyi +9 -0
- mypy/typeshed/stdlib/lib2to3/main.pyi +42 -0
- mypy/typeshed/stdlib/lib2to3/pgen2/__init__.pyi +9 -0
- mypy/typeshed/stdlib/lib2to3/pgen2/driver.pyi +27 -0
- mypy/typeshed/stdlib/lib2to3/pgen2/grammar.pyi +24 -0
- mypy/typeshed/stdlib/lib2to3/pgen2/literals.pyi +7 -0
- mypy/typeshed/stdlib/lib2to3/pgen2/parse.pyi +30 -0
- mypy/typeshed/stdlib/lib2to3/pgen2/pgen.pyi +50 -0
- mypy/typeshed/stdlib/lib2to3/pgen2/token.pyi +67 -0
- mypy/typeshed/stdlib/lib2to3/pgen2/tokenize.pyi +96 -0
- mypy/typeshed/stdlib/lib2to3/pygram.pyi +114 -0
- mypy/typeshed/stdlib/lib2to3/pytree.pyi +117 -0
- mypy/typeshed/stdlib/lib2to3/refactor.pyi +82 -0
- mypy/typeshed/stdlib/linecache.pyi +23 -0
- mypy/typeshed/stdlib/locale.pyi +152 -0
- mypy/typeshed/stdlib/logging/__init__.pyi +655 -0
- mypy/typeshed/stdlib/logging/config.pyi +134 -0
- mypy/typeshed/stdlib/logging/handlers.pyi +275 -0
- mypy/typeshed/stdlib/lzma.pyi +197 -0
- mypy/typeshed/stdlib/mailbox.pyi +256 -0
- mypy/typeshed/stdlib/mailcap.pyi +11 -0
- mypy/typeshed/stdlib/marshal.pyi +33 -0
- mypy/typeshed/stdlib/math.pyi +125 -0
- mypy/typeshed/stdlib/mimetypes.pyi +46 -0
- mypy/typeshed/stdlib/mmap.pyi +113 -0
- mypy/typeshed/stdlib/modulefinder.pyi +66 -0
- mypy/typeshed/stdlib/msilib/__init__.pyi +176 -0
- mypy/typeshed/stdlib/msilib/schema.pyi +94 -0
- mypy/typeshed/stdlib/msilib/sequence.pyi +13 -0
- mypy/typeshed/stdlib/msilib/text.pyi +7 -0
- mypy/typeshed/stdlib/msvcrt.pyi +32 -0
- mypy/typeshed/stdlib/multiprocessing/__init__.pyi +90 -0
- mypy/typeshed/stdlib/multiprocessing/connection.pyi +75 -0
- mypy/typeshed/stdlib/multiprocessing/context.pyi +187 -0
- mypy/typeshed/stdlib/multiprocessing/dummy/__init__.pyi +77 -0
- mypy/typeshed/stdlib/multiprocessing/dummy/connection.pyi +39 -0
- mypy/typeshed/stdlib/multiprocessing/forkserver.pyi +31 -0
- mypy/typeshed/stdlib/multiprocessing/heap.pyi +36 -0
- mypy/typeshed/stdlib/multiprocessing/managers.pyi +212 -0
- mypy/typeshed/stdlib/multiprocessing/pool.pyi +103 -0
- mypy/typeshed/stdlib/multiprocessing/popen_fork.pyi +23 -0
- mypy/typeshed/stdlib/multiprocessing/popen_forkserver.pyi +16 -0
- mypy/typeshed/stdlib/multiprocessing/popen_spawn_posix.pyi +20 -0
- mypy/typeshed/stdlib/multiprocessing/popen_spawn_win32.pyi +30 -0
- mypy/typeshed/stdlib/multiprocessing/process.pyi +39 -0
- mypy/typeshed/stdlib/multiprocessing/queues.pyi +41 -0
- mypy/typeshed/stdlib/multiprocessing/reduction.pyi +89 -0
- mypy/typeshed/stdlib/multiprocessing/resource_sharer.pyi +20 -0
- mypy/typeshed/stdlib/multiprocessing/resource_tracker.pyi +18 -0
- mypy/typeshed/stdlib/multiprocessing/shared_memory.pyi +40 -0
- mypy/typeshed/stdlib/multiprocessing/sharedctypes.pyi +101 -0
- mypy/typeshed/stdlib/multiprocessing/spawn.pyi +32 -0
- mypy/typeshed/stdlib/multiprocessing/synchronize.pyi +54 -0
- mypy/typeshed/stdlib/multiprocessing/util.pyi +79 -0
- mypy/typeshed/stdlib/netrc.pyi +23 -0
- mypy/typeshed/stdlib/nis.pyi +9 -0
- mypy/typeshed/stdlib/nntplib.pyi +125 -0
- mypy/typeshed/stdlib/nt.pyi +111 -0
- mypy/typeshed/stdlib/ntpath.pyi +119 -0
- mypy/typeshed/stdlib/nturl2path.pyi +2 -0
- mypy/typeshed/stdlib/numbers.pyi +154 -0
- mypy/typeshed/stdlib/opcode.pyi +59 -0
- mypy/typeshed/stdlib/operator.pyi +110 -0
- mypy/typeshed/stdlib/optparse.pyi +252 -0
- mypy/typeshed/stdlib/os/__init__.pyi +1139 -0
- mypy/typeshed/stdlib/os/path.pyi +8 -0
- mypy/typeshed/stdlib/ossaudiodev.pyi +131 -0
- mypy/typeshed/stdlib/parser.pyi +24 -0
- mypy/typeshed/stdlib/pathlib.pyi +232 -0
- mypy/typeshed/stdlib/pdb.pyi +181 -0
- mypy/typeshed/stdlib/pickle.pyi +270 -0
- mypy/typeshed/stdlib/pickletools.pyi +167 -0
- mypy/typeshed/stdlib/pipes.pyi +16 -0
- mypy/typeshed/stdlib/pkgutil.pyi +53 -0
- mypy/typeshed/stdlib/platform.pyi +42 -0
- mypy/typeshed/stdlib/plistlib.pyi +113 -0
- mypy/typeshed/stdlib/poplib.pyi +71 -0
- mypy/typeshed/stdlib/posix.pyi +359 -0
- mypy/typeshed/stdlib/posixpath.pyi +161 -0
- mypy/typeshed/stdlib/pprint.pyi +112 -0
- mypy/typeshed/stdlib/profile.pyi +31 -0
- mypy/typeshed/stdlib/pstats.pyi +78 -0
- mypy/typeshed/stdlib/pty.pyi +19 -0
- mypy/typeshed/stdlib/pwd.pyi +27 -0
- mypy/typeshed/stdlib/py_compile.pyi +34 -0
- mypy/typeshed/stdlib/pyclbr.pyi +74 -0
- mypy/typeshed/stdlib/pydoc.pyi +261 -0
- mypy/typeshed/stdlib/pydoc_data/__init__.pyi +0 -0
- mypy/typeshed/stdlib/pydoc_data/topics.pyi +1 -0
- mypy/typeshed/stdlib/pyexpat/__init__.pyi +80 -0
- mypy/typeshed/stdlib/pyexpat/errors.pyi +49 -0
- mypy/typeshed/stdlib/pyexpat/model.pyi +11 -0
- mypy/typeshed/stdlib/queue.pyi +58 -0
- mypy/typeshed/stdlib/quopri.pyi +11 -0
- mypy/typeshed/stdlib/random.pyi +138 -0
- mypy/typeshed/stdlib/re.pyi +290 -0
- mypy/typeshed/stdlib/readline.pyi +36 -0
- mypy/typeshed/stdlib/reprlib.pyi +65 -0
- mypy/typeshed/stdlib/resource.pyi +92 -0
- mypy/typeshed/stdlib/rlcompleter.pyi +9 -0
- mypy/typeshed/stdlib/runpy.pyi +24 -0
- mypy/typeshed/stdlib/sched.pyi +42 -0
- mypy/typeshed/stdlib/secrets.pyi +15 -0
- mypy/typeshed/stdlib/select.pyi +151 -0
- mypy/typeshed/stdlib/selectors.pyi +67 -0
- mypy/typeshed/stdlib/shelve.pyi +46 -0
- mypy/typeshed/stdlib/shlex.pyi +43 -0
- mypy/typeshed/stdlib/shutil.pyi +189 -0
- mypy/typeshed/stdlib/signal.pyi +189 -0
- mypy/typeshed/stdlib/site.pyi +27 -0
- mypy/typeshed/stdlib/smtpd.pyi +91 -0
- mypy/typeshed/stdlib/smtplib.pyi +204 -0
- mypy/typeshed/stdlib/sndhdr.pyi +14 -0
- mypy/typeshed/stdlib/socket.pyi +825 -0
- mypy/typeshed/stdlib/socketserver.pyi +168 -0
- mypy/typeshed/stdlib/spwd.pyi +40 -0
- mypy/typeshed/stdlib/sqlite3/__init__.pyi +1 -0
- mypy/typeshed/stdlib/sqlite3/dbapi2.pyi +469 -0
- mypy/typeshed/stdlib/sre_compile.pyi +11 -0
- mypy/typeshed/stdlib/sre_constants.pyi +130 -0
- mypy/typeshed/stdlib/sre_parse.pyi +104 -0
- mypy/typeshed/stdlib/ssl.pyi +529 -0
- mypy/typeshed/stdlib/stat.pyi +1 -0
- mypy/typeshed/stdlib/statistics.pyi +132 -0
- mypy/typeshed/stdlib/string.pyi +83 -0
- mypy/typeshed/stdlib/stringprep.pyi +27 -0
- mypy/typeshed/stdlib/struct.pyi +26 -0
- mypy/typeshed/stdlib/subprocess.pyi +2614 -0
- mypy/typeshed/stdlib/sunau.pyi +86 -0
- mypy/typeshed/stdlib/symbol.pyi +93 -0
- mypy/typeshed/stdlib/symtable.pyi +58 -0
- mypy/typeshed/stdlib/sys/__init__.pyi +373 -0
- mypy/typeshed/stdlib/sys/_monitoring.pyi +52 -0
- mypy/typeshed/stdlib/sysconfig.pyi +43 -0
- mypy/typeshed/stdlib/syslog.pyi +46 -0
- mypy/typeshed/stdlib/tabnanny.pyi +16 -0
- mypy/typeshed/stdlib/tarfile.pyi +438 -0
- mypy/typeshed/stdlib/telnetlib.pyi +122 -0
- mypy/typeshed/stdlib/tempfile.pyi +477 -0
- mypy/typeshed/stdlib/termios.pyi +267 -0
- mypy/typeshed/stdlib/textwrap.pyi +103 -0
- mypy/typeshed/stdlib/this.pyi +2 -0
- mypy/typeshed/stdlib/threading.pyi +187 -0
- mypy/typeshed/stdlib/time.pyi +107 -0
- mypy/typeshed/stdlib/timeit.pyi +32 -0
- mypy/typeshed/stdlib/tkinter/__init__.pyi +3641 -0
- mypy/typeshed/stdlib/tkinter/colorchooser.pyi +20 -0
- mypy/typeshed/stdlib/tkinter/commondialog.pyi +14 -0
- mypy/typeshed/stdlib/tkinter/constants.pyi +80 -0
- mypy/typeshed/stdlib/tkinter/dialog.pyi +16 -0
- mypy/typeshed/stdlib/tkinter/dnd.pyi +20 -0
- mypy/typeshed/stdlib/tkinter/filedialog.pyi +151 -0
- mypy/typeshed/stdlib/tkinter/font.pyi +116 -0
- mypy/typeshed/stdlib/tkinter/messagebox.pyi +44 -0
- mypy/typeshed/stdlib/tkinter/scrolledtext.pyi +10 -0
- mypy/typeshed/stdlib/tkinter/simpledialog.pyi +54 -0
- mypy/typeshed/stdlib/tkinter/tix.pyi +299 -0
- mypy/typeshed/stdlib/tkinter/ttk.pyi +1191 -0
- mypy/typeshed/stdlib/token.pyi +159 -0
- mypy/typeshed/stdlib/tokenize.pyi +177 -0
- mypy/typeshed/stdlib/tomllib.pyi +10 -0
- mypy/typeshed/stdlib/trace.pyi +79 -0
- mypy/typeshed/stdlib/traceback.pyi +260 -0
- mypy/typeshed/stdlib/tracemalloc.pyi +124 -0
- mypy/typeshed/stdlib/tty.pyi +30 -0
- mypy/typeshed/stdlib/turtle.pyi +713 -0
- mypy/typeshed/stdlib/types.pyi +605 -0
- mypy/typeshed/stdlib/typing.pyi +968 -0
- mypy/typeshed/stdlib/typing_extensions.pyi +503 -0
- mypy/typeshed/stdlib/unicodedata.pyi +71 -0
- mypy/typeshed/stdlib/unittest/__init__.pyi +67 -0
- mypy/typeshed/stdlib/unittest/_log.pyi +27 -0
- mypy/typeshed/stdlib/unittest/async_case.pyi +21 -0
- mypy/typeshed/stdlib/unittest/case.pyi +342 -0
- mypy/typeshed/stdlib/unittest/loader.pyi +51 -0
- mypy/typeshed/stdlib/unittest/main.pyi +69 -0
- mypy/typeshed/stdlib/unittest/mock.pyi +430 -0
- mypy/typeshed/stdlib/unittest/result.pyi +46 -0
- mypy/typeshed/stdlib/unittest/runner.pyi +72 -0
- mypy/typeshed/stdlib/unittest/signals.pyi +15 -0
- mypy/typeshed/stdlib/unittest/suite.pyi +22 -0
- mypy/typeshed/stdlib/unittest/util.pyi +23 -0
- mypy/typeshed/stdlib/urllib/__init__.pyi +0 -0
- mypy/typeshed/stdlib/urllib/error.pyi +23 -0
- mypy/typeshed/stdlib/urllib/parse.pyi +210 -0
- mypy/typeshed/stdlib/urllib/request.pyi +399 -0
- mypy/typeshed/stdlib/urllib/response.pyi +43 -0
- mypy/typeshed/stdlib/urllib/robotparser.pyi +20 -0
- mypy/typeshed/stdlib/uu.pyi +13 -0
- mypy/typeshed/stdlib/uuid.pyi +100 -0
- mypy/typeshed/stdlib/venv/__init__.pyi +79 -0
- mypy/typeshed/stdlib/warnings.pyi +112 -0
- mypy/typeshed/stdlib/wave.pyi +85 -0
- mypy/typeshed/stdlib/weakref.pyi +150 -0
- mypy/typeshed/stdlib/webbrowser.pyi +74 -0
- mypy/typeshed/stdlib/winreg.pyi +103 -0
- mypy/typeshed/stdlib/winsound.pyi +28 -0
- mypy/typeshed/stdlib/wsgiref/__init__.pyi +0 -0
- mypy/typeshed/stdlib/wsgiref/handlers.pyi +91 -0
- mypy/typeshed/stdlib/wsgiref/headers.pyi +26 -0
- mypy/typeshed/stdlib/wsgiref/simple_server.pyi +37 -0
- mypy/typeshed/stdlib/wsgiref/types.pyi +32 -0
- mypy/typeshed/stdlib/wsgiref/util.pyi +24 -0
- mypy/typeshed/stdlib/wsgiref/validate.pyi +50 -0
- mypy/typeshed/stdlib/xdrlib.pyi +57 -0
- mypy/typeshed/stdlib/xml/__init__.pyi +1 -0
- mypy/typeshed/stdlib/xml/dom/NodeFilter.pyi +19 -0
- mypy/typeshed/stdlib/xml/dom/__init__.pyi +69 -0
- mypy/typeshed/stdlib/xml/dom/domreg.pyi +8 -0
- mypy/typeshed/stdlib/xml/dom/expatbuilder.pyi +100 -0
- mypy/typeshed/stdlib/xml/dom/minicompat.pyi +22 -0
- mypy/typeshed/stdlib/xml/dom/minidom.pyi +404 -0
- mypy/typeshed/stdlib/xml/dom/pulldom.pyi +94 -0
- mypy/typeshed/stdlib/xml/dom/xmlbuilder.pyi +108 -0
- mypy/typeshed/stdlib/xml/etree/ElementInclude.pyi +28 -0
- mypy/typeshed/stdlib/xml/etree/ElementPath.pyi +34 -0
- mypy/typeshed/stdlib/xml/etree/ElementTree.pyi +321 -0
- mypy/typeshed/stdlib/xml/etree/__init__.pyi +0 -0
- mypy/typeshed/stdlib/xml/etree/cElementTree.pyi +1 -0
- mypy/typeshed/stdlib/xml/parsers/__init__.pyi +1 -0
- mypy/typeshed/stdlib/xml/parsers/expat/__init__.pyi +1 -0
- mypy/typeshed/stdlib/xml/parsers/expat/errors.pyi +1 -0
- mypy/typeshed/stdlib/xml/parsers/expat/model.pyi +1 -0
- mypy/typeshed/stdlib/xml/sax/__init__.pyi +25 -0
- mypy/typeshed/stdlib/xml/sax/_exceptions.pyi +19 -0
- mypy/typeshed/stdlib/xml/sax/handler.pyi +55 -0
- mypy/typeshed/stdlib/xml/sax/saxutils.pyi +60 -0
- mypy/typeshed/stdlib/xml/sax/xmlreader.pyi +87 -0
- mypy/typeshed/stdlib/xmlrpc/__init__.pyi +0 -0
- mypy/typeshed/stdlib/xmlrpc/client.pyi +296 -0
- mypy/typeshed/stdlib/xmlrpc/server.pyi +143 -0
- mypy/typeshed/stdlib/xxlimited.pyi +22 -0
- mypy/typeshed/stdlib/zipapp.pyi +20 -0
- mypy/typeshed/stdlib/zipfile/__init__.pyi +306 -0
- mypy/typeshed/stdlib/zipfile/_path.pyi +95 -0
- mypy/typeshed/stdlib/zipimport.pyi +32 -0
- mypy/typeshed/stdlib/zlib.pyi +56 -0
- mypy/typeshed/stdlib/zoneinfo/__init__.pyi +38 -0
- mypy/typeshed/stubs/mypy-extensions/mypy_extensions.pyi +218 -0
- mypy/typestate.py +323 -0
- mypy/typetraverser.py +142 -0
- mypy/typevars.py +93 -0
- mypy/typevartuples.py +32 -0
- mypy/util.py +869 -0
- mypy/version.py +1 -0
- mypy/visitor.py +621 -0
- mypy/xml/mypy-html.css +104 -0
- mypy/xml/mypy-html.xslt +81 -0
- mypy/xml/mypy-txt.xslt +100 -0
- mypy/xml/mypy.xsd +50 -0
- mypy_dev-1.9.0.dev0.dist-info/LICENSE +229 -0
- mypy_dev-1.9.0.dev0.dist-info/METADATA +39 -0
- mypy_dev-1.9.0.dev0.dist-info/RECORD +1018 -0
- mypy_dev-1.9.0.dev0.dist-info/WHEEL +5 -0
- mypy_dev-1.9.0.dev0.dist-info/entry_points.txt +6 -0
- mypy_dev-1.9.0.dev0.dist-info/top_level.txt +2 -0
- mypyc/README.md +133 -0
- mypyc/__init__.py +0 -0
- mypyc/__main__.py +57 -0
- mypyc/analysis/__init__.py +0 -0
- mypyc/analysis/attrdefined.py +436 -0
- mypyc/analysis/blockfreq.py +32 -0
- mypyc/analysis/dataflow.py +624 -0
- mypyc/analysis/ircheck.py +429 -0
- mypyc/analysis/selfleaks.py +207 -0
- mypyc/build.py +616 -0
- mypyc/codegen/__init__.py +0 -0
- mypyc/codegen/cstring.py +54 -0
- mypyc/codegen/emit.py +1193 -0
- mypyc/codegen/emitclass.py +1060 -0
- mypyc/codegen/emitfunc.py +846 -0
- mypyc/codegen/emitmodule.py +1131 -0
- mypyc/codegen/emitwrapper.py +979 -0
- mypyc/codegen/literals.py +302 -0
- mypyc/common.py +136 -0
- mypyc/crash.py +31 -0
- mypyc/doc/Makefile +20 -0
- mypyc/doc/bool_operations.rst +27 -0
- mypyc/doc/compilation_units.rst +20 -0
- mypyc/doc/conf.py +59 -0
- mypyc/doc/cpython-timings.md +25 -0
- mypyc/doc/dev-intro.md +548 -0
- mypyc/doc/dict_operations.rst +59 -0
- mypyc/doc/differences_from_python.rst +332 -0
- mypyc/doc/float_operations.rst +50 -0
- mypyc/doc/future.md +42 -0
- mypyc/doc/getting_started.rst +240 -0
- mypyc/doc/index.rst +61 -0
- mypyc/doc/int_operations.rst +162 -0
- mypyc/doc/introduction.rst +150 -0
- mypyc/doc/list_operations.rst +65 -0
- mypyc/doc/make.bat +35 -0
- mypyc/doc/native_classes.rst +206 -0
- mypyc/doc/native_operations.rst +55 -0
- mypyc/doc/performance_tips_and_tricks.rst +244 -0
- mypyc/doc/set_operations.rst +47 -0
- mypyc/doc/str_operations.rst +35 -0
- mypyc/doc/tuple_operations.rst +33 -0
- mypyc/doc/using_type_annotations.rst +398 -0
- mypyc/errors.py +29 -0
- mypyc/external/googletest/LICENSE +28 -0
- mypyc/external/googletest/README.md +280 -0
- mypyc/external/googletest/include/gtest/gtest-death-test.h +294 -0
- mypyc/external/googletest/include/gtest/gtest-message.h +250 -0
- mypyc/external/googletest/include/gtest/gtest-param-test.h +1444 -0
- mypyc/external/googletest/include/gtest/gtest-param-test.h.pump +510 -0
- mypyc/external/googletest/include/gtest/gtest-printers.h +993 -0
- mypyc/external/googletest/include/gtest/gtest-spi.h +232 -0
- mypyc/external/googletest/include/gtest/gtest-test-part.h +179 -0
- mypyc/external/googletest/include/gtest/gtest-typed-test.h +263 -0
- mypyc/external/googletest/include/gtest/gtest.h +2236 -0
- mypyc/external/googletest/include/gtest/gtest_pred_impl.h +358 -0
- mypyc/external/googletest/include/gtest/gtest_prod.h +58 -0
- mypyc/external/googletest/include/gtest/internal/custom/gtest-port.h +69 -0
- mypyc/external/googletest/include/gtest/internal/custom/gtest-printers.h +42 -0
- mypyc/external/googletest/include/gtest/internal/custom/gtest.h +41 -0
- mypyc/external/googletest/include/gtest/internal/gtest-death-test-internal.h +319 -0
- mypyc/external/googletest/include/gtest/internal/gtest-filepath.h +206 -0
- mypyc/external/googletest/include/gtest/internal/gtest-internal.h +1238 -0
- mypyc/external/googletest/include/gtest/internal/gtest-linked_ptr.h +243 -0
- mypyc/external/googletest/include/gtest/internal/gtest-param-util-generated.h +5146 -0
- mypyc/external/googletest/include/gtest/internal/gtest-param-util-generated.h.pump +286 -0
- mypyc/external/googletest/include/gtest/internal/gtest-param-util.h +731 -0
- mypyc/external/googletest/include/gtest/internal/gtest-port-arch.h +93 -0
- mypyc/external/googletest/include/gtest/internal/gtest-port.h +2560 -0
- mypyc/external/googletest/include/gtest/internal/gtest-string.h +167 -0
- mypyc/external/googletest/include/gtest/internal/gtest-tuple.h +1020 -0
- mypyc/external/googletest/include/gtest/internal/gtest-tuple.h.pump +347 -0
- mypyc/external/googletest/include/gtest/internal/gtest-type-util.h +3331 -0
- mypyc/external/googletest/include/gtest/internal/gtest-type-util.h.pump +297 -0
- mypyc/external/googletest/make/Makefile +61 -0
- mypyc/external/googletest/src/gtest-all.cc +48 -0
- mypyc/external/googletest/src/gtest-death-test.cc +1342 -0
- mypyc/external/googletest/src/gtest-filepath.cc +387 -0
- mypyc/external/googletest/src/gtest-internal-inl.h +1183 -0
- mypyc/external/googletest/src/gtest-port.cc +1259 -0
- mypyc/external/googletest/src/gtest-printers.cc +373 -0
- mypyc/external/googletest/src/gtest-test-part.cc +110 -0
- mypyc/external/googletest/src/gtest-typed-test.cc +118 -0
- mypyc/external/googletest/src/gtest.cc +5388 -0
- mypyc/external/googletest/src/gtest_main.cc +38 -0
- mypyc/ir/__init__.py +0 -0
- mypyc/ir/class_ir.py +499 -0
- mypyc/ir/func_ir.py +370 -0
- mypyc/ir/module_ir.py +88 -0
- mypyc/ir/ops.py +1642 -0
- mypyc/ir/pprint.py +496 -0
- mypyc/ir/rtypes.py +1038 -0
- mypyc/irbuild/__init__.py +0 -0
- mypyc/irbuild/ast_helpers.py +120 -0
- mypyc/irbuild/builder.py +1398 -0
- mypyc/irbuild/callable_class.py +173 -0
- mypyc/irbuild/classdef.py +850 -0
- mypyc/irbuild/constant_fold.py +95 -0
- mypyc/irbuild/context.py +186 -0
- mypyc/irbuild/env_class.py +223 -0
- mypyc/irbuild/expression.py +1067 -0
- mypyc/irbuild/for_helpers.py +1046 -0
- mypyc/irbuild/format_str_tokenizer.py +250 -0
- mypyc/irbuild/function.py +1089 -0
- mypyc/irbuild/generator.py +346 -0
- mypyc/irbuild/ll_builder.py +2407 -0
- mypyc/irbuild/main.py +153 -0
- mypyc/irbuild/mapper.py +221 -0
- mypyc/irbuild/match.py +355 -0
- mypyc/irbuild/nonlocalcontrol.py +197 -0
- mypyc/irbuild/prebuildvisitor.py +203 -0
- mypyc/irbuild/prepare.py +609 -0
- mypyc/irbuild/specialize.py +822 -0
- mypyc/irbuild/statement.py +1017 -0
- mypyc/irbuild/targets.py +57 -0
- mypyc/irbuild/util.py +189 -0
- mypyc/irbuild/visitor.py +401 -0
- mypyc/irbuild/vtable.py +82 -0
- mypyc/lib-rt/CPy.h +643 -0
- mypyc/lib-rt/bytes_ops.c +143 -0
- mypyc/lib-rt/dict_ops.c +446 -0
- mypyc/lib-rt/exc_ops.c +259 -0
- mypyc/lib-rt/float_ops.c +192 -0
- mypyc/lib-rt/generic_ops.c +64 -0
- mypyc/lib-rt/getargs.c +450 -0
- mypyc/lib-rt/getargsfast.c +569 -0
- mypyc/lib-rt/init.c +13 -0
- mypyc/lib-rt/int_ops.c +803 -0
- mypyc/lib-rt/list_ops.c +335 -0
- mypyc/lib-rt/misc_ops.c +942 -0
- mypyc/lib-rt/module_shim.tmpl +18 -0
- mypyc/lib-rt/mypyc_util.h +118 -0
- mypyc/lib-rt/pythoncapi_compat.h +497 -0
- mypyc/lib-rt/pythonsupport.h +548 -0
- mypyc/lib-rt/set_ops.c +17 -0
- mypyc/lib-rt/setup.py +70 -0
- mypyc/lib-rt/str_ops.c +241 -0
- mypyc/lib-rt/test_capi.cc +585 -0
- mypyc/lib-rt/tuple_ops.c +61 -0
- mypyc/namegen.py +115 -0
- mypyc/options.py +32 -0
- mypyc/primitives/__init__.py +0 -0
- mypyc/primitives/bytes_ops.py +101 -0
- mypyc/primitives/dict_ops.py +325 -0
- mypyc/primitives/exc_ops.py +101 -0
- mypyc/primitives/float_ops.py +168 -0
- mypyc/primitives/generic_ops.py +384 -0
- mypyc/primitives/int_ops.py +304 -0
- mypyc/primitives/list_ops.py +300 -0
- mypyc/primitives/misc_ops.py +241 -0
- mypyc/primitives/registry.py +323 -0
- mypyc/primitives/set_ops.py +121 -0
- mypyc/primitives/str_ops.py +229 -0
- mypyc/primitives/tuple_ops.py +83 -0
- mypyc/rt_subtype.py +77 -0
- mypyc/sametype.py +83 -0
- mypyc/subtype.py +88 -0
- mypyc/test/__init__.py +0 -0
- mypyc/test/config.py +13 -0
- mypyc/test/test_alwaysdefined.py +46 -0
- mypyc/test/test_analysis.py +77 -0
- mypyc/test/test_cheader.py +45 -0
- mypyc/test/test_commandline.py +82 -0
- mypyc/test/test_emit.py +69 -0
- mypyc/test/test_emitclass.py +35 -0
- mypyc/test/test_emitfunc.py +926 -0
- mypyc/test/test_emitwrapper.py +60 -0
- mypyc/test/test_exceptions.py +56 -0
- mypyc/test/test_external.py +49 -0
- mypyc/test/test_irbuild.py +87 -0
- mypyc/test/test_ircheck.py +199 -0
- mypyc/test/test_literals.py +90 -0
- mypyc/test/test_namegen.py +48 -0
- mypyc/test/test_pprint.py +42 -0
- mypyc/test/test_rarray.py +48 -0
- mypyc/test/test_refcount.py +59 -0
- mypyc/test/test_run.py +426 -0
- mypyc/test/test_serialization.py +108 -0
- mypyc/test/test_struct.py +112 -0
- mypyc/test/test_tuplename.py +33 -0
- mypyc/test/test_typeops.py +97 -0
- mypyc/test/testutil.py +283 -0
- mypyc/test-data/alwaysdefined.test +732 -0
- mypyc/test-data/analysis.test +603 -0
- mypyc/test-data/commandline.test +245 -0
- mypyc/test-data/driver/driver.py +48 -0
- mypyc/test-data/exceptions-freq.test +125 -0
- mypyc/test-data/exceptions.test +713 -0
- mypyc/test-data/fixtures/ir.py +373 -0
- mypyc/test-data/fixtures/testutil.py +103 -0
- mypyc/test-data/fixtures/typing-full.pyi +169 -0
- mypyc/test-data/irbuild-any.test +238 -0
- mypyc/test-data/irbuild-basic.test +3690 -0
- mypyc/test-data/irbuild-bool.test +463 -0
- mypyc/test-data/irbuild-bytes.test +184 -0
- mypyc/test-data/irbuild-classes.test +1303 -0
- mypyc/test-data/irbuild-constant-fold.test +480 -0
- mypyc/test-data/irbuild-dict.test +585 -0
- mypyc/test-data/irbuild-dunders.test +223 -0
- mypyc/test-data/irbuild-float.test +497 -0
- mypyc/test-data/irbuild-generics.test +151 -0
- mypyc/test-data/irbuild-glue-methods.test +437 -0
- mypyc/test-data/irbuild-i16.test +526 -0
- mypyc/test-data/irbuild-i32.test +598 -0
- mypyc/test-data/irbuild-i64.test +2164 -0
- mypyc/test-data/irbuild-int.test +235 -0
- mypyc/test-data/irbuild-isinstance.test +109 -0
- mypyc/test-data/irbuild-lists.test +547 -0
- mypyc/test-data/irbuild-match.test +1708 -0
- mypyc/test-data/irbuild-math.test +64 -0
- mypyc/test-data/irbuild-nested.test +807 -0
- mypyc/test-data/irbuild-optional.test +536 -0
- mypyc/test-data/irbuild-set.test +838 -0
- mypyc/test-data/irbuild-singledispatch.test +257 -0
- mypyc/test-data/irbuild-statements.test +1149 -0
- mypyc/test-data/irbuild-str.test +314 -0
- mypyc/test-data/irbuild-strip-asserts.test +12 -0
- mypyc/test-data/irbuild-try.test +523 -0
- mypyc/test-data/irbuild-tuple.test +462 -0
- mypyc/test-data/irbuild-u8.test +543 -0
- mypyc/test-data/irbuild-unreachable.test +241 -0
- mypyc/test-data/irbuild-vectorcall.test +153 -0
- mypyc/test-data/refcount.test +1588 -0
- mypyc/test-data/run-async.test +145 -0
- mypyc/test-data/run-attrs.test +318 -0
- mypyc/test-data/run-bench.test +196 -0
- mypyc/test-data/run-bools.test +229 -0
- mypyc/test-data/run-bytes.test +302 -0
- mypyc/test-data/run-classes.test +2505 -0
- mypyc/test-data/run-dicts.test +334 -0
- mypyc/test-data/run-dunders.test +945 -0
- mypyc/test-data/run-exceptions.test +448 -0
- mypyc/test-data/run-floats.test +516 -0
- mypyc/test-data/run-functions.test +1310 -0
- mypyc/test-data/run-generators.test +681 -0
- mypyc/test-data/run-i16.test +338 -0
- mypyc/test-data/run-i32.test +336 -0
- mypyc/test-data/run-i64.test +1519 -0
- mypyc/test-data/run-imports.test +265 -0
- mypyc/test-data/run-integers.test +540 -0
- mypyc/test-data/run-lists.test +411 -0
- mypyc/test-data/run-loops.test +485 -0
- mypyc/test-data/run-match.test +283 -0
- mypyc/test-data/run-math.test +106 -0
- mypyc/test-data/run-misc.test +1168 -0
- mypyc/test-data/run-multimodule.test +887 -0
- mypyc/test-data/run-mypy-sim.test +138 -0
- mypyc/test-data/run-primitives.test +375 -0
- mypyc/test-data/run-python37.test +159 -0
- mypyc/test-data/run-python38.test +88 -0
- mypyc/test-data/run-sets.test +150 -0
- mypyc/test-data/run-singledispatch.test +698 -0
- mypyc/test-data/run-strings.test +641 -0
- mypyc/test-data/run-traits.test +411 -0
- mypyc/test-data/run-tuples.test +258 -0
- mypyc/test-data/run-u8.test +303 -0
- mypyc/transform/__init__.py +0 -0
- mypyc/transform/exceptions.py +182 -0
- mypyc/transform/refcount.py +294 -0
- mypyc/transform/uninit.py +190 -0
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
from abc import ABCMeta, abstractmethod
|
|
2
|
+
from collections.abc import Callable
|
|
3
|
+
from email.errors import MessageDefect
|
|
4
|
+
from email.header import Header
|
|
5
|
+
from email.message import Message
|
|
6
|
+
from typing import Any
|
|
7
|
+
from typing_extensions import Self
|
|
8
|
+
|
|
9
|
+
class _PolicyBase:
|
|
10
|
+
def __add__(self, other: Any) -> Self: ...
|
|
11
|
+
def clone(self, **kw: Any) -> Self: ...
|
|
12
|
+
|
|
13
|
+
class Policy(_PolicyBase, metaclass=ABCMeta):
|
|
14
|
+
max_line_length: int | None
|
|
15
|
+
linesep: str
|
|
16
|
+
cte_type: str
|
|
17
|
+
raise_on_defect: bool
|
|
18
|
+
mangle_from_: bool
|
|
19
|
+
message_factory: Callable[[Policy], Message] | None
|
|
20
|
+
def __init__(
|
|
21
|
+
self,
|
|
22
|
+
*,
|
|
23
|
+
max_line_length: int | None = 78,
|
|
24
|
+
linesep: str = "\n",
|
|
25
|
+
cte_type: str = "8bit",
|
|
26
|
+
raise_on_defect: bool = False,
|
|
27
|
+
mangle_from_: bool = False,
|
|
28
|
+
message_factory: Callable[[Policy], Message] | None = None,
|
|
29
|
+
) -> None: ...
|
|
30
|
+
def handle_defect(self, obj: Message, defect: MessageDefect) -> None: ...
|
|
31
|
+
def register_defect(self, obj: Message, defect: MessageDefect) -> None: ...
|
|
32
|
+
def header_max_count(self, name: str) -> int | None: ...
|
|
33
|
+
@abstractmethod
|
|
34
|
+
def header_source_parse(self, sourcelines: list[str]) -> tuple[str, str]: ...
|
|
35
|
+
@abstractmethod
|
|
36
|
+
def header_store_parse(self, name: str, value: str) -> tuple[str, str]: ...
|
|
37
|
+
@abstractmethod
|
|
38
|
+
def header_fetch_parse(self, name: str, value: str) -> str: ...
|
|
39
|
+
@abstractmethod
|
|
40
|
+
def fold(self, name: str, value: str) -> str: ...
|
|
41
|
+
@abstractmethod
|
|
42
|
+
def fold_binary(self, name: str, value: str) -> bytes: ...
|
|
43
|
+
|
|
44
|
+
class Compat32(Policy):
|
|
45
|
+
def header_source_parse(self, sourcelines: list[str]) -> tuple[str, str]: ...
|
|
46
|
+
def header_store_parse(self, name: str, value: str) -> tuple[str, str]: ...
|
|
47
|
+
def header_fetch_parse(self, name: str, value: str) -> str | Header: ... # type: ignore[override]
|
|
48
|
+
def fold(self, name: str, value: str) -> str: ...
|
|
49
|
+
def fold_binary(self, name: str, value: str) -> bytes: ...
|
|
50
|
+
|
|
51
|
+
compat32: Compat32
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
__all__ = ["body_decode", "body_encode", "decode", "decodestring", "header_encode", "header_length"]
|
|
2
|
+
|
|
3
|
+
from _typeshed import ReadableBuffer
|
|
4
|
+
|
|
5
|
+
def header_length(bytearray: str | bytes | bytearray) -> int: ...
|
|
6
|
+
def header_encode(header_bytes: str | ReadableBuffer, charset: str = "iso-8859-1") -> str: ...
|
|
7
|
+
|
|
8
|
+
# First argument should be a buffer that supports slicing and len().
|
|
9
|
+
def body_encode(s: bytes | bytearray, maxlinelen: int = 76, eol: str = "\n") -> str: ...
|
|
10
|
+
def decode(string: str | ReadableBuffer) -> bytes: ...
|
|
11
|
+
|
|
12
|
+
body_decode = decode
|
|
13
|
+
decodestring = decode
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
from collections.abc import Callable, Iterator
|
|
2
|
+
from email.message import Message
|
|
3
|
+
from typing import overload
|
|
4
|
+
|
|
5
|
+
__all__ = ["Charset", "add_alias", "add_charset", "add_codec"]
|
|
6
|
+
|
|
7
|
+
QP: int # undocumented
|
|
8
|
+
BASE64: int # undocumented
|
|
9
|
+
SHORTEST: int # undocumented
|
|
10
|
+
|
|
11
|
+
class Charset:
|
|
12
|
+
input_charset: str
|
|
13
|
+
header_encoding: int
|
|
14
|
+
body_encoding: int
|
|
15
|
+
output_charset: str | None
|
|
16
|
+
input_codec: str | None
|
|
17
|
+
output_codec: str | None
|
|
18
|
+
def __init__(self, input_charset: str = "us-ascii") -> None: ...
|
|
19
|
+
def get_body_encoding(self) -> str | Callable[[Message], None]: ...
|
|
20
|
+
def get_output_charset(self) -> str | None: ...
|
|
21
|
+
def header_encode(self, string: str) -> str: ...
|
|
22
|
+
def header_encode_lines(self, string: str, maxlengths: Iterator[int]) -> list[str | None]: ...
|
|
23
|
+
@overload
|
|
24
|
+
def body_encode(self, string: None) -> None: ...
|
|
25
|
+
@overload
|
|
26
|
+
def body_encode(self, string: str | bytes) -> str: ...
|
|
27
|
+
def __eq__(self, other: object) -> bool: ...
|
|
28
|
+
def __ne__(self, __value: object) -> bool: ...
|
|
29
|
+
|
|
30
|
+
def add_charset(
|
|
31
|
+
charset: str, header_enc: int | None = None, body_enc: int | None = None, output_charset: str | None = None
|
|
32
|
+
) -> None: ...
|
|
33
|
+
def add_alias(alias: str, canonical: str) -> None: ...
|
|
34
|
+
def add_codec(charset: str, codecname: str) -> None: ...
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
from collections.abc import Callable
|
|
2
|
+
from email.message import Message
|
|
3
|
+
from typing import Any
|
|
4
|
+
|
|
5
|
+
class ContentManager:
|
|
6
|
+
def get_content(self, msg: Message, *args: Any, **kw: Any) -> Any: ...
|
|
7
|
+
def set_content(self, msg: Message, obj: Any, *args: Any, **kw: Any) -> Any: ...
|
|
8
|
+
def add_get_handler(self, key: str, handler: Callable[..., Any]) -> None: ...
|
|
9
|
+
def add_set_handler(self, typekey: type, handler: Callable[..., Any]) -> None: ...
|
|
10
|
+
|
|
11
|
+
raw_data_manager: ContentManager
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
from email.message import Message
|
|
2
|
+
|
|
3
|
+
__all__ = ["encode_7or8bit", "encode_base64", "encode_noop", "encode_quopri"]
|
|
4
|
+
|
|
5
|
+
def encode_base64(msg: Message) -> None: ...
|
|
6
|
+
def encode_quopri(msg: Message) -> None: ...
|
|
7
|
+
def encode_7or8bit(msg: Message) -> None: ...
|
|
8
|
+
def encode_noop(msg: Message) -> None: ...
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import sys
|
|
2
|
+
|
|
3
|
+
class MessageError(Exception): ...
|
|
4
|
+
class MessageParseError(MessageError): ...
|
|
5
|
+
class HeaderParseError(MessageParseError): ...
|
|
6
|
+
class BoundaryError(MessageParseError): ...
|
|
7
|
+
class MultipartConversionError(MessageError, TypeError): ...
|
|
8
|
+
class CharsetError(MessageError): ...
|
|
9
|
+
|
|
10
|
+
class MessageDefect(ValueError):
|
|
11
|
+
def __init__(self, line: str | None = None) -> None: ...
|
|
12
|
+
|
|
13
|
+
class NoBoundaryInMultipartDefect(MessageDefect): ...
|
|
14
|
+
class StartBoundaryNotFoundDefect(MessageDefect): ...
|
|
15
|
+
class FirstHeaderLineIsContinuationDefect(MessageDefect): ...
|
|
16
|
+
class MisplacedEnvelopeHeaderDefect(MessageDefect): ...
|
|
17
|
+
class MultipartInvariantViolationDefect(MessageDefect): ...
|
|
18
|
+
class InvalidMultipartContentTransferEncodingDefect(MessageDefect): ...
|
|
19
|
+
class UndecodableBytesDefect(MessageDefect): ...
|
|
20
|
+
class InvalidBase64PaddingDefect(MessageDefect): ...
|
|
21
|
+
class InvalidBase64CharactersDefect(MessageDefect): ...
|
|
22
|
+
class InvalidBase64LengthDefect(MessageDefect): ...
|
|
23
|
+
class CloseBoundaryNotFoundDefect(MessageDefect): ...
|
|
24
|
+
class MissingHeaderBodySeparatorDefect(MessageDefect): ...
|
|
25
|
+
|
|
26
|
+
MalformedHeaderDefect = MissingHeaderBodySeparatorDefect
|
|
27
|
+
|
|
28
|
+
class HeaderDefect(MessageDefect): ...
|
|
29
|
+
class InvalidHeaderDefect(HeaderDefect): ...
|
|
30
|
+
class HeaderMissingRequiredValue(HeaderDefect): ...
|
|
31
|
+
|
|
32
|
+
class NonPrintableDefect(HeaderDefect):
|
|
33
|
+
def __init__(self, non_printables: str | None) -> None: ...
|
|
34
|
+
|
|
35
|
+
class ObsoleteHeaderDefect(HeaderDefect): ...
|
|
36
|
+
class NonASCIILocalPartDefect(HeaderDefect): ...
|
|
37
|
+
|
|
38
|
+
if sys.version_info >= (3, 10):
|
|
39
|
+
class InvalidDateDefect(HeaderDefect): ...
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
from collections.abc import Callable
|
|
2
|
+
from email.message import Message
|
|
3
|
+
from email.policy import Policy
|
|
4
|
+
from typing import Generic, TypeVar, overload
|
|
5
|
+
|
|
6
|
+
__all__ = ["FeedParser", "BytesFeedParser"]
|
|
7
|
+
|
|
8
|
+
_MessageT = TypeVar("_MessageT", bound=Message)
|
|
9
|
+
|
|
10
|
+
class FeedParser(Generic[_MessageT]):
|
|
11
|
+
@overload
|
|
12
|
+
def __init__(self: FeedParser[Message], _factory: None = None, *, policy: Policy = ...) -> None: ...
|
|
13
|
+
@overload
|
|
14
|
+
def __init__(self, _factory: Callable[[], _MessageT], *, policy: Policy = ...) -> None: ...
|
|
15
|
+
def feed(self, data: str) -> None: ...
|
|
16
|
+
def close(self) -> _MessageT: ...
|
|
17
|
+
|
|
18
|
+
class BytesFeedParser(FeedParser[_MessageT]):
|
|
19
|
+
@overload
|
|
20
|
+
def __init__(self: BytesFeedParser[Message], _factory: None = None, *, policy: Policy = ...) -> None: ...
|
|
21
|
+
@overload
|
|
22
|
+
def __init__(self, _factory: Callable[[], _MessageT], *, policy: Policy = ...) -> None: ...
|
|
23
|
+
def feed(self, data: bytes | bytearray) -> None: ... # type: ignore[override]
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
from _typeshed import SupportsWrite
|
|
2
|
+
from email.message import Message
|
|
3
|
+
from email.policy import Policy
|
|
4
|
+
from typing_extensions import Self
|
|
5
|
+
|
|
6
|
+
__all__ = ["Generator", "DecodedGenerator", "BytesGenerator"]
|
|
7
|
+
|
|
8
|
+
class Generator:
|
|
9
|
+
def clone(self, fp: SupportsWrite[str]) -> Self: ...
|
|
10
|
+
def write(self, s: str) -> None: ...
|
|
11
|
+
def __init__(
|
|
12
|
+
self,
|
|
13
|
+
outfp: SupportsWrite[str],
|
|
14
|
+
mangle_from_: bool | None = None,
|
|
15
|
+
maxheaderlen: int | None = None,
|
|
16
|
+
*,
|
|
17
|
+
policy: Policy | None = None,
|
|
18
|
+
) -> None: ...
|
|
19
|
+
def flatten(self, msg: Message, unixfrom: bool = False, linesep: str | None = None) -> None: ...
|
|
20
|
+
|
|
21
|
+
class BytesGenerator(Generator):
|
|
22
|
+
def __init__(
|
|
23
|
+
self,
|
|
24
|
+
outfp: SupportsWrite[bytes],
|
|
25
|
+
mangle_from_: bool | None = None,
|
|
26
|
+
maxheaderlen: int | None = None,
|
|
27
|
+
*,
|
|
28
|
+
policy: Policy | None = None,
|
|
29
|
+
) -> None: ...
|
|
30
|
+
|
|
31
|
+
class DecodedGenerator(Generator):
|
|
32
|
+
def __init__(
|
|
33
|
+
self,
|
|
34
|
+
outfp: SupportsWrite[str],
|
|
35
|
+
mangle_from_: bool | None = None,
|
|
36
|
+
maxheaderlen: int | None = None,
|
|
37
|
+
fmt: str | None = None,
|
|
38
|
+
*,
|
|
39
|
+
policy: Policy | None = None,
|
|
40
|
+
) -> None: ...
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
from collections.abc import Iterable
|
|
2
|
+
from email.charset import Charset
|
|
3
|
+
from typing import Any
|
|
4
|
+
|
|
5
|
+
__all__ = ["Header", "decode_header", "make_header"]
|
|
6
|
+
|
|
7
|
+
class Header:
|
|
8
|
+
def __init__(
|
|
9
|
+
self,
|
|
10
|
+
s: bytes | bytearray | str | None = None,
|
|
11
|
+
charset: Charset | str | None = None,
|
|
12
|
+
maxlinelen: int | None = None,
|
|
13
|
+
header_name: str | None = None,
|
|
14
|
+
continuation_ws: str = " ",
|
|
15
|
+
errors: str = "strict",
|
|
16
|
+
) -> None: ...
|
|
17
|
+
def append(self, s: bytes | bytearray | str, charset: Charset | str | None = None, errors: str = "strict") -> None: ...
|
|
18
|
+
def encode(self, splitchars: str = ";, \t", maxlinelen: int | None = None, linesep: str = "\n") -> str: ...
|
|
19
|
+
def __eq__(self, other: object) -> bool: ...
|
|
20
|
+
def __ne__(self, __value: object) -> bool: ...
|
|
21
|
+
|
|
22
|
+
# decode_header() either returns list[tuple[str, None]] if the header
|
|
23
|
+
# contains no encoded parts, or list[tuple[bytes, str | None]] if the header
|
|
24
|
+
# contains at least one encoded part.
|
|
25
|
+
def decode_header(header: Header | str) -> list[tuple[Any, Any | None]]: ...
|
|
26
|
+
def make_header(
|
|
27
|
+
decoded_seq: Iterable[tuple[bytes | bytearray | str, str | None]],
|
|
28
|
+
maxlinelen: int | None = None,
|
|
29
|
+
header_name: str | None = None,
|
|
30
|
+
continuation_ws: str = " ",
|
|
31
|
+
) -> Header: ...
|
|
@@ -0,0 +1,178 @@
|
|
|
1
|
+
import types
|
|
2
|
+
from collections.abc import Iterable, Mapping
|
|
3
|
+
from datetime import datetime as _datetime
|
|
4
|
+
from email._header_value_parser import (
|
|
5
|
+
AddressList,
|
|
6
|
+
ContentDisposition,
|
|
7
|
+
ContentTransferEncoding,
|
|
8
|
+
ContentType,
|
|
9
|
+
MessageID,
|
|
10
|
+
MIMEVersion,
|
|
11
|
+
TokenList,
|
|
12
|
+
UnstructuredTokenList,
|
|
13
|
+
)
|
|
14
|
+
from email.errors import MessageDefect
|
|
15
|
+
from email.policy import Policy
|
|
16
|
+
from typing import Any, ClassVar, Literal, Protocol
|
|
17
|
+
from typing_extensions import Self
|
|
18
|
+
|
|
19
|
+
class BaseHeader(str):
|
|
20
|
+
# max_count is actually more of an abstract ClassVar (not defined on the base class, but expected to be defined in subclasses)
|
|
21
|
+
max_count: ClassVar[Literal[1] | None]
|
|
22
|
+
@property
|
|
23
|
+
def name(self) -> str: ...
|
|
24
|
+
@property
|
|
25
|
+
def defects(self) -> tuple[MessageDefect, ...]: ...
|
|
26
|
+
def __new__(cls, name: str, value: Any) -> Self: ...
|
|
27
|
+
def init(self, name: str, *, parse_tree: TokenList, defects: Iterable[MessageDefect]) -> None: ...
|
|
28
|
+
def fold(self, *, policy: Policy) -> str: ...
|
|
29
|
+
|
|
30
|
+
class UnstructuredHeader:
|
|
31
|
+
max_count: ClassVar[Literal[1] | None]
|
|
32
|
+
@staticmethod
|
|
33
|
+
def value_parser(value: str) -> UnstructuredTokenList: ...
|
|
34
|
+
@classmethod
|
|
35
|
+
def parse(cls, value: str, kwds: dict[str, Any]) -> None: ...
|
|
36
|
+
|
|
37
|
+
class UniqueUnstructuredHeader(UnstructuredHeader):
|
|
38
|
+
max_count: ClassVar[Literal[1]]
|
|
39
|
+
|
|
40
|
+
class DateHeader:
|
|
41
|
+
max_count: ClassVar[Literal[1] | None]
|
|
42
|
+
def init(self, name: str, *, parse_tree: TokenList, defects: Iterable[MessageDefect], datetime: _datetime) -> None: ...
|
|
43
|
+
@property
|
|
44
|
+
def datetime(self) -> _datetime: ...
|
|
45
|
+
@staticmethod
|
|
46
|
+
def value_parser(value: str) -> UnstructuredTokenList: ...
|
|
47
|
+
@classmethod
|
|
48
|
+
def parse(cls, value: str | _datetime, kwds: dict[str, Any]) -> None: ...
|
|
49
|
+
|
|
50
|
+
class UniqueDateHeader(DateHeader):
|
|
51
|
+
max_count: ClassVar[Literal[1]]
|
|
52
|
+
|
|
53
|
+
class AddressHeader:
|
|
54
|
+
max_count: ClassVar[Literal[1] | None]
|
|
55
|
+
def init(self, name: str, *, parse_tree: TokenList, defects: Iterable[MessageDefect], groups: Iterable[Group]) -> None: ...
|
|
56
|
+
@property
|
|
57
|
+
def groups(self) -> tuple[Group, ...]: ...
|
|
58
|
+
@property
|
|
59
|
+
def addresses(self) -> tuple[Address, ...]: ...
|
|
60
|
+
@staticmethod
|
|
61
|
+
def value_parser(value: str) -> AddressList: ...
|
|
62
|
+
@classmethod
|
|
63
|
+
def parse(cls, value: str, kwds: dict[str, Any]) -> None: ...
|
|
64
|
+
|
|
65
|
+
class UniqueAddressHeader(AddressHeader):
|
|
66
|
+
max_count: ClassVar[Literal[1]]
|
|
67
|
+
|
|
68
|
+
class SingleAddressHeader(AddressHeader):
|
|
69
|
+
@property
|
|
70
|
+
def address(self) -> Address: ...
|
|
71
|
+
|
|
72
|
+
class UniqueSingleAddressHeader(SingleAddressHeader):
|
|
73
|
+
max_count: ClassVar[Literal[1]]
|
|
74
|
+
|
|
75
|
+
class MIMEVersionHeader:
|
|
76
|
+
max_count: ClassVar[Literal[1]]
|
|
77
|
+
def init(
|
|
78
|
+
self,
|
|
79
|
+
name: str,
|
|
80
|
+
*,
|
|
81
|
+
parse_tree: TokenList,
|
|
82
|
+
defects: Iterable[MessageDefect],
|
|
83
|
+
version: str | None,
|
|
84
|
+
major: int | None,
|
|
85
|
+
minor: int | None,
|
|
86
|
+
) -> None: ...
|
|
87
|
+
@property
|
|
88
|
+
def version(self) -> str | None: ...
|
|
89
|
+
@property
|
|
90
|
+
def major(self) -> int | None: ...
|
|
91
|
+
@property
|
|
92
|
+
def minor(self) -> int | None: ...
|
|
93
|
+
@staticmethod
|
|
94
|
+
def value_parser(value: str) -> MIMEVersion: ...
|
|
95
|
+
@classmethod
|
|
96
|
+
def parse(cls, value: str, kwds: dict[str, Any]) -> None: ...
|
|
97
|
+
|
|
98
|
+
class ParameterizedMIMEHeader:
|
|
99
|
+
max_count: ClassVar[Literal[1]]
|
|
100
|
+
def init(self, name: str, *, parse_tree: TokenList, defects: Iterable[MessageDefect], params: Mapping[str, Any]) -> None: ...
|
|
101
|
+
@property
|
|
102
|
+
def params(self) -> types.MappingProxyType[str, Any]: ...
|
|
103
|
+
@classmethod
|
|
104
|
+
def parse(cls, value: str, kwds: dict[str, Any]) -> None: ...
|
|
105
|
+
|
|
106
|
+
class ContentTypeHeader(ParameterizedMIMEHeader):
|
|
107
|
+
@property
|
|
108
|
+
def content_type(self) -> str: ...
|
|
109
|
+
@property
|
|
110
|
+
def maintype(self) -> str: ...
|
|
111
|
+
@property
|
|
112
|
+
def subtype(self) -> str: ...
|
|
113
|
+
@staticmethod
|
|
114
|
+
def value_parser(value: str) -> ContentType: ...
|
|
115
|
+
|
|
116
|
+
class ContentDispositionHeader(ParameterizedMIMEHeader):
|
|
117
|
+
# init is redefined but has the same signature as parent class, so is omitted from the stub
|
|
118
|
+
@property
|
|
119
|
+
def content_disposition(self) -> str | None: ...
|
|
120
|
+
@staticmethod
|
|
121
|
+
def value_parser(value: str) -> ContentDisposition: ...
|
|
122
|
+
|
|
123
|
+
class ContentTransferEncodingHeader:
|
|
124
|
+
max_count: ClassVar[Literal[1]]
|
|
125
|
+
def init(self, name: str, *, parse_tree: TokenList, defects: Iterable[MessageDefect]) -> None: ...
|
|
126
|
+
@property
|
|
127
|
+
def cte(self) -> str: ...
|
|
128
|
+
@classmethod
|
|
129
|
+
def parse(cls, value: str, kwds: dict[str, Any]) -> None: ...
|
|
130
|
+
@staticmethod
|
|
131
|
+
def value_parser(value: str) -> ContentTransferEncoding: ...
|
|
132
|
+
|
|
133
|
+
class MessageIDHeader:
|
|
134
|
+
max_count: ClassVar[Literal[1]]
|
|
135
|
+
@classmethod
|
|
136
|
+
def parse(cls, value: str, kwds: dict[str, Any]) -> None: ...
|
|
137
|
+
@staticmethod
|
|
138
|
+
def value_parser(value: str) -> MessageID: ...
|
|
139
|
+
|
|
140
|
+
class _HeaderParser(Protocol):
|
|
141
|
+
max_count: ClassVar[Literal[1] | None]
|
|
142
|
+
@staticmethod
|
|
143
|
+
def value_parser(__value: str) -> TokenList: ...
|
|
144
|
+
@classmethod
|
|
145
|
+
def parse(cls, __value: str, __kwds: dict[str, Any]) -> None: ...
|
|
146
|
+
|
|
147
|
+
class HeaderRegistry:
|
|
148
|
+
registry: dict[str, type[_HeaderParser]]
|
|
149
|
+
base_class: type[BaseHeader]
|
|
150
|
+
default_class: type[_HeaderParser]
|
|
151
|
+
def __init__(
|
|
152
|
+
self, base_class: type[BaseHeader] = ..., default_class: type[_HeaderParser] = ..., use_default_map: bool = True
|
|
153
|
+
) -> None: ...
|
|
154
|
+
def map_to_type(self, name: str, cls: type[BaseHeader]) -> None: ...
|
|
155
|
+
def __getitem__(self, name: str) -> type[BaseHeader]: ...
|
|
156
|
+
def __call__(self, name: str, value: Any) -> BaseHeader: ...
|
|
157
|
+
|
|
158
|
+
class Address:
|
|
159
|
+
@property
|
|
160
|
+
def display_name(self) -> str: ...
|
|
161
|
+
@property
|
|
162
|
+
def username(self) -> str: ...
|
|
163
|
+
@property
|
|
164
|
+
def domain(self) -> str: ...
|
|
165
|
+
@property
|
|
166
|
+
def addr_spec(self) -> str: ...
|
|
167
|
+
def __init__(
|
|
168
|
+
self, display_name: str = "", username: str | None = "", domain: str | None = "", addr_spec: str | None = None
|
|
169
|
+
) -> None: ...
|
|
170
|
+
def __eq__(self, other: object) -> bool: ...
|
|
171
|
+
|
|
172
|
+
class Group:
|
|
173
|
+
@property
|
|
174
|
+
def display_name(self) -> str | None: ...
|
|
175
|
+
@property
|
|
176
|
+
def addresses(self) -> tuple[Address, ...]: ...
|
|
177
|
+
def __init__(self, display_name: str | None = None, addresses: Iterable[Address] | None = None) -> None: ...
|
|
178
|
+
def __eq__(self, other: object) -> bool: ...
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
from _typeshed import SupportsWrite
|
|
2
|
+
from collections.abc import Iterator
|
|
3
|
+
from email.message import Message
|
|
4
|
+
|
|
5
|
+
__all__ = ["body_line_iterator", "typed_subpart_iterator", "walk"]
|
|
6
|
+
|
|
7
|
+
def body_line_iterator(msg: Message, decode: bool = False) -> Iterator[str]: ...
|
|
8
|
+
def typed_subpart_iterator(msg: Message, maintype: str = "text", subtype: str | None = None) -> Iterator[str]: ...
|
|
9
|
+
def walk(self: Message) -> Iterator[Message]: ...
|
|
10
|
+
|
|
11
|
+
# We include the seemingly private function because it is documented in the stdlib documentation.
|
|
12
|
+
def _structure(msg: Message, fp: SupportsWrite[str] | None = None, level: int = 0, include_default: bool = False) -> None: ...
|
|
@@ -0,0 +1,161 @@
|
|
|
1
|
+
from collections.abc import Generator, Iterator, Sequence
|
|
2
|
+
from email import _ParamsType, _ParamType
|
|
3
|
+
from email.charset import Charset
|
|
4
|
+
from email.contentmanager import ContentManager
|
|
5
|
+
from email.errors import MessageDefect
|
|
6
|
+
from email.header import Header
|
|
7
|
+
from email.policy import Policy
|
|
8
|
+
from typing import Any, Literal, Protocol, TypeVar, overload
|
|
9
|
+
from typing_extensions import Self, TypeAlias
|
|
10
|
+
|
|
11
|
+
__all__ = ["Message", "EmailMessage"]
|
|
12
|
+
|
|
13
|
+
_T = TypeVar("_T")
|
|
14
|
+
_PayloadType: TypeAlias = Message | str
|
|
15
|
+
_EncodedPayloadType: TypeAlias = Message | bytes
|
|
16
|
+
_MultipartPayloadType: TypeAlias = list[_PayloadType]
|
|
17
|
+
_CharsetType: TypeAlias = Charset | str | None
|
|
18
|
+
# Type returned by Policy.header_fetch_parse, AnyOf[str | Header]
|
|
19
|
+
_HeaderType: TypeAlias = Any
|
|
20
|
+
_HeaderTypeParam: TypeAlias = str | Header
|
|
21
|
+
|
|
22
|
+
class _SupportsEncodeToPayload(Protocol):
|
|
23
|
+
def encode(self, __encoding: str) -> _PayloadType | _MultipartPayloadType | _SupportsDecodeToPayload: ...
|
|
24
|
+
|
|
25
|
+
class _SupportsDecodeToPayload(Protocol):
|
|
26
|
+
def decode(self, __encoding: str, __errors: str) -> _PayloadType | _MultipartPayloadType: ...
|
|
27
|
+
|
|
28
|
+
class Message:
|
|
29
|
+
policy: Policy # undocumented
|
|
30
|
+
preamble: str | None
|
|
31
|
+
epilogue: str | None
|
|
32
|
+
defects: list[MessageDefect]
|
|
33
|
+
def is_multipart(self) -> bool: ...
|
|
34
|
+
def set_unixfrom(self, unixfrom: str) -> None: ...
|
|
35
|
+
def get_unixfrom(self) -> str | None: ...
|
|
36
|
+
def attach(self, payload: _PayloadType) -> None: ...
|
|
37
|
+
# `i: int` without a multipart payload results in an error
|
|
38
|
+
# `| Any`: can be None for cleared or unset payload, but annoying to check
|
|
39
|
+
@overload # multipart
|
|
40
|
+
def get_payload(self, i: int, decode: Literal[True]) -> None: ...
|
|
41
|
+
@overload # multipart
|
|
42
|
+
def get_payload(self, i: int, decode: Literal[False] = False) -> _PayloadType | Any: ...
|
|
43
|
+
@overload # either
|
|
44
|
+
def get_payload(self, i: None = None, decode: Literal[False] = False) -> _PayloadType | _MultipartPayloadType | Any: ...
|
|
45
|
+
@overload # not multipart
|
|
46
|
+
def get_payload(self, i: None = None, *, decode: Literal[True]) -> _EncodedPayloadType | Any: ...
|
|
47
|
+
@overload # not multipart, IDEM but w/o kwarg
|
|
48
|
+
def get_payload(self, i: None, decode: Literal[True]) -> _EncodedPayloadType | Any: ...
|
|
49
|
+
# If `charset=None` and payload supports both `encode` AND `decode`, then an invalid payload could be passed, but this is unlikely
|
|
50
|
+
# Not[_SupportsEncodeToPayload]
|
|
51
|
+
@overload
|
|
52
|
+
def set_payload(
|
|
53
|
+
self, payload: _SupportsDecodeToPayload | _PayloadType | _MultipartPayloadType, charset: None = None
|
|
54
|
+
) -> None: ...
|
|
55
|
+
@overload
|
|
56
|
+
def set_payload(
|
|
57
|
+
self,
|
|
58
|
+
payload: _SupportsEncodeToPayload | _SupportsDecodeToPayload | _PayloadType | _MultipartPayloadType,
|
|
59
|
+
charset: Charset | str,
|
|
60
|
+
) -> None: ...
|
|
61
|
+
def set_charset(self, charset: _CharsetType) -> None: ...
|
|
62
|
+
def get_charset(self) -> _CharsetType: ...
|
|
63
|
+
def __len__(self) -> int: ...
|
|
64
|
+
def __contains__(self, name: str) -> bool: ...
|
|
65
|
+
def __iter__(self) -> Iterator[str]: ...
|
|
66
|
+
# Same as `get` with `failobj=None`, but with the expectation that it won't return None in most scenarios
|
|
67
|
+
# This is important for protocols using __getitem__, like SupportsKeysAndGetItem
|
|
68
|
+
# Morally, the return type should be `AnyOf[_HeaderType, None]`,
|
|
69
|
+
# which we could spell as `_HeaderType | Any`,
|
|
70
|
+
# *but* `_HeaderType` itself is currently an alias to `Any`...
|
|
71
|
+
def __getitem__(self, name: str) -> _HeaderType: ...
|
|
72
|
+
def __setitem__(self, name: str, val: _HeaderTypeParam) -> None: ...
|
|
73
|
+
def __delitem__(self, name: str) -> None: ...
|
|
74
|
+
def keys(self) -> list[str]: ...
|
|
75
|
+
def values(self) -> list[_HeaderType]: ...
|
|
76
|
+
def items(self) -> list[tuple[str, _HeaderType]]: ...
|
|
77
|
+
@overload
|
|
78
|
+
def get(self, name: str, failobj: None = None) -> _HeaderType | None: ...
|
|
79
|
+
@overload
|
|
80
|
+
def get(self, name: str, failobj: _T) -> _HeaderType | _T: ...
|
|
81
|
+
@overload
|
|
82
|
+
def get_all(self, name: str, failobj: None = None) -> list[_HeaderType] | None: ...
|
|
83
|
+
@overload
|
|
84
|
+
def get_all(self, name: str, failobj: _T) -> list[_HeaderType] | _T: ...
|
|
85
|
+
def add_header(self, _name: str, _value: str, **_params: _ParamsType) -> None: ...
|
|
86
|
+
def replace_header(self, _name: str, _value: _HeaderTypeParam) -> None: ...
|
|
87
|
+
def get_content_type(self) -> str: ...
|
|
88
|
+
def get_content_maintype(self) -> str: ...
|
|
89
|
+
def get_content_subtype(self) -> str: ...
|
|
90
|
+
def get_default_type(self) -> str: ...
|
|
91
|
+
def set_default_type(self, ctype: str) -> None: ...
|
|
92
|
+
@overload
|
|
93
|
+
def get_params(
|
|
94
|
+
self, failobj: None = None, header: str = "content-type", unquote: bool = True
|
|
95
|
+
) -> list[tuple[str, str]] | None: ...
|
|
96
|
+
@overload
|
|
97
|
+
def get_params(self, failobj: _T, header: str = "content-type", unquote: bool = True) -> list[tuple[str, str]] | _T: ...
|
|
98
|
+
@overload
|
|
99
|
+
def get_param(
|
|
100
|
+
self, param: str, failobj: None = None, header: str = "content-type", unquote: bool = True
|
|
101
|
+
) -> _ParamType | None: ...
|
|
102
|
+
@overload
|
|
103
|
+
def get_param(self, param: str, failobj: _T, header: str = "content-type", unquote: bool = True) -> _ParamType | _T: ...
|
|
104
|
+
def del_param(self, param: str, header: str = "content-type", requote: bool = True) -> None: ...
|
|
105
|
+
def set_type(self, type: str, header: str = "Content-Type", requote: bool = True) -> None: ...
|
|
106
|
+
@overload
|
|
107
|
+
def get_filename(self, failobj: None = None) -> str | None: ...
|
|
108
|
+
@overload
|
|
109
|
+
def get_filename(self, failobj: _T) -> str | _T: ...
|
|
110
|
+
@overload
|
|
111
|
+
def get_boundary(self, failobj: None = None) -> str | None: ...
|
|
112
|
+
@overload
|
|
113
|
+
def get_boundary(self, failobj: _T) -> str | _T: ...
|
|
114
|
+
def set_boundary(self, boundary: str) -> None: ...
|
|
115
|
+
@overload
|
|
116
|
+
def get_content_charset(self) -> str | None: ...
|
|
117
|
+
@overload
|
|
118
|
+
def get_content_charset(self, failobj: _T) -> str | _T: ...
|
|
119
|
+
@overload
|
|
120
|
+
def get_charsets(self, failobj: None = None) -> list[str | None]: ...
|
|
121
|
+
@overload
|
|
122
|
+
def get_charsets(self, failobj: _T) -> list[str | _T]: ...
|
|
123
|
+
def walk(self) -> Generator[Self, None, None]: ...
|
|
124
|
+
def get_content_disposition(self) -> str | None: ...
|
|
125
|
+
def as_string(self, unixfrom: bool = False, maxheaderlen: int = 0, policy: Policy | None = None) -> str: ...
|
|
126
|
+
def as_bytes(self, unixfrom: bool = False, policy: Policy | None = None) -> bytes: ...
|
|
127
|
+
def __bytes__(self) -> bytes: ...
|
|
128
|
+
def set_param(
|
|
129
|
+
self,
|
|
130
|
+
param: str,
|
|
131
|
+
value: str,
|
|
132
|
+
header: str = "Content-Type",
|
|
133
|
+
requote: bool = True,
|
|
134
|
+
charset: str | None = None,
|
|
135
|
+
language: str = "",
|
|
136
|
+
replace: bool = False,
|
|
137
|
+
) -> None: ...
|
|
138
|
+
def __init__(self, policy: Policy = ...) -> None: ...
|
|
139
|
+
# The following two methods are undocumented, but a source code comment states that they are public API
|
|
140
|
+
def set_raw(self, name: str, value: _HeaderTypeParam) -> None: ...
|
|
141
|
+
def raw_items(self) -> Iterator[tuple[str, _HeaderType]]: ...
|
|
142
|
+
|
|
143
|
+
class MIMEPart(Message):
|
|
144
|
+
def __init__(self, policy: Policy | None = None) -> None: ...
|
|
145
|
+
def get_body(self, preferencelist: Sequence[str] = ("related", "html", "plain")) -> Message | None: ...
|
|
146
|
+
def iter_attachments(self) -> Iterator[Message]: ...
|
|
147
|
+
def iter_parts(self) -> Iterator[Message]: ...
|
|
148
|
+
def get_content(self, *args: Any, content_manager: ContentManager | None = None, **kw: Any) -> Any: ...
|
|
149
|
+
def set_content(self, *args: Any, content_manager: ContentManager | None = None, **kw: Any) -> None: ...
|
|
150
|
+
def make_related(self, boundary: str | None = None) -> None: ...
|
|
151
|
+
def make_alternative(self, boundary: str | None = None) -> None: ...
|
|
152
|
+
def make_mixed(self, boundary: str | None = None) -> None: ...
|
|
153
|
+
def add_related(self, *args: Any, content_manager: ContentManager | None = ..., **kw: Any) -> None: ...
|
|
154
|
+
def add_alternative(self, *args: Any, content_manager: ContentManager | None = ..., **kw: Any) -> None: ...
|
|
155
|
+
def add_attachment(self, *args: Any, content_manager: ContentManager | None = ..., **kw: Any) -> None: ...
|
|
156
|
+
def clear(self) -> None: ...
|
|
157
|
+
def clear_content(self) -> None: ...
|
|
158
|
+
def as_string(self, unixfrom: bool = False, maxheaderlen: int | None = None, policy: Policy | None = None) -> str: ...
|
|
159
|
+
def is_attachment(self) -> bool: ...
|
|
160
|
+
|
|
161
|
+
class EmailMessage(MIMEPart): ...
|
|
File without changes
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
from collections.abc import Callable
|
|
2
|
+
from email import _ParamsType
|
|
3
|
+
from email.mime.nonmultipart import MIMENonMultipart
|
|
4
|
+
from email.policy import Policy
|
|
5
|
+
|
|
6
|
+
__all__ = ["MIMEApplication"]
|
|
7
|
+
|
|
8
|
+
class MIMEApplication(MIMENonMultipart):
|
|
9
|
+
def __init__(
|
|
10
|
+
self,
|
|
11
|
+
_data: str | bytes | bytearray,
|
|
12
|
+
_subtype: str = "octet-stream",
|
|
13
|
+
_encoder: Callable[[MIMEApplication], object] = ...,
|
|
14
|
+
*,
|
|
15
|
+
policy: Policy | None = None,
|
|
16
|
+
**_params: _ParamsType,
|
|
17
|
+
) -> None: ...
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
from collections.abc import Callable
|
|
2
|
+
from email import _ParamsType
|
|
3
|
+
from email.mime.nonmultipart import MIMENonMultipart
|
|
4
|
+
from email.policy import Policy
|
|
5
|
+
|
|
6
|
+
__all__ = ["MIMEAudio"]
|
|
7
|
+
|
|
8
|
+
class MIMEAudio(MIMENonMultipart):
|
|
9
|
+
def __init__(
|
|
10
|
+
self,
|
|
11
|
+
_audiodata: str | bytes | bytearray,
|
|
12
|
+
_subtype: str | None = None,
|
|
13
|
+
_encoder: Callable[[MIMEAudio], object] = ...,
|
|
14
|
+
*,
|
|
15
|
+
policy: Policy | None = None,
|
|
16
|
+
**_params: _ParamsType,
|
|
17
|
+
) -> None: ...
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import email.message
|
|
2
|
+
from email import _ParamsType
|
|
3
|
+
from email.policy import Policy
|
|
4
|
+
|
|
5
|
+
__all__ = ["MIMEBase"]
|
|
6
|
+
|
|
7
|
+
class MIMEBase(email.message.Message):
|
|
8
|
+
def __init__(self, _maintype: str, _subtype: str, *, policy: Policy | None = None, **_params: _ParamsType) -> None: ...
|