@@ -9,6 +9,7 @@ from .selectable import TableClause as TableClause
99from .type_api import TypeEngine
1010from .. import util
1111from ..engine import Engine , Connection , Connectable
12+ from ..engine .url import URL
1213from .compiler import DDLCompiler
1314import threading
1415
@@ -298,18 +299,25 @@ class Index(DialectKWArgs, ColumnCollectionMixin, SchemaItem):
298299
299300DEFAULT_NAMING_CONVENTION : util .immutabledict [str , str ] = ...
300301
302+ class _MetaDataBind :
303+ @overload
304+ def __get__ (self , instance : None , owner : Any ) -> None : ...
305+ @overload
306+ def __get__ (self , instance : MetaData , owner : Any ) -> Optional [Union [Engine , Connection ]]: ...
307+ def __set__ (self , instance : Any , value : Optional [Union [Engine , Connection , str , URL ]]) -> None : ...
308+
301309class MetaData (SchemaItem ):
302310 __visit_name__ : str = ...
303311 tables : util .immutabledict [str , Table ] = ...
304312 schema : Optional [str ] = ...
305313 naming_convention : Mapping [Union [str , Index , Constraint ], str ] = ...
306314 info : Optional [Mapping [str , Any ]] = ...
315+ bind : _MetaDataBind = ...
307316 def __init__ (self , bind : Optional [Union [Engine , Connection ]] = ..., reflect : bool = ..., schema : Optional [str ] = ...,
308317 quote_schema : Optional [bool ] = ..., naming_convention : Mapping [Union [str , Index , Constraint ], str ] = ...,
309318 info : Optional [Mapping [str , Any ]] = ...) -> None : ...
310319 def __contains__ (self , table_or_key : Union [str , Table ]) -> bool : ...
311320 def is_bound (self ) -> bool : ...
312- def bind (self ) -> Optional [Union [Engine , Connection ]]: ...
313321 def clear (self ) -> None : ...
314322 def remove (self , table : Table ) -> None : ...
315323 @property
@@ -326,7 +334,7 @@ class MetaData(SchemaItem):
326334class ThreadLocalMetaData (MetaData ):
327335 __visit_name__ : str = ...
328336 context : threading .local = ...
337+ bind : _MetaDataBind = ...
329338 def __init__ (self ) -> None : ...
330- def bind (self ) -> Optional [Union [Engine , Connection ]]: ...
331339 def is_bound (self ) -> bool : ...
332340 def dispose (self ) -> None : ...
0 commit comments