SOURCE_FILE@[0; 96) TRAIT_DEF@[0; 36) TRAIT_KW@[0; 5) "trait" WHITESPACE@[5; 6) " " NAME@[6; 14) IDENT@[6; 14) "Runnable" WHITESPACE@[14; 15) " " ITEM_LIST@[15; 36) L_CURLY@[15; 16) "{" WHITESPACE@[16; 21) "\n " FN_DEF@[21; 34) FN_KW@[21; 23) "fn" WHITESPACE@[23; 24) " " NAME@[24; 31) IDENT@[24; 31) "handler" PARAM_LIST@[31; 33) L_PAREN@[31; 32) "(" R_PAREN@[32; 33) ")" SEMI@[33; 34) ";" WHITESPACE@[34; 35) "\n" R_CURLY@[35; 36) "}" WHITESPACE@[36; 38) "\n\n" TRAIT_DEF@[38; 95) TRAIT_KW@[38; 43) "trait" WHITESPACE@[43; 44) " " NAME@[44; 57) IDENT@[44; 57) "TraitWithExpr" WHITESPACE@[57; 58) " " ITEM_LIST@[58; 95) L_CURLY@[58; 59) "{" WHITESPACE@[59; 64) "\n " FN_DEF@[64; 93) FN_KW@[64; 66) "fn" WHITESPACE@[66; 67) " " NAME@[67; 79) IDENT@[67; 79) "fn_with_expr" PARAM_LIST@[79; 92) L_PAREN@[79; 80) "(" PARAM@[80; 91) BIND_PAT@[80; 81) NAME@[80; 81) IDENT@[80; 81) "x" COLON@[81; 82) ":" WHITESPACE@[82; 83) " " ARRAY_TYPE@[83; 91) L_BRACK@[83; 84) "[" PATH_TYPE@[84; 87) PATH@[84; 87) PATH_SEGMENT@[84; 87) NAME_REF@[84; 87) IDENT@[84; 87) "i32" SEMI@[87; 88) ";" WHITESPACE@[88; 89) " " LITERAL@[89; 90) INT_NUMBER@[89; 90) "1" R_BRACK@[90; 91) "]" R_PAREN@[91; 92) ")" SEMI@[92; 93) ";" WHITESPACE@[93; 94) "\n" R_CURLY@[94; 95) "}" WHITESPACE@[95; 96) "\n"