定数パターンにおける
型リテラル
定数パターンで型リテラルを使用しないでください。
このルールはDart 3.0以降で利用可能です。
ルールセット: core、recommended、flutter
このルールにはクイックフィックスが用意されています。
詳細
#オブジェクトがFoo
型かどうかをテストする場合は、代わりにFoo _
と記述してください。
悪い例
dart
void f(Object? x) {
if (x case num) {
print('int or double');
}
}
良い例
dart
void f(Object? x) {
if (x case num _) {
print('int or double');
}
}
一致した値(Type
型であると予想される)が型リテラルFoo
と等しいことをテストする場合、このリントはconst (Foo)
を使用して抑制できます。
悪い例
dart
void f(Object? x) {
if (x case int) {
print('int');
}
}
良い例
dart
void f(Object? x) {
if (x case const (int)) {
print('int');
}
}
使用方法
#type_literal_in_constant_pattern
ルールを有効にするには、analysis_options.yaml
ファイルのlinter > rulesの下にtype_literal_in_constant_pattern
を追加します。
analysis_options.yaml
yaml
linter:
rules:
- type_literal_in_constant_pattern
特に明記されていない限り、このサイトのドキュメントはDart 3.5.3を反映しています。ページの最終更新日:2024-07-03。 ソースを表示 または 問題を報告する。