1
1
from __future__ import annotations
2
2
3
3
from typing import Any
4
- from typing import Iterable
4
+ from typing import Sequence
5
5
6
6
from django .db .backends .base .base import BaseDatabaseWrapper
7
7
from django .db .models import F
8
8
from django .db .models import Value
9
9
from django .db .models .expressions import BaseExpression
10
+ from django .db .models .expressions import Combinable
11
+ from django .db .models .expressions import Expression
10
12
from django .db .models .sql .compiler import SQLCompiler
11
13
12
14
from django_mysql .utils import collapse_spaces
@@ -18,10 +20,10 @@ def __init__(self, lhs: BaseExpression, rhs: BaseExpression) -> None:
18
20
self .lhs = lhs
19
21
self .rhs = rhs
20
22
21
- def get_source_expressions (self ) -> list [BaseExpression ]:
23
+ def get_source_expressions (self ) -> list [Expression ]:
22
24
return [self .lhs , self .rhs ]
23
25
24
- def set_source_expressions (self , exprs : Iterable [ BaseExpression ]) -> None :
26
+ def set_source_expressions (self , exprs : Sequence [ Combinable | Expression ]) -> None :
25
27
self .lhs , self .rhs = exprs
26
28
27
29
@@ -138,10 +140,10 @@ def __init__(self, lhs: BaseExpression) -> None:
138
140
super ().__init__ ()
139
141
self .lhs = lhs
140
142
141
- def get_source_expressions (self ) -> list [BaseExpression ]:
143
+ def get_source_expressions (self ) -> list [Expression ]:
142
144
return [self .lhs ]
143
145
144
- def set_source_expressions (self , exprs : Iterable [ BaseExpression ]) -> None :
146
+ def set_source_expressions (self , exprs : Sequence [ Combinable | Expression ]) -> None :
145
147
(self .lhs ,) = exprs
146
148
147
149
def as_sql (
@@ -170,10 +172,10 @@ def __init__(self, lhs: BaseExpression) -> None:
170
172
super ().__init__ ()
171
173
self .lhs = lhs
172
174
173
- def get_source_expressions (self ) -> list [BaseExpression ]:
175
+ def get_source_expressions (self ) -> list [Expression ]:
174
176
return [self .lhs ]
175
177
176
- def set_source_expressions (self , exprs : Iterable [ BaseExpression ]) -> None :
178
+ def set_source_expressions (self , exprs : Sequence [ Combinable | Expression ]) -> None :
177
179
(self .lhs ,) = exprs
178
180
179
181
def as_sql (
0 commit comments