1
1
part of query;
2
2
3
3
/// Adds capabilities to set query parameters
4
- extension QuerySetParam < EntityT > on Query < EntityT > {
4
+ extension QuerySetParam on Query {
5
5
/// Allows overwriting a query condition value, making queries reusable.
6
6
///
7
7
/// Example for a property that's used only once in a query (no alias needed):
@@ -35,18 +35,24 @@ extension QuerySetParam<EntityT> on Query<EntityT> {
35
35
/// ..param(Person_.name, alias: 'end').value = 'b';
36
36
/// final people = app.query.find();
37
37
/// ```
38
- QueryParam <DartType > param <DartType >(QueryProperty <EntityT , DartType > prop,
38
+ QueryParam <DartType > param <EntityT , DartType >(
39
+ QueryProperty <EntityT , DartType > prop,
39
40
{String ? alias}) =>
40
- QueryParam ._(this , prop, alias);
41
+ QueryParam ._(
42
+ this ,
43
+ InternalStoreAccess .entityDef <EntityT >(_store).model.id.id,
44
+ prop,
45
+ alias);
41
46
}
42
47
43
48
/// QueryParam
44
49
class QueryParam <DartType > {
45
50
final Query _query;
51
+ final int _entityId;
46
52
final QueryProperty _prop;
47
53
final String ? _alias;
48
54
49
- QueryParam ._(this ._query, this ._prop, this ._alias);
55
+ QueryParam ._(this ._query, this ._entityId, this . _prop, this ._alias);
50
56
}
51
57
52
58
/// QueryParam for string properties
@@ -56,7 +62,7 @@ extension QueryParamString on QueryParam<String> {
56
62
withNativeString (
57
63
value,
58
64
(Pointer <Int8 > cStr) => checkObx (C .query_param_string (
59
- _query._ptr, _query.entityId , _prop._model.id.id, cStr)));
65
+ _query._ptr, _entityId , _prop._model.id.id, cStr)));
60
66
} else {
61
67
withNativeStrings (
62
68
[_alias! , value],
@@ -69,7 +75,7 @@ extension QueryParamString on QueryParam<String> {
69
75
values,
70
76
(Pointer <Pointer <Int8 >> ptr, int size) => checkObx ((_alias == null )
71
77
? C .query_param_strings (
72
- _query._ptr, _query.entityId , _prop._model.id.id, ptr, size)
78
+ _query._ptr, _entityId , _prop._model.id.id, ptr, size)
73
79
: withNativeString (
74
80
_alias! ,
75
81
(Pointer <Int8 > cAlias) => C .query_param_alias_strings (
@@ -82,7 +88,7 @@ extension QueryParamBytes on QueryParam<List<int>> {
82
88
Uint8List .fromList (value),
83
89
(Pointer <Uint8 > ptr, int size) => checkObx ((_alias == null )
84
90
? C .query_param_bytes (
85
- _query._ptr, _query.entityId , _prop._model.id.id, ptr, size)
91
+ _query._ptr, _entityId , _prop._model.id.id, ptr, size)
86
92
: withNativeString (
87
93
_alias! ,
88
94
(Pointer <Int8 > cAlias) =>
@@ -92,8 +98,7 @@ extension QueryParamBytes on QueryParam<List<int>> {
92
98
/// QueryParam for int properties
93
99
extension QueryParamInt on QueryParam <int > {
94
100
set value (int value) => checkObx ((_alias == null )
95
- ? C .query_param_int (
96
- _query._ptr, _query.entityId, _prop._model.id.id, value)
101
+ ? C .query_param_int (_query._ptr, _entityId, _prop._model.id.id, value)
97
102
: withNativeString (
98
103
_alias! ,
99
104
(Pointer <Int8 > cAlias) =>
@@ -113,10 +118,10 @@ extension QueryParamInt on QueryParam<int> {
113
118
}
114
119
if (_alias == null ) {
115
120
checkObx (is64bit
116
- ? C .query_param_int64s (_query._ptr, _query.entityId ,
117
- _prop._model.id.id, ptr as Pointer <Int64 >, values.length)
118
- : C .query_param_int32s (_query._ptr, _query.entityId ,
119
- _prop._model.id.id, ptr as Pointer <Int32 >, values.length));
121
+ ? C .query_param_int64s (_query._ptr, _entityId, _prop._model.id.id ,
122
+ ptr as Pointer <Int64 >, values.length)
123
+ : C .query_param_int32s (_query._ptr, _entityId, _prop._model.id.id ,
124
+ ptr as Pointer <Int32 >, values.length));
120
125
} else {
121
126
withNativeString (
122
127
_alias! ,
@@ -133,8 +138,7 @@ extension QueryParamInt on QueryParam<int> {
133
138
134
139
/// set values for condition consisting of two values
135
140
void twoValues (int a, int b) => checkObx ((_alias == null )
136
- ? C .query_param_2ints (
137
- _query._ptr, _query.entityId, _prop._model.id.id, a, b)
141
+ ? C .query_param_2ints (_query._ptr, _entityId, _prop._model.id.id, a, b)
138
142
: withNativeString (
139
143
_alias! ,
140
144
(Pointer <Int8 > cAlias) =>
@@ -144,17 +148,15 @@ extension QueryParamInt on QueryParam<int> {
144
148
/// QueryParam for double properties
145
149
extension QueryParamDouble on QueryParam <double > {
146
150
set value (double value) => checkObx ((_alias == null )
147
- ? C .query_param_double (
148
- _query._ptr, _query.entityId, _prop._model.id.id, value)
151
+ ? C .query_param_double (_query._ptr, _entityId, _prop._model.id.id, value)
149
152
: withNativeString (
150
153
_alias! ,
151
154
(Pointer <Int8 > cAlias) =>
152
155
C .query_param_alias_double (_query._ptr, cAlias, value)));
153
156
154
157
/// set values for condition consisting of two values
155
158
void twoValues (double a, double b) => checkObx ((_alias == null )
156
- ? C .query_param_2doubles (
157
- _query._ptr, _query.entityId, _prop._model.id.id, a, b)
159
+ ? C .query_param_2doubles (_query._ptr, _entityId, _prop._model.id.id, a, b)
158
160
: withNativeString (
159
161
_alias! ,
160
162
(Pointer <Int8 > cAlias) =>
@@ -165,7 +167,7 @@ extension QueryParamDouble on QueryParam<double> {
165
167
extension QueryParamBool on QueryParam <bool > {
166
168
set value (bool value) => checkObx ((_alias == null )
167
169
? C .query_param_int (
168
- _query._ptr, _query.entityId , _prop._model.id.id, value ? 1 : 0 )
170
+ _query._ptr, _entityId , _prop._model.id.id, value ? 1 : 0 )
169
171
: withNativeString (
170
172
_alias! ,
171
173
(Pointer <Int8 > cAlias) =>
0 commit comments