Main.hx 978 B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. enum Tree<T> {
  2. Leaf(t:T);
  3. Node(l:Tree<T>, r:Tree<T>);
  4. }
  5. class Main {
  6. static function main() {
  7. }
  8. function testRedundance() {
  9. switch(true) {
  10. case false:
  11. case true:
  12. case false: // unused
  13. }
  14. switch(true) {
  15. case false | true:
  16. case true: // unused
  17. case false: // unused
  18. }
  19. switch(true) {
  20. case false
  21. | false: // unused
  22. case true:
  23. }
  24. switch(Leaf("foo")) {
  25. case Leaf(_)
  26. | Leaf("foo"): // unused
  27. case Node(l,r):
  28. }
  29. switch({s:"foo"}) {
  30. case { s : "foo" } :
  31. case { s : a } :
  32. }
  33. switch( { s:"foo", t:"bar" } ) {
  34. case { s : "foo" }:
  35. case { t : "bar" }:
  36. case { s : "foo", t:"bar" }: // unused
  37. case _:
  38. }
  39. switch ("foo") {
  40. case "foo":
  41. case x = "foo": // unused
  42. }
  43. switch ("foo") {
  44. case x = "foo":
  45. case "foo": // unused
  46. }
  47. switch [true] {
  48. case [true]:
  49. case [true]: // unused
  50. case [false]:
  51. }
  52. switch [true] {
  53. case [true]
  54. | [true]: // unused
  55. case [false]:
  56. }
  57. }
  58. }