SOURCE_FILE COMMENT "// https://github.com/rust-analyzer/rust-analyzer/issues/596" WHITESPACE "\n\n" STRUCT STRUCT_KW "struct" WHITESPACE " " NAME IDENT "Foo" SEMICOLON ";" WHITESPACE "\n\n" IMPL IMPL_KW "impl" WHITESPACE " " PATH_TYPE PATH PATH_SEGMENT NAME_REF IDENT "Foo" WHITESPACE " " ASSOC_ITEM_LIST L_CURLY "{" WHITESPACE "\n " FN FN_KW "fn" WHITESPACE " " NAME IDENT "bar" PARAM_LIST L_PAREN "(" R_PAREN ")" WHITESPACE " " RET_TYPE THIN_ARROW "->" WHITESPACE " " PATH_TYPE PATH PATH_SEGMENT NAME_REF IDENT "bool" WHITESPACE " " BLOCK_EXPR STMT_LIST L_CURLY "{" WHITESPACE "\n " MACRO_CALL PATH PATH_SEGMENT NAME_REF IDENT "unimplemented" BANG "!" TOKEN_TREE L_PAREN "(" R_PAREN ")" WHITESPACE "\n " R_CURLY "}" WHITESPACE "\n" R_CURLY "}" WHITESPACE "\n\n" FN FN_KW "fn" WHITESPACE " " NAME IDENT "baz" PARAM_LIST L_PAREN "(" PARAM WILDCARD_PAT UNDERSCORE "_" COLON ":" WHITESPACE " " PATH_TYPE PATH PATH_SEGMENT NAME_REF IDENT "bool" R_PAREN ")" WHITESPACE " " BLOCK_EXPR STMT_LIST L_CURLY "{" R_CURLY "}" WHITESPACE "\n\n" FN FN_KW "fn" WHITESPACE " " NAME IDENT "main" PARAM_LIST L_PAREN "(" R_PAREN ")" WHITESPACE " " BLOCK_EXPR STMT_LIST L_CURLY "{" WHITESPACE "\n " CALL_EXPR PATH_EXPR PATH PATH_SEGMENT NAME_REF IDENT "baz" ARG_LIST L_PAREN "(" CALL_EXPR PATH_EXPR PATH PATH PATH_SEGMENT L_ANGLE "<" PATH_TYPE PATH PATH_SEGMENT NAME_REF IDENT "Foo" R_ANGLE ">" COLON2 "::" PATH_SEGMENT NAME_REF IDENT "bar" ARG_LIST L_PAREN "(" R_PAREN ")" R_PAREN ")" WHITESPACE "\n" R_CURLY "}" WHITESPACE "\n"