avoid_ type_ to_ string
Details about the 'avoid_type_to_string' diagnostic produced by the Dart analyzer.
Using 'toString' on a 'Type' is not safe in production code.
Description
#
The analyzer produces this diagnostic when the method
toString is invoked on a value whose static type
is Type.
Example
#
The following code produces this diagnostic because the method
toString is invoked on the
Type returned by runtimeType:
bool isC(Object o) => o.runtimeType.toString() == 'C';
class C {}
Common fixes
#If it's essential that the type is exactly the same, then use an explicit comparison:
bool isC(Object o) => o.runtimeType == C;
class C {}
If it's alright for instances of subtypes of the type to
return true, then use a type check:
bool isC(Object o) => o is C;
class C {}
除非另有说明,文档之所提及适用于 Dart 3.12.2 版本报告页面问题.