SwitchStatement { patterns: [], span: 0..11, } SwitchStatement { patterns: [ PatternBranch { condition: PatternWhenNode { guard: true, span: 22..34, }, continuation: [ 1, ], span: 22..34, }, PatternBranch { condition: Guaranteed, continuation: [ 2, ], span: 36..43, }, ], span: 13..44, } SwitchStatement { patterns: [ PatternBranch { condition: PatternCaseNode { pattern: IdentifierPattern { modifiers: [], identifier: Identifier("", 0..0), }, guard: None, span: 59..76, }, continuation: [ a, ], span: 59..76, }, PatternBranch { condition: PatternTypeNode { typing: B, guard: None, span: 82..99, }, continuation: [ b, ], span: 82..99, }, PatternBranch { condition: PatternWhenNode { guard: InfixNode { infix: >, lhs: c, rhs: 0, }, span: 105..126, }, continuation: [ c, ], span: 105..126, }, PatternBranch { condition: Guaranteed, continuation: [ d, ], span: 132..147, }, ], span: 46..150, }