analysis_options.yamlをカスタマイズする(3)
analysis_options.yaml
のカスタマイズ、3回め。
今日はerrors
についてです。
さて、analysis_options.yaml
が面白いなと思うのは、チェック基準を厳しくもできるし、ゆるくもできるところ。
analyzer: errors: missing_required_param: warning missing_return: warning todo: ignore sdk_version_async_exported_from_core: ignore
errors
に続けてオプションを記述し、[warning, error, info, ignore]を記述することで、チェックツールの挙動をカスタマイズすることができます。
info
An informational message that doesn’t cause analysis to fail. Example: todo
(ざっくり訳) コンパイルエラーを起こさないインフォのこと。 ex. todo
warning
A warning that doesn’t cause analysis to fail unless the analyzer is configured to treat warnings as errors. Example: analysis_option_deprecated
(ざっくり訳)アナライザーがワーニングをエラーと捉えなければコンパイルエラーを起こさないワーニングのこと。ex. analysis_option_deprecated
error
An error that causes analysis to fail. Example: invalid_assignment
(ざっくり訳)コンパイルエラーを起こすエラーのこと。ex. invalid_assignment
たとえばmissing_required_params
。required
のプロパティを設定しないとウィジェット(画面)の描画時にエラーが発生するけど、コンパイルエラーは起こさない(warning状態)。
// Paddingはpaddingプロパティが必須(required) // 指定しないとコンパイルは通るけど、描画しようとすると例外が発生する Padding hoge() { return Padding( child: Text('Hello, World!'), ); }
これをerror
に指定すると、同じ記述でもアナライザーがエラーを表示してくれます。
(エラーは表示されるだけで、コンパイルは通ります)。
analyzer: errors: // errorを指定するとエラーとして表示されるようになる missing_required_param: error
missing_return
はreturn
を記述していない場合の挙動。
ウィジェット生成のファンクションはreturn
を指定しなくても動くのですが、明示的にわたすほうが好ましいようです。
ということで今日はここまで、また明日続きからやっていきます!