Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ケースクラスとパターンマッチングでDayOfWeek型のmatch式でSaturdayのケースが漏れている #998

Closed
youta32449999 opened this issue Aug 29, 2022 · 5 comments
Assignees

Comments

@youta32449999
Copy link
Contributor

sealedによるmatch式網羅性の警告を表示させるためにSaturdayを意図的に外しているのでしょうか?

@youta32449999
Copy link
Contributor Author

youta32449999 commented Aug 29, 2022

網羅した例を掲載して警告は自分で抜いて確かめてねという場合と

x match {
  case Sunday => 1
  case Monday => 2
  case Tuesday => 3
  case Wednesday => 4
  case Thursday => 5
  case Friday => 6
  case Saturday => 7
}

意図的にSaturdayを抜いたから警告が出るのを確かめてねの

x match {
  case Sunday => 1
  case Monday => 2
  case Tuesday => 3
  case Wednesday => 4
  case Thursday => 5
  case Friday => 6
  // case Saturday => 7 
}

上記2パターンのどちらかが良い気がします。

@xuwei-k
Copy link
Contributor

xuwei-k commented Aug 29, 2022

他のやつにも何度も貼ってるけど、たぶんこれのせいで不自然に見えてる気がするので、これを根本的にさっさと解決したい

@youta32449999
Copy link
Contributor Author

本来は警告が見えていたのですね。。

@kmizu
Copy link
Contributor

kmizu commented Sep 12, 2022

@youta32449999 これ、見た目の問題もありますが、文章自体が

これは、xがSundayなら1を、Mondayなら2を…返すパターンマッチです。ここで、パターンマッチで漏れがあった場合、コンパイラが警告してくれます。

となっていて、「漏れがあった場合」という記述がややこしいですね。

xがSundayなら1を、Mondayなら2を…返すパターンマッチです。ここで、Saturdayに対する場合分けが記述されていませんが、その時はコンパイラが警告してくれます。

(ここで、現状警告が見えていないので、直に貼ってしまいたい)

という感じでどうでしょうか。

@kmizu
Copy link
Contributor

kmizu commented Sep 26, 2022

マージされたので close。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants