switch_ on_ type
Details about the 'switch_on_type' diagnostic produced by the Dart analyzer.
Avoid switch statements on a 'Type'.
Description
#
The analyzer produces this diagnostic when a switch statement
or switch expression is used on either the value of a
Type or a toString call on a
Type.
Example
#
The following code produces this diagnostic because the switch
statement is used on a Type:
void f(Object o) {
switch (o.runtimeType) {
case const (int):
print('int');
case const (String):
print('String');
}
}
Common fixes
#Use pattern matching on the variable instead:
void f(Object o) {
switch (o) {
case int():
print('int');
case String():
print('String');
}
}
除非另有说明,文档之所提及适用于 Dart 3.12.2 版本报告页面问题.