TokenKind :: enum { if else for while func return ident int float string equal double_colon open_paren close_paren open_curly close_curly newline invalid eof } Token :: struct { kind TokenKind start int }