void f(x) {
const y = 1;
switch (x) {
case y? as num:
break;
}
}


void[KeywordToken] f[StringToken]([BeginToken]x[StringToken])[SimpleToken] {[BeginToken]
const[KeywordToken] y[StringToken] =[SimpleToken] 1[StringToken];[SimpleToken]
switch[KeywordToken] ([BeginToken]x[StringToken])[SimpleToken] {[BeginToken]
case[KeywordToken] y[StringToken]?[SimpleToken] as[KeywordToken] num[StringToken]:[SimpleToken]
break[KeywordToken];[SimpleToken]
}[SimpleToken]
}[SimpleToken]
[SimpleToken]
