1
- import abc
2
1
from typing import Any
2
+ from typing import List
3
+ from typing import NoReturn
3
4
from typing import Optional
5
+ from typing import Sequence
6
+ from typing import TypeVar
4
7
5
- from .result import Result as Result
6
- from .result import ResultMetaData as ResultMetaData
7
- from .result import SimpleResultMetaData as SimpleResultMetaData
8
- from .result import tuplegetter as tuplegetter
9
- from .row import LegacyRow as LegacyRow
10
- from .. import exc as exc
11
- from .. import util as util
12
- from ..sql import expression as expression
13
- from ..sql import sqltypes as sqltypes
14
- from ..sql .compiler import RM_NAME as RM_NAME
15
- from ..sql .compiler import RM_OBJECTS as RM_OBJECTS
16
- from ..sql .compiler import RM_RENDERED_NAME as RM_RENDERED_NAME
17
- from ..sql .compiler import RM_TYPE as RM_TYPE
8
+ from .base import Connection
9
+ from .interfaces import _DBAPICursor
10
+ from .interfaces import Dialect
11
+ from .interfaces import ExecutionContext
12
+ from .result import MergedResult
13
+ from .result import Result
14
+ from .result import ResultMetaData
15
+ from .result import Row
16
+ from .row import LegacyRow
17
+
18
+ _TCursorResult = TypeVar ("_TCursorResult" , bound = CursorResult )
18
19
19
20
MD_INDEX : int
20
21
MD_RESULT_MAP_INDEX : int
@@ -26,139 +27,167 @@ MD_UNTRANSLATED: int
26
27
27
28
class CursorResultMetaData (ResultMetaData ):
28
29
returns_rows : bool = ...
29
- case_sensitive : Any = ...
30
- def __init__ (self , parent : Any , cursor_description : Any ) -> None : ...
30
+ case_sensitive : bool = ...
31
+ def __init__ (
32
+ self , parent : BaseCursorResult , cursor_description : Any
33
+ ) -> None : ...
31
34
32
35
class LegacyCursorResultMetaData (CursorResultMetaData ): ...
33
36
34
37
class ResultFetchStrategy :
35
38
alternate_cursor_description : Any = ...
36
- def soft_close (self , result : Any , dbapi_cursor : Any ) -> None : ...
37
- def hard_close (self , result : Any , dbapi_cursor : Any ) -> None : ...
38
- def yield_per (self , result : Any , dbapi_cursor : Any , num : Any ) -> None : ...
39
- def fetchone (
40
- self , result : Any , dbapi_cursor : Any , hard_close : bool = ...
39
+ def soft_close (self , result : Any , dbapi_cursor : _DBAPICursor ) -> None : ...
40
+ def hard_close (self , result : Any , dbapi_cursor : _DBAPICursor ) -> None : ...
41
+ def yield_per (
42
+ self , result : Any , dbapi_cursor : _DBAPICursor , num : int
41
43
) -> None : ...
44
+ def fetchone (
45
+ self , result : Any , dbapi_cursor : _DBAPICursor , hard_close : bool = ...
46
+ ) -> Any : ...
42
47
def fetchmany (
43
- self , result : Any , dbapi_cursor : Any , size : Optional [Any ] = ...
44
- ) -> None : ...
45
- def fetchall (self , result : Any ) -> None : ...
48
+ self ,
49
+ result : Any ,
50
+ dbapi_cursor : _DBAPICursor ,
51
+ size : Optional [Any ] = ...,
52
+ ) -> Sequence [Any ]: ...
53
+ def fetchall (self , result : Any ) -> Sequence [Any ]: ...
46
54
def handle_exception (
47
- self , result : Any , dbapi_cursor : Any , err : Any
55
+ self , result : Any , dbapi_cursor : _DBAPICursor , err : Any
48
56
) -> None : ...
49
57
50
58
class NoCursorFetchStrategy (ResultFetchStrategy ):
51
- def soft_close (self , result : Any , dbapi_cursor : Any ) -> None : ...
52
- def hard_close (self , result : Any , dbapi_cursor : Any ) -> None : ...
59
+ def soft_close (self , result : Any , dbapi_cursor : _DBAPICursor ) -> None : ...
60
+ def hard_close (self , result : Any , dbapi_cursor : _DBAPICursor ) -> None : ...
53
61
def fetchone (
54
- self , result : Any , dbapi_cursor : Any , hard_close : bool = ...
55
- ): ...
62
+ self , result : Any , dbapi_cursor : _DBAPICursor , hard_close : bool = ...
63
+ ) -> Any : ...
56
64
def fetchmany (
57
- self , result : Any , dbapi_cursor : Any , size : Optional [Any ] = ...
58
- ): ...
59
- def fetchall (self , result : Any , dbapi_cursor : Any ): ...
65
+ self ,
66
+ result : Any ,
67
+ dbapi_cursor : _DBAPICursor ,
68
+ size : Optional [Any ] = ...,
69
+ ) -> Sequence [Any ]: ...
70
+ def fetchall (self , result : Any , dbapi_cursor : _DBAPICursor ) -> Sequence [Any ]: ... # type: ignore[override]
60
71
61
72
class NoCursorDQLFetchStrategy (NoCursorFetchStrategy ): ...
62
73
class NoCursorDMLFetchStrategy (NoCursorFetchStrategy ): ...
63
74
64
75
class CursorFetchStrategy (ResultFetchStrategy ):
65
- def soft_close (self , result : Any , dbapi_cursor : Any ) -> None : ...
66
- def hard_close (self , result : Any , dbapi_cursor : Any ) -> None : ...
76
+ def soft_close (self , result : Any , dbapi_cursor : _DBAPICursor ) -> None : ...
77
+ def hard_close (self , result : Any , dbapi_cursor : _DBAPICursor ) -> None : ...
67
78
def handle_exception (
68
- self , result : Any , dbapi_cursor : Any , err : Any
79
+ self , result : Any , dbapi_cursor : _DBAPICursor , err : Any
80
+ ) -> None : ...
81
+ def yield_per (
82
+ self , result : Any , dbapi_cursor : _DBAPICursor , num : int
69
83
) -> None : ...
70
- def yield_per (self , result : Any , dbapi_cursor : Any , num : Any ) -> None : ...
71
84
def fetchone (
72
- self , result : Any , dbapi_cursor : Any , hard_close : bool = ...
73
- ): ...
85
+ self , result : Any , dbapi_cursor : _DBAPICursor , hard_close : bool = ...
86
+ ) -> Any : ...
74
87
def fetchmany (
75
- self , result : Any , dbapi_cursor : Any , size : Optional [Any ] = ...
76
- ): ...
77
- def fetchall (self , result : Any , dbapi_cursor : Any ): ...
88
+ self ,
89
+ result : Any ,
90
+ dbapi_cursor : _DBAPICursor ,
91
+ size : Optional [Any ] = ...,
92
+ ) -> Sequence [Any ]: ...
93
+ def fetchall (self , result : Any , dbapi_cursor : _DBAPICursor ) -> Sequence [Any ]: ... # type: ignore[override]
78
94
79
95
class BufferedRowCursorFetchStrategy (CursorFetchStrategy ):
80
96
def __init__ (
81
97
self ,
82
- dbapi_cursor : Any ,
98
+ dbapi_cursor : _DBAPICursor ,
83
99
execution_options : Any ,
84
100
growth_factor : int = ...,
85
101
initial_buffer : Optional [Any ] = ...,
86
102
) -> None : ...
87
103
@classmethod
88
- def create (cls , result : Any ): ...
89
- def yield_per (self , result : Any , dbapi_cursor : Any , num : Any ) -> None : ...
90
- def soft_close (self , result : Any , dbapi_cursor : Any ) -> None : ...
91
- def hard_close (self , result : Any , dbapi_cursor : Any ) -> None : ...
104
+ def create (cls , result : Any ) -> BufferedRowCursorFetchStrategy : ...
105
+ def yield_per (
106
+ self , result : Any , dbapi_cursor : _DBAPICursor , num : int
107
+ ) -> None : ...
108
+ def soft_close (self , result : Any , dbapi_cursor : _DBAPICursor ) -> None : ...
109
+ def hard_close (self , result : Any , dbapi_cursor : _DBAPICursor ) -> None : ...
92
110
def fetchone (
93
- self , result : Any , dbapi_cursor : Any , hard_close : bool = ...
94
- ): ...
111
+ self , result : Any , dbapi_cursor : _DBAPICursor , hard_close : bool = ...
112
+ ) -> Any : ...
95
113
def fetchmany (
96
- self , result : Any , dbapi_cursor : Any , size : Optional [Any ] = ...
97
- ): ...
98
- def fetchall (self , result : Any , dbapi_cursor : Any ): ...
114
+ self ,
115
+ result : Any ,
116
+ dbapi_cursor : _DBAPICursor ,
117
+ size : Optional [Any ] = ...,
118
+ ) -> Sequence [Any ]: ...
119
+ def fetchall (self , result : Any , dbapi_cursor : _DBAPICursor ) -> Sequence [Any ]: ... # type: ignore[override]
99
120
100
121
class FullyBufferedCursorFetchStrategy (CursorFetchStrategy ):
101
122
alternate_cursor_description : Any = ...
102
123
def __init__ (
103
124
self ,
104
- dbapi_cursor : Any ,
125
+ dbapi_cursor : _DBAPICursor ,
105
126
alternate_description : Optional [Any ] = ...,
106
127
initial_buffer : Optional [Any ] = ...,
107
128
) -> None : ...
108
- def yield_per (self , result : Any , dbapi_cursor : Any , num : Any ) -> None : ...
109
- def soft_close (self , result : Any , dbapi_cursor : Any ) -> None : ...
110
- def hard_close (self , result : Any , dbapi_cursor : Any ) -> None : ...
129
+ def yield_per (
130
+ self , result : Any , dbapi_cursor : _DBAPICursor , num : int
131
+ ) -> None : ...
132
+ def soft_close (self , result : Any , dbapi_cursor : _DBAPICursor ) -> None : ...
133
+ def hard_close (self , result : Any , dbapi_cursor : _DBAPICursor ) -> None : ...
111
134
def fetchone (
112
- self , result : Any , dbapi_cursor : Any , hard_close : bool = ...
113
- ): ...
135
+ self , result : Any , dbapi_cursor : _DBAPICursor , hard_close : bool = ...
136
+ ) -> Any : ...
114
137
def fetchmany (
115
- self , result : Any , dbapi_cursor : Any , size : Optional [Any ] = ...
116
- ): ...
117
- def fetchall (self , result : Any , dbapi_cursor : Any ): ...
138
+ self ,
139
+ result : Any ,
140
+ dbapi_cursor : _DBAPICursor ,
141
+ size : Optional [Any ] = ...,
142
+ ) -> Sequence [Any ]: ...
143
+ def fetchall (self , result : Any , dbapi_cursor : _DBAPICursor ) -> Sequence [Any ]: ... # type: ignore[override]
118
144
119
145
class _NoResultMetaData (ResultMetaData ):
120
146
returns_rows : bool = ...
121
147
@property
122
- def keys (self ) -> None : ...
148
+ def keys (self ) -> NoReturn : ...
123
149
124
150
class BaseCursorResult :
125
151
out_parameters : Any = ...
126
152
closed : bool = ...
127
- context : Any = ...
128
- dialect : Any = ...
153
+ context : ExecutionContext = ...
154
+ dialect : Dialect = ...
129
155
cursor : Any = ...
130
- cursor_strategy : Any = ...
131
- connection : Any = ...
156
+ cursor_strategy : CursorFetchStrategy = ...
157
+ connection : Connection = ...
132
158
def __init__ (
133
- self , context : Any , cursor_strategy : Any , cursor_description : Any
159
+ self ,
160
+ context : ExecutionContext ,
161
+ cursor_strategy : CursorFetchStrategy ,
162
+ cursor_description : Any ,
134
163
): ...
135
164
@property
136
- def inserted_primary_key_rows (self ): ...
165
+ def inserted_primary_key_rows (self ) -> Any : ...
137
166
@property
138
- def inserted_primary_key (self ): ...
139
- def last_updated_params (self ): ...
140
- def last_inserted_params (self ): ...
167
+ def inserted_primary_key (self ) -> Row : ...
168
+ def last_updated_params (self ) -> Any : ...
169
+ def last_inserted_params (self ) -> Any : ...
141
170
@property
142
- def returned_defaults_rows (self ): ...
171
+ def returned_defaults_rows (self ) -> List [ Row ] : ...
143
172
@property
144
- def returned_defaults (self ): ...
145
- def lastrow_has_defaults (self ): ...
146
- def postfetch_cols (self ): ...
147
- def prefetch_cols (self ): ...
148
- def supports_sane_rowcount (self ): ...
149
- def supports_sane_multi_rowcount (self ): ...
150
- def rowcount (self ): ...
173
+ def returned_defaults (self ) -> Optional [ Row ] : ...
174
+ def lastrow_has_defaults (self ) -> bool : ...
175
+ def postfetch_cols (self ) -> bool : ...
176
+ def prefetch_cols (self ) -> bool : ...
177
+ def supports_sane_rowcount (self ) -> bool : ...
178
+ def supports_sane_multi_rowcount (self ) -> bool : ...
179
+ def rowcount (self ) -> int : ...
151
180
@property
152
- def lastrowid (self ): ...
181
+ def lastrowid (self ) -> Any : ...
153
182
@property
154
- def returns_rows (self ): ...
183
+ def returns_rows (self ) -> bool : ...
155
184
@property
156
- def is_insert (self ): ...
185
+ def is_insert (self ) -> bool : ...
157
186
158
187
class CursorResult (BaseCursorResult , Result ):
159
- def merge (self , * others : Any ): ...
188
+ def merge (self , * others : Any ) -> MergedResult : ...
160
189
def close (self ) -> None : ...
161
- def yield_per (self , num : Any ) -> None : ...
190
+ def yield_per (self : _TCursorResult , num : Any ) -> _TCursorResult : ...
162
191
163
192
class LegacyCursorResult (CursorResult ):
164
193
def close (self ) -> None : ...
@@ -167,5 +196,5 @@ ResultProxy = LegacyCursorResult
167
196
168
197
class BufferedRowResultProxy (ResultProxy ): ...
169
198
class FullyBufferedResultProxy (ResultProxy ): ...
170
- class BufferedColumnRow (LegacyRow , metaclass = abc . ABCMeta ): ...
199
+ class BufferedColumnRow (LegacyRow ): ...
171
200
class BufferedColumnResultProxy (ResultProxy ): ...
0 commit comments