SOURCE_FILE FN FN_KW "fn" WHITESPACE " " NAME IDENT "foo" PARAM_LIST L_PAREN "(" R_PAREN ")" WHITESPACE " " BLOCK_EXPR STMT_LIST L_CURLY "{" WHITESPACE "\n " EXPR_STMT IF_EXPR IF_KW "if" WHITESPACE " " LITERAL TRUE_KW "true" WHITESPACE " " BLOCK_EXPR STMT_LIST L_CURLY "{" R_CURLY "}" WHITESPACE "\n " EXPR_STMT LOOP_EXPR LOOP_KW "loop" WHITESPACE " " BLOCK_EXPR STMT_LIST L_CURLY "{" R_CURLY "}" WHITESPACE "\n " EXPR_STMT MATCH_EXPR MATCH_KW "match" WHITESPACE " " TUPLE_EXPR L_PAREN "(" R_PAREN ")" WHITESPACE " " MATCH_ARM_LIST L_CURLY "{" R_CURLY "}" WHITESPACE "\n " EXPR_STMT WHILE_EXPR WHILE_KW "while" WHITESPACE " " LITERAL TRUE_KW "true" WHITESPACE " " BLOCK_EXPR STMT_LIST L_CURLY "{" R_CURLY "}" WHITESPACE "\n " EXPR_STMT FOR_EXPR FOR_KW "for" WHITESPACE " " WILDCARD_PAT UNDERSCORE "_" WHITESPACE " " IN_KW "in" WHITESPACE " " TUPLE_EXPR L_PAREN "(" R_PAREN ")" WHITESPACE " " BLOCK_EXPR STMT_LIST L_CURLY "{" R_CURLY "}" WHITESPACE "\n " EXPR_STMT BLOCK_EXPR STMT_LIST L_CURLY "{" R_CURLY "}" WHITESPACE "\n " EXPR_STMT BLOCK_EXPR STMT_LIST L_CURLY "{" R_CURLY "}" WHITESPACE "\n " MACRO_RULES MACRO_RULES_KW "macro_rules" BANG "!" WHITESPACE " " NAME IDENT "test" WHITESPACE " " TOKEN_TREE L_CURLY "{" WHITESPACE "\n " TOKEN_TREE L_PAREN "(" R_PAREN ")" WHITESPACE " " EQ "=" R_ANGLE ">" WHITESPACE " " TOKEN_TREE L_CURLY "{" R_CURLY "}" WHITESPACE "\n " R_CURLY "}" WHITESPACE "\n " MACRO_CALL PATH PATH_SEGMENT NAME_REF IDENT "test" BANG "!" TOKEN_TREE L_CURLY "{" R_CURLY "}" WHITESPACE "\n" R_CURLY "}" WHITESPACE "\n"