scalacコマンドライン引数-Ywarn-value-discard
を自分のビルドに追加しました。これは自分のコードで見つけた微妙なバグを捕まえたからです。しかし、私は今、バグではなく、意図的な破棄に関する「廃棄された非単価」に関する警告を受け取ります。これらの警告をどのように抑制しますか?"ユニット外の値を破棄しました"という警告を表示しない
25
A
答えて
34
明示的にユニット(つまり()
)を返すことで、これらの警告を抑制します。すなわち、
def method1() = {
println("Hello")
"Bye"
}
def method2() {
method1()
() // Explicitly return unit
}
8
がthis answerによると、あなたはまた、構文val _
を使用することができます
def method2(): Unit = {
val _ = method1()
}
をしかし、かどうか、この以上のいくつかの論争があります:
def method1() = {
println("Hello")
"Bye"
}
def method2() {
method1() // Returns "Bye", whihc is implicitly discarded
}
へ: 例では、これを回します@Régisによる回答が好ましいスタイルです。
関連する問題
- 1. 破棄可能な警告
- 2. 「要件は既に満たされています」という警告を表示しない警告
- 3. 再度警告を表示しない
- 4. 警告メッセージを表示しないAkka.net
- 5. MSTest.exeがアセンブリまたはモジュールに警告を表示しない
- 6. 警告を表示しているTox
- 7. リクエスト+ grequests: "接続プールがいっぱいで、接続を破棄しています:"という警告が表示されますか?
- 8. メモリ警告が表示されているView Controllerを破壊しますか?
- 9. 表示し、キー値の配列警告
- 10. 保存されていないデータを含むビューを破棄しようとすると警告が表示される
- 11. ブートストラップツールチップとポップオーバー:破棄するか、破棄しないか?
- 12. 書き込みボタンを押さないと、警告を表示したい
- 13. 警告:ビューがウィンドウ階層内にないビューを別のビューコントローラに表示しようとしました
- 14. Rails:管理者としてログインしていない限り、「編集」と「破棄」を非表示にします。
- 15. 前のAlertViewControllerを破棄した後に新しいAlertViewControllerを表示する - Swift
- 16. 警告:ビューがウィンドウ階層にないSecondViewControllerにFirstViewControllerを表示しようとしました
- 17. 警告:ビューがウィンドウ階層にないUISplitViewControllerにUIAlertControllerを表示しようとしました
- 18. Odoo警告 - 警告あなたは互換性のないテーマをインストールしようとしている
- 19. jQueryの機能をクリックしたときに警告が表示されない
- 20. 甘い警告ダイアログを表示していません
- 21. Android:アクティビティは、AlertDialogを破棄してスレッドを表示します。
- 22. Tkのウィジェットを破棄しない
- 23. beautifulsoupでURLの警告を表示しない
- 24. Webpackはブラウザコンソールでeslintの警告を表示しない
- 25. Tkinterの警告メッセージで「メッセージを再表示しない」チェックボックス
- 26. JUnitテストでコンパイラの警告を表示しない
- 27. Androidアプリに応答しないという警告メッセージが表示される
- 28. 例外をキャッチし、失敗した操作についての警告を表示します。
- 29. ViewControllerがウィンドウ階層にないときに警告を表示しない
- 30. PHP ldap_search警告が表示されない制限に達しました
'method2'で' method1'を呼び出すときに_non-Unitの値を破棄していませんか? – botchniaque
最初のスニペットは**警告をトリガするケースを示します( '-Ywarn-value-discard'が有効になっている場合)ので、実際にはこの場合は非単位値(' method1'の戻り値) 'method2'で' method1'を呼び出すときに破棄されます。 2番目のスニペットは明示的に "unit"(つまり '()')を返し、警告を削除します。 –