| |
| enum X { |
| case first(Int, String) |
| case second(Int, String) |
| case third(Int, String) |
| case fourth(Int, String) |
| case fifth(Int, String) |
| } |
| |
| let p = X.first(3, "hello") |
| |
| switch p { |
| case .first(let x, let y) |
| print("foo \(x) \(y)") |
| fallthrough |
| case .second(let x, let y), .third(let x, let y): |
| print("bar \(x) \(y)") |
| default: |
| print("other") |
| } |
| |
| // RUN: %sourcekitd-test -req=cursor -pos=13:19 %s -- %mcp_opt %s | %FileCheck -check-prefixes=CHECKX,CHECK1DECL %s |
| // RUN: %sourcekitd-test -req=cursor -pos=14:18 %s -- %mcp_opt %s | %FileCheck -check-prefixes=CHECKX,CHECK1REF %s |
| |
| // CHECK1DECL: source.lang.swift.decl.var.local (13:19-13:20) |
| // CHECK1REF: source.lang.swift.ref.var.local (13:19-13:20) |
| |
| // RUN: %sourcekitd-test -req=cursor -pos=16:20 %s -- %mcp_opt %s | %FileCheck -check-prefixes=CHECKX,CHECK2DECL %s |
| // RUN: %sourcekitd-test -req=cursor -pos=16:42 %s -- %mcp_opt %s | %FileCheck -check-prefixes=CHECKX,CHECK2DECL2 %s |
| // RUN: %sourcekitd-test -req=cursor -pos=17:18 %s -- %mcp_opt %s | %FileCheck -check-prefixes=CHECKX,CHECK2REF %s |
| |
| // CHECK2DECL: source.lang.swift.decl.var.local (16:20-16:21) |
| // CHECK2DECL2: source.lang.swift.decl.var.local (16:42-16:43) |
| // CHECK2REF: source.lang.swift.ref.var.local (16:42-16:43) |
| |
| // CHECKX: x |
| // CHECKX: s:33cursor_vardecl_across_fallthrough1xL_Sivp |
| // CHECKX: Int |
| |
| |
| // RUN: %sourcekitd-test -req=cursor -pos=13:26 %s -- %mcp_opt %s | %FileCheck -check-prefixes=CHECKY,CHECK3DECL %s |
| // RUN: %sourcekitd-test -req=cursor -pos=14:23 %s -- %mcp_opt %s | %FileCheck -check-prefixes=CHECKY,CHECK3REF %s |
| |
| // CHECK3DECL: source.lang.swift.decl.var.local (13:26-13:27) |
| // CHECK3REF: source.lang.swift.ref.var.local (13:26-13:27) |
| |
| // RUN: %sourcekitd-test -req=cursor -pos=16:27 %s -- %mcp_opt %s | %FileCheck -check-prefixes=CHECKY,CHECK4DECL %s |
| // RUN: %sourcekitd-test -req=cursor -pos=16:49 %s -- %mcp_opt %s | %FileCheck -check-prefixes=CHECKY,CHECK4DECL2 %s |
| // RUN: %sourcekitd-test -req=cursor -pos=17:23 %s -- %mcp_opt %s | %FileCheck -check-prefixes=CHECKY,CHECK4REF %s |
| |
| // CHECK4DECL: source.lang.swift.decl.var.local (16:27-16:28) |
| // CHECK4DECL2: source.lang.swift.decl.var.local (16:49-16:50) |
| // CHECK4REF: source.lang.swift.ref.var.local (16:49-16:50) |
| |
| // CHECKY: y |
| // CHECKY: s:33cursor_vardecl_across_fallthrough1yL_SSvp |
| // CHECKY: String |