You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

172 lines
6.1KB

  1. # util/__init__.py
  2. # Copyright (C) 2005-2021 the SQLAlchemy authors and contributors
  3. # <see AUTHORS file>
  4. #
  5. # This module is part of SQLAlchemy and is released under
  6. # the MIT License: http://www.opensource.org/licenses/mit-license.php
  7. from collections import defaultdict
  8. from contextlib import contextmanager
  9. from functools import partial
  10. from functools import update_wrapper
  11. from ._collections import coerce_generator_arg
  12. from ._collections import coerce_to_immutabledict
  13. from ._collections import collections_abc
  14. from ._collections import column_dict
  15. from ._collections import column_set
  16. from ._collections import EMPTY_DICT
  17. from ._collections import EMPTY_SET
  18. from ._collections import FacadeDict
  19. from ._collections import flatten_iterator
  20. from ._collections import has_dupes
  21. from ._collections import has_intersection
  22. from ._collections import IdentitySet
  23. from ._collections import ImmutableContainer
  24. from ._collections import immutabledict
  25. from ._collections import ImmutableProperties
  26. from ._collections import LRUCache
  27. from ._collections import ordered_column_set
  28. from ._collections import OrderedDict
  29. from ._collections import OrderedIdentitySet
  30. from ._collections import OrderedProperties
  31. from ._collections import OrderedSet
  32. from ._collections import PopulateDict
  33. from ._collections import Properties
  34. from ._collections import ScopedRegistry
  35. from ._collections import sort_dictionary
  36. from ._collections import ThreadLocalRegistry
  37. from ._collections import to_column_set
  38. from ._collections import to_list
  39. from ._collections import to_set
  40. from ._collections import unique_list
  41. from ._collections import UniqueAppender
  42. from ._collections import update_copy
  43. from ._collections import WeakPopulateDict
  44. from ._collections import WeakSequence
  45. from ._preloaded import preload_module
  46. from ._preloaded import preloaded
  47. from .compat import ABC
  48. from .compat import arm
  49. from .compat import b
  50. from .compat import b64decode
  51. from .compat import b64encode
  52. from .compat import binary_type
  53. from .compat import byte_buffer
  54. from .compat import callable
  55. from .compat import cmp
  56. from .compat import cpython
  57. from .compat import dataclass_fields
  58. from .compat import decode_backslashreplace
  59. from .compat import dottedgetter
  60. from .compat import has_refcount_gc
  61. from .compat import inspect_getfullargspec
  62. from .compat import int_types
  63. from .compat import iterbytes
  64. from .compat import itertools_filter
  65. from .compat import itertools_filterfalse
  66. from .compat import local_dataclass_fields
  67. from .compat import namedtuple
  68. from .compat import next
  69. from .compat import nullcontext
  70. from .compat import osx
  71. from .compat import parse_qsl
  72. from .compat import perf_counter
  73. from .compat import pickle
  74. from .compat import print_
  75. from .compat import py2k
  76. from .compat import py37
  77. from .compat import py3k
  78. from .compat import pypy
  79. from .compat import quote_plus
  80. from .compat import raise_
  81. from .compat import raise_from_cause
  82. from .compat import reduce
  83. from .compat import reraise
  84. from .compat import string_types
  85. from .compat import StringIO
  86. from .compat import text_type
  87. from .compat import threading
  88. from .compat import timezone
  89. from .compat import TYPE_CHECKING
  90. from .compat import u
  91. from .compat import ue
  92. from .compat import unquote
  93. from .compat import unquote_plus
  94. from .compat import win32
  95. from .compat import with_metaclass
  96. from .compat import zip_longest
  97. from .concurrency import asyncio
  98. from .concurrency import await_fallback
  99. from .concurrency import await_only
  100. from .concurrency import greenlet_spawn
  101. from .concurrency import is_exit_exception
  102. from .deprecations import deprecated
  103. from .deprecations import deprecated_20
  104. from .deprecations import deprecated_20_cls
  105. from .deprecations import deprecated_cls
  106. from .deprecations import deprecated_params
  107. from .deprecations import inject_docstring_text
  108. from .deprecations import moved_20
  109. from .deprecations import SQLALCHEMY_WARN_20
  110. from .deprecations import warn_deprecated
  111. from .deprecations import warn_deprecated_20
  112. from .langhelpers import add_parameter_text
  113. from .langhelpers import as_interface
  114. from .langhelpers import asbool
  115. from .langhelpers import asint
  116. from .langhelpers import assert_arg_type
  117. from .langhelpers import attrsetter
  118. from .langhelpers import bool_or_str
  119. from .langhelpers import chop_traceback
  120. from .langhelpers import class_hierarchy
  121. from .langhelpers import classproperty
  122. from .langhelpers import clsname_as_plain_name
  123. from .langhelpers import coerce_kw_type
  124. from .langhelpers import constructor_copy
  125. from .langhelpers import constructor_key
  126. from .langhelpers import counter
  127. from .langhelpers import create_proxy_methods
  128. from .langhelpers import decode_slice
  129. from .langhelpers import decorator
  130. from .langhelpers import dictlike_iteritems
  131. from .langhelpers import duck_type_collection
  132. from .langhelpers import ellipses_string
  133. from .langhelpers import EnsureKWArgType
  134. from .langhelpers import format_argspec_init
  135. from .langhelpers import format_argspec_plus
  136. from .langhelpers import generic_repr
  137. from .langhelpers import get_callable_argspec
  138. from .langhelpers import get_cls_kwargs
  139. from .langhelpers import get_func_kwargs
  140. from .langhelpers import getargspec_init
  141. from .langhelpers import has_compiled_ext
  142. from .langhelpers import HasMemoized
  143. from .langhelpers import hybridmethod
  144. from .langhelpers import hybridproperty
  145. from .langhelpers import iterate_attributes
  146. from .langhelpers import map_bits
  147. from .langhelpers import md5_hex
  148. from .langhelpers import memoized_instancemethod
  149. from .langhelpers import memoized_property
  150. from .langhelpers import MemoizedSlots
  151. from .langhelpers import method_is_overridden
  152. from .langhelpers import methods_equivalent
  153. from .langhelpers import monkeypatch_proxied_specials
  154. from .langhelpers import NoneType
  155. from .langhelpers import only_once
  156. from .langhelpers import PluginLoader
  157. from .langhelpers import portable_instancemethod
  158. from .langhelpers import quoted_token_parser
  159. from .langhelpers import safe_reraise
  160. from .langhelpers import set_creation_order
  161. from .langhelpers import string_or_unprintable
  162. from .langhelpers import symbol
  163. from .langhelpers import unbound_method_to_callable
  164. from .langhelpers import walk_subclasses
  165. from .langhelpers import warn
  166. from .langhelpers import warn_exception
  167. from .langhelpers import warn_limited
  168. from .langhelpers import wrap_callable