3
3
// BSD-style license that can be found in the LICENSE file.
4
4
5
5
untypedMap (Map map) {
6
- var a = /*type=Map<dynamic, dynamic>*/ switch (map) {
7
- {} /*space={}*/ => 0 ,
8
- {1 : _} /*space={1: ()}*/ => 1 ,
6
+ var a = /*
7
+ fields={isEmpty:bool},
8
+ type=Map<dynamic, dynamic>
9
+ */
10
+ switch (map) {
11
+ Map (isEmpty: true ) /*space=Map<dynamic, dynamic>(isEmpty: true)*/ => 0 ,
12
+ {1 : _, 2 : _, 3 : _} /*space={1: (), 2: (), 3: ()}*/ => 3 ,
9
13
{1 : _, 2 : _} /*space={1: (), 2: ()}*/ => 2 ,
10
- Map () /*space={...}*/ => 3 ,
14
+ {1 : _} /*space={1: ()}*/ => 1 ,
15
+ Map () /*space=Map<dynamic, dynamic>*/ => 4 ,
11
16
};
12
17
var b = /*type=Map<dynamic, dynamic>*/ switch (map) {
13
- Map () /*space={...} */ => 0 ,
18
+ Map () /*space=Map<dynamic, dynamic> */ => 0 ,
14
19
};
15
20
}
16
21
@@ -22,30 +27,36 @@ class C extends A {}
22
27
23
28
typedMap (Map <int , A > map) {
24
29
var a = /*
25
- error=non-exhaustive:Map<int, A>(),
30
+ error=non-exhaustive:Map<int, A>(isEmpty: false),
31
+ fields={isEmpty:bool},
26
32
type=Map<int, A>
27
33
*/
28
34
switch (map) {
29
- {} /*space={}*/ => 0 ,
35
+ Map (isEmpty: true ) /*space=Map<int, A>(isEmpty: true)*/ => 0 ,
36
+ {0 : B b, 1 : _} /*space={0: B, 1: A}*/ => 4 ,
37
+ {0 : C c, 1 : _} /*space={0: C, 1: A}*/ => 5 ,
38
+ {0 : _, 1 : _} /*
39
+ error=unreachable,
40
+ space={0: A, 1: A}
41
+ */
42
+ =>
43
+ 3 ,
30
44
{0 : B b} /*space={0: B}*/ => 1 ,
31
45
{0 : C c} /*space={0: C}*/ => 2 ,
32
- {0 : _, 1 : _} /*space={0: A, 1: A}*/ => 3 ,
33
- {0 : B b} /*space={0: B, ...}*/ => 4 ,
34
- {0 : C c} /*space={0: C, ...}*/ => 5 ,
35
46
};
36
47
37
48
var b = /*type=Map<int, A>*/ switch (map) {
38
- {...} /*space={...} */ => 0 ,
49
+ Map () /*space=Map<int, A> */ => 0 ,
39
50
};
40
51
var c = /*
41
52
error=non-exhaustive:Map<int, A>(),
42
53
type=Map<int, A>
43
54
*/
44
55
switch (map) {
45
- Map <int , B >() /*space=<int, B>{...} */ => 0 ,
56
+ Map <int , B >() /*space=Map <int, B>*/ => 0 ,
46
57
};
47
58
var d = /*type=Map<int, B>*/ switch (map) {
48
- Map () /*space={...} */ => 0 ,
59
+ Map () /*space=Map<int, B> */ => 0 ,
49
60
{1 : _} /*
50
61
error=unreachable,
51
62
space={1: B}
@@ -54,7 +65,7 @@ typedMap(Map<int, A> map) {
54
65
1 ,
55
66
{2 : _} /*
56
67
error=unreachable,
57
- space={2: B, ... }
68
+ space={2: B}
58
69
*/
59
70
=>
60
71
2 ,
@@ -63,13 +74,13 @@ typedMap(Map<int, A> map) {
63
74
64
75
exhaustiveRestOnly (Map o) {
65
76
return /*type=Map<dynamic, dynamic>*/ switch (o) {
66
- Map () /*space={...} */ => 0 ,
77
+ Map () /*space=Map<dynamic, dynamic> */ => 0 ,
67
78
};
68
79
}
69
80
70
81
unreachableAfterRestOnly (Map o) {
71
82
return /*type=Map<dynamic, dynamic>*/ switch (o) {
72
- Map () /*space={...} */ => 0 ,
83
+ Map () /*space=Map<dynamic, dynamic> */ => 0 ,
73
84
{0 : _} /*
74
85
error=unreachable,
75
86
space={0: ()}
@@ -81,7 +92,7 @@ unreachableAfterRestOnly(Map o) {
81
92
82
93
unreachableAfterRestOnlyTyped (Map o) {
83
94
return /*type=Map<dynamic, dynamic>*/ switch (o) {
84
- Map () /*space={...} */ => 0 ,
95
+ Map () /*space=Map<dynamic, dynamic> */ => 0 ,
85
96
< int , String > {
86
97
0 : _
87
98
} /*
@@ -94,11 +105,17 @@ unreachableAfterRestOnlyTyped(Map o) {
94
105
}
95
106
96
107
unreachableAfterRestOnlyEmpty (Map o) {
97
- return /*type=Map<dynamic, dynamic>*/ switch (o) {
98
- Map () /*space={...}*/ => 0 ,
99
- {} /*
108
+ return /*
109
+ fields={isEmpty:bool},
110
+ type=Map<dynamic, dynamic>
111
+ */
112
+ switch (o) {
113
+ Map () /*space=Map<dynamic, dynamic>*/ => 0 ,
114
+ Map (
115
+ isEmpty: true
116
+ ) /*
100
117
error=unreachable,
101
- space={}
118
+ space=Map<dynamic, dynamic>(isEmpty: true)
102
119
*/
103
120
=>
104
121
1 ,
@@ -107,14 +124,14 @@ unreachableAfterRestOnlyEmpty(Map o) {
107
124
108
125
unreachableAfterRestSameKeys (Map o) {
109
126
return /*type=Map<dynamic, dynamic>*/ switch (o) {
110
- {0 : _} /*space={0: (), ... }*/ => 0 ,
127
+ {0 : _} /*space={0: ()}*/ => 0 ,
111
128
{0 : _} /*
112
129
error=unreachable,
113
130
space={0: ()}
114
131
*/
115
132
=>
116
133
1 ,
117
- Map () /*space={...} */ => 2 ,
134
+ Map () /*space=Map<dynamic, dynamic> */ => 2 ,
118
135
};
119
136
}
120
137
@@ -124,7 +141,7 @@ nonExhaustiveAfterRestSameKeys(Map o) {
124
141
type=Map<dynamic, dynamic>
125
142
*/
126
143
switch (o) {
127
- {0 : _} /*space={0: (), ... }*/ => 0 ,
144
+ {0 : _} /*space={0: ()}*/ => 0 ,
128
145
{0 : _} /*
129
146
error=unreachable,
130
147
space={0: ()}
@@ -136,7 +153,7 @@ nonExhaustiveAfterRestSameKeys(Map o) {
136
153
137
154
unreachableAfterRestMoreKeys (Map o) {
138
155
return /*type=Map<dynamic, dynamic>*/ switch (o) {
139
- {0 : _} /*space={0: (), ... }*/ => 0 ,
156
+ {0 : _} /*space={0: ()}*/ => 0 ,
140
157
{
141
158
0 : _,
142
159
1 : _
@@ -146,7 +163,7 @@ unreachableAfterRestMoreKeys(Map o) {
146
163
*/
147
164
=>
148
165
1 ,
149
- Map () /*space={...} */ => 2 ,
166
+ Map () /*space=Map<dynamic, dynamic> */ => 2 ,
150
167
};
151
168
}
152
169
@@ -156,7 +173,7 @@ nonExhaustiveAfterRestMoreKeys(Map o) {
156
173
type=Map<dynamic, dynamic>
157
174
*/
158
175
switch (o) {
159
- {0 : _} /*space={0: (), ... }*/ => 0 ,
176
+ {0 : _} /*space={0: ()}*/ => 0 ,
160
177
{0 : _, 1 : _} /*
161
178
error=unreachable,
162
179
space={0: (), 1: ()}
@@ -175,7 +192,7 @@ unreachableAfterSameKeys(Map o) {
175
192
*/
176
193
=>
177
194
1 ,
178
- Map () /*space={...} */ => 2 ,
195
+ Map () /*space=Map<dynamic, dynamic> */ => 2 ,
179
196
};
180
197
}
181
198
@@ -197,9 +214,9 @@ nonExhaustiveAfterSameKeys(Map o) {
197
214
198
215
reachableAfterRestOnlyDifferentTypes (Map o) {
199
216
return /*type=Map<dynamic, dynamic>*/ switch (o) {
200
- < int , String > {...} /*space=<int, String>{...} */ => 0 ,
217
+ Map <int , String >() /*space=Map <int, String>*/ => 0 ,
201
218
< int , bool > {0 : _} /*space=<int, bool>{0: bool}*/ => 1 ,
202
- Map () /*space={...} */ => 2 ,
219
+ Map () /*space=Map<dynamic, dynamic> */ => 2 ,
203
220
};
204
221
}
205
222
@@ -209,51 +226,56 @@ nonExhaustiveAfterRestOnlyDifferentTypes(Map o) {
209
226
type=Map<dynamic, dynamic>
210
227
*/
211
228
switch (o) {
212
- Map <int , String >() /*space=<int, String>{...} */ => 0 ,
229
+ Map <int , String >() /*space=Map <int, String>*/ => 0 ,
213
230
< int , bool > {0 : _} /*space=<int, bool>{0: bool}*/ => 1 ,
214
231
};
215
232
}
216
233
217
234
reachableAfterRestOnlyEmptyDifferentTypes (Map o) {
218
- return /*type=Map<dynamic, dynamic>*/ switch (o) {
219
- < int , String > {...} /*space=<int, String>{...}*/ => 0 ,
220
- < int , bool > {} /*space=<int, bool>{}*/ => 1 ,
221
- Map () /*space={...}*/ => 2 ,
235
+ return /*
236
+ fields={isEmpty:bool},
237
+ type=Map<dynamic, dynamic>
238
+ */
239
+ switch (o) {
240
+ Map <int , String >() /*space=Map<int, String>*/ => 0 ,
241
+ Map <int , bool >(isEmpty: true ) /*space=Map<int, bool>(isEmpty: true)*/ => 1 ,
242
+ Map () /*space=Map<dynamic, dynamic>*/ => 2 ,
222
243
};
223
244
}
224
245
225
246
nonExhaustiveAfterRestOnlyEmptyDifferentTypes (Map o) {
226
247
return /*
227
248
error=non-exhaustive:Map<dynamic, dynamic>(),
249
+ fields={isEmpty:bool},
228
250
type=Map<dynamic, dynamic>
229
251
*/
230
252
switch (o) {
231
- Map <int , String >() /*space=<int, String>{...} */ => 0 ,
232
- < int , bool > {} /*space=<int, bool>{} */ => 1 ,
253
+ Map <int , String >() /*space=Map <int, String>*/ => 0 ,
254
+ Map <int , bool >(isEmpty : true ) /*space=Map <int, bool>(isEmpty: true) */ => 1 ,
233
255
};
234
256
}
235
257
236
258
reachableAfterRestDifferentTypes (Map o) {
237
259
return /*type=Map<dynamic, dynamic>*/ switch (o) {
238
- < int , String > {0 : _} /*space=<int, String>{0: String, ... }*/ => 0 ,
260
+ < int , String > {0 : _} /*space=<int, String>{0: String}*/ => 0 ,
239
261
< int , bool > {0 : _} /*space=<int, bool>{0: bool}*/ => 1 ,
240
- Map () /*space={...} */ => 2 ,
262
+ Map () /*space=Map<dynamic, dynamic> */ => 2 ,
241
263
};
242
264
}
243
265
244
266
nonExhaustiveAfterRestDifferentTypes (Map o) {
245
267
return /*type=Map<dynamic, dynamic>*/ switch (o) {
246
- < int , String > {0 : _} /*space=<int, String>{0: String, ... }*/ => 0 ,
268
+ < int , String > {0 : _} /*space=<int, String>{0: String}*/ => 0 ,
247
269
< int , bool > {0 : _} /*space=<int, bool>{0: bool}*/ => 1 ,
248
- Map () /*space={...} */ => 2 ,
270
+ Map () /*space=Map<dynamic, dynamic> */ => 2 ,
249
271
};
250
272
}
251
273
252
274
reachableAfterRestDifferentKeys (Map o) {
253
275
return /*type=Map<dynamic, dynamic>*/ switch (o) {
254
- {0 : _} /*space={0: (), ... }*/ => 0 ,
276
+ {0 : _} /*space={0: ()}*/ => 0 ,
255
277
{1 : _} /*space={1: ()}*/ => 1 ,
256
- Map () /*space={...} */ => 2 ,
278
+ Map () /*space=Map<dynamic, dynamic> */ => 2 ,
257
279
};
258
280
}
259
281
@@ -263,7 +285,7 @@ nonExhaustiveAfterRestDifferentKeys(Map o) {
263
285
type=Map<dynamic, dynamic>
264
286
*/
265
287
switch (o) {
266
- {0 : _} /*space={0: (), ... }*/ => 0 ,
288
+ {0 : _} /*space={0: ()}*/ => 0 ,
267
289
{1 : _} /*space={1: ()}*/ => 1 ,
268
290
};
269
291
}
@@ -272,7 +294,7 @@ reachableAfterDifferentKeys(Map o) {
272
294
return /*type=Map<dynamic, dynamic>*/ switch (o) {
273
295
{0 : _} /*space={0: ()}*/ => 0 ,
274
296
{1 : _} /*space={1: ()}*/ => 1 ,
275
- Map () /*space={...} */ => 2 ,
297
+ Map () /*space=Map<dynamic, dynamic> */ => 2 ,
276
298
};
277
299
}
278
300
@@ -291,7 +313,7 @@ reachableAfterDifferentTypes(Map o) {
291
313
return /*type=Map<dynamic, dynamic>*/ switch (o) {
292
314
< int , String > {0 : _} /*space=<int, String>{0: String}*/ => 0 ,
293
315
< int , bool > {0 : _} /*space=<int, bool>{0: bool}*/ => 1 ,
294
- Map () /*space={...} */ => 2 ,
316
+ Map () /*space=Map<dynamic, dynamic> */ => 2 ,
295
317
};
296
318
}
297
319
0 commit comments