12345678910111213141516171819202122232425262728293031 |
- #[
- A better test requires matching, so the use of @ working can be showcased
- For example:
- proc regularCase[T]() =
- case [(1, 3), (3, 4)]:
- of [(1, @a), (_, @b)]:
- echo a, b
- else: discard
- ]#
- {.experimental: "caseStmtMacros".}
- import macros
- type Foo = object
- macro `case`(obj: Foo) = quote do: discard
- proc notGeneric() =
- case Foo()
- of a b c d: discard
- proc generic[T]() =
- case Foo()
- of a b c d: discard
- notGeneric()
- generic[int]()
|