|
1 | 1 | from typing import Any
|
2 |
| -from typing import Int |
3 | 2 | from typing import Iterator
|
4 | 3 | from typing import List
|
5 | 4 | from typing import Mapping
|
6 | 5 | from typing import Optional
|
| 6 | +from typing import TypeVar |
7 | 7 |
|
8 |
| -from ... import util as util |
9 |
| -from ...engine.result import FilterResult as FilterResult |
10 |
| -from ...engine.result import FrozenResult as FrozenResult |
11 |
| -from ...engine.result import MergedResult as MergedResult |
12 |
| -from ...engine.result import Row as Row |
13 |
| -from ...util.concurrency import greenlet_spawn as greenlet_spawn |
| 8 | +from ...engine.result import FilterResult |
| 9 | +from ...engine.result import FrozenResult |
| 10 | +from ...engine.result import MergedResult |
| 11 | +from ...engine.result import Result |
| 12 | +from ...engine.result import RMKeyView |
| 13 | +from ...engine.result import Row |
| 14 | + |
| 15 | +_TAsyncResult = TypeVar("_TAsyncResult", bound=AsyncResult) |
| 16 | +_TAsyncScalarResult = TypeVar("_TAsyncScalarResult", bound=AsyncScalarResult) |
| 17 | +_TAsyncMappingResult = TypeVar( |
| 18 | + "_TAsyncMappingResult", bound=AsyncMappingResult |
| 19 | +) |
14 | 20 |
|
15 | 21 | class AsyncCommon(FilterResult):
|
16 | 22 | async def close(self) -> None: ...
|
17 | 23 |
|
18 | 24 | class AsyncResult(AsyncCommon):
|
19 |
| - def __init__(self, real_result: Any) -> None: ... |
20 |
| - def keys(self): ... |
21 |
| - def unique(self, strategy: Optional[Any] = ...): ... |
22 |
| - def columns(self, *col_expressions: object) -> AsyncResult: ... |
| 25 | + def __init__(self, real_result: Result) -> None: ... |
| 26 | + def keys(self) -> RMKeyView: ... |
| 27 | + def unique( |
| 28 | + self: _TAsyncResult, strategy: Optional[Any] = ... |
| 29 | + ) -> _TAsyncResult: ... |
| 30 | + def columns( |
| 31 | + self: _TAsyncResult, *col_expressions: Any |
| 32 | + ) -> _TAsyncResult: ... |
23 | 33 | async def partitions(
|
24 |
| - self, size: Optional[Int] = ... |
| 34 | + self, size: Optional[int] = ... |
25 | 35 | ) -> Iterator[List[Any]]: ...
|
26 |
| - async def fetchone(self) -> Row: ... |
27 |
| - async def fetchmany(self, size: Optional[Int] = ...) -> List[Row]: ... |
| 36 | + async def fetchone(self) -> Optional[Row]: ... |
| 37 | + async def fetchmany(self, size: Optional[int] = ...) -> List[Row]: ... |
28 | 38 | async def all(self) -> List[Row]: ...
|
29 |
| - def __aiter__(self): ... |
30 |
| - async def __anext__(self): ... |
31 |
| - async def first(self) -> Row: ... |
| 39 | + def __aiter__(self: _TAsyncResult) -> _TAsyncResult: ... |
| 40 | + async def __anext__(self) -> Row: ... |
| 41 | + async def first(self) -> Optional[Row]: ... |
32 | 42 | async def one_or_none(self) -> Optional[Row]: ...
|
33 | 43 | async def scalar_one(self) -> Any: ...
|
34 | 44 | async def scalar_one_or_none(self) -> Optional[Any]: ...
|
35 | 45 | async def one(self) -> Row: ...
|
36 | 46 | async def scalar(self) -> Optional[Any]: ...
|
37 |
| - async def freeze(self): ... |
38 |
| - def merge(self, *others: Any): ... |
39 |
| - def scalars(self, index: Int = ...) -> AsyncScalarResult: ... |
40 |
| - def mappings(self): ... |
| 47 | + async def freeze(self) -> FrozenResult: ... |
| 48 | + def merge(self, *others: Any) -> MergedResult: ... |
| 49 | + def scalars(self, index: int = ...) -> AsyncScalarResult: ... |
| 50 | + def mappings(self) -> AsyncMappingResult: ... |
41 | 51 |
|
42 | 52 | class AsyncScalarResult(AsyncCommon):
|
43 |
| - def __init__(self, real_result: Any, index: Any) -> None: ... |
44 |
| - def unique(self, strategy: Optional[Any] = ...): ... |
| 53 | + def __init__(self, real_result: AsyncResult, index: Any) -> None: ... |
| 54 | + def unique( |
| 55 | + self: _TAsyncScalarResult, strategy: Optional[Any] = ... |
| 56 | + ) -> _TAsyncScalarResult: ... |
45 | 57 | async def partitions(
|
46 |
| - self, size: Optional[Int] = ... |
| 58 | + self, size: Optional[int] = ... |
47 | 59 | ) -> Iterator[List[Any]]: ...
|
48 | 60 | async def fetchall(self) -> List[Any]: ...
|
49 |
| - async def fetchmany(self, size: Optional[Int] = ...) -> List[Any]: ... |
| 61 | + async def fetchmany(self, size: Optional[int] = ...) -> List[Any]: ... |
50 | 62 | async def all(self) -> List[Any]: ...
|
51 |
| - def __aiter__(self): ... |
52 |
| - async def __anext__(self): ... |
| 63 | + def __aiter__(self: _TAsyncScalarResult) -> _TAsyncScalarResult: ... |
| 64 | + async def __anext__(self) -> Any: ... |
53 | 65 | async def first(self) -> Optional[Any]: ...
|
54 | 66 | async def one_or_none(self) -> Optional[Any]: ...
|
55 | 67 | async def one(self) -> Any: ...
|
56 | 68 |
|
57 | 69 | class AsyncMappingResult(AsyncCommon):
|
58 |
| - def __init__(self, result: Any) -> None: ... |
59 |
| - def keys(self): ... |
60 |
| - def unique(self, strategy: Optional[Any] = ...): ... |
61 |
| - def columns(self, *col_expressions: object) -> AsyncMappingResult: ... |
| 70 | + def __init__(self, result: AsyncResult) -> None: ... |
| 71 | + def keys(self) -> RMKeyView: ... |
| 72 | + def unique( |
| 73 | + self: _TAsyncMappingResult, strategy: Optional[Any] = ... |
| 74 | + ) -> _TAsyncMappingResult: ... |
| 75 | + def columns( |
| 76 | + self: _TAsyncMappingResult, *col_expressions: Any |
| 77 | + ) -> _TAsyncMappingResult: ... |
62 | 78 | async def partitions(
|
63 |
| - self, size: Optional[Int] = ... |
64 |
| - ) -> Iterator[List[Mapping]]: ... |
65 |
| - async def fetchall(self) -> List[Mapping]: ... |
66 |
| - async def fetchone(self) -> Mapping: ... |
67 |
| - async def fetchmany(self, size: Optional[Int] = ...) -> List[Mapping]: ... |
68 |
| - async def all(self) -> List[Mapping]: ... |
69 |
| - def __aiter__(self): ... |
70 |
| - async def __anext__(self): ... |
71 |
| - async def first(self) -> Optional[Mapping]: ... |
72 |
| - async def one_or_none(self) -> Optional[Mapping]: ... |
73 |
| - async def one(self) -> Mapping: ... |
| 79 | + self, size: Optional[int] = ... |
| 80 | + ) -> Iterator[List[Mapping[Any, Any]]]: ... |
| 81 | + async def fetchall(self) -> List[Mapping[Any, Any]]: ... |
| 82 | + async def fetchone(self) -> Optional[Mapping[Any, Any]]: ... |
| 83 | + async def fetchmany( |
| 84 | + self, size: Optional[int] = ... |
| 85 | + ) -> List[Mapping[Any, Any]]: ... |
| 86 | + async def all(self) -> List[Mapping[Any, Any]]: ... |
| 87 | + def __aiter__(self: _TAsyncMappingResult) -> _TAsyncMappingResult: ... |
| 88 | + async def __anext__(self) -> Mapping[Any, Any]: ... |
| 89 | + async def first(self) -> Optional[Mapping[Any, Any]]: ... |
| 90 | + async def one_or_none(self) -> Optional[Mapping[Any, Any]]: ... |
| 91 | + async def one(self) -> Mapping[Any, Any]: ... |
0 commit comments