BETA

Control Statement Violation: `if`, `for`, `guard`, `switch`, `while`, and `catch` statements shouldn't unnecessarily wrap their conditionals or arguments in parentheses. (control_statement)

投稿日:2019-07-09
最終更新:2019-07-09

環境

macOS : Majove 10.14.5
XCode : 10.2
Swift : 5
Deployment Target : 12.2

起こったこと

XCode でプロジェクトをビルドしたら、下記の Warning が表示された。

Control Statement Violation: `if`, `for`, `guard`, `switch`, `while`, and `catch` statements shouldn't unnecessarily wrap their conditionals or arguments in parentheses. (control_statement)  

コード (修正前)

xxx.filter { /* 省略 */ }  
            .map { (event) -> ( /* 省略 */ ) in  
                switch ( event ) {    // ここで Build Warning 発生  
                case .error( /* 省略 */ ):  
                    /* 省略 */  
                case .completed:  
                    /* 省略 */  
                }  
            }  
            .subscribe( /* 省略 */ )  
            .disposed(by: disposeBag)  

Warning の原因

switch ( event ) {の、条件文を囲んでいる() が不要だった。
SwiftLint が出してくれる Warning の一つで、control_statementという種類。

コード (修正後)

xxx.filter { /* 省略 */ }  
            .map { (event) -> ( /* 省略 */ ) in  
                switch  event  {  
                case .error( /* 省略 */ ):  
                    /* 省略 */  
                case .completed:  
                    /* 省略 */  
                }  
            }  
            .subscribe( /* 省略 */ )  
            .disposed(by: disposeBag)  

参考リンク

技術ブログをはじめよう Qrunch(クランチ)は、プログラマの技術アプトプットに特化したブログサービスです
駆け出しエンジニアからエキスパートまで全ての方々のアウトプットを歓迎しております!
or 外部アカウントで 登録 / ログイン する
クランチについてもっと詳しく

この記事が掲載されているブログ

できることがふえるといいなぁ

よく一緒に読まれる記事

0件のコメント

ブログ開設 or ログイン してコメントを送ってみよう
目次をみる
技術ブログをはじめよう Qrunch(クランチ)は、プログラマの技術アプトプットに特化したブログサービスです
or 外部アカウントではじめる
10秒で技術ブログが作れます!