SOURCE_FILE@0..187
TYPE_ALIAS@0..35
TYPE_KW@0..4 "type"
WHITESPACE@4..5 " "
NAME@5..8
IDENT@5..8 "Foo"
GENERIC_PARAM_LIST@8..12
L_ANGLE@8..9 "<"
LIFETIME_PARAM@9..11
LIFETIME@9..11
LIFETIME_IDENT@9..11 "'a"
R_ANGLE@11..12 ">"
WHITESPACE@12..13 " "
EQ@13..14 "="
WHITESPACE@14..15 " "
REF_TYPE@15..34
AMP@15..16 "&"
LIFETIME@16..18
LIFETIME_IDENT@16..18 "'a"
WHITESPACE@18..19 " "
DYN_TRAIT_TYPE@19..34
DYN_KW@19..22 "dyn"
WHITESPACE@22..23 " "
TYPE_BOUND_LIST@23..34
TYPE_BOUND@23..27
PATH_TYPE@23..27
PATH@23..27
PATH_SEGMENT@23..27
NAME_REF@23..27
IDENT@23..27 "Send"
WHITESPACE@27..28 " "
PLUS@28..29 "+"
WHITESPACE@29..30 " "
TYPE_BOUND@30..34
PATH_TYPE@30..34
PATH@30..34
PATH_SEGMENT@30..34
NAME_REF@30..34
IDENT@30..34 "Sync"
SEMICOLON@34..35 ";"
WHITESPACE@35..36 "\n"
TYPE_ALIAS@36..70
TYPE_KW@36..40 "type"
WHITESPACE@40..41 " "
NAME@41..44
IDENT@41..44 "Foo"
WHITESPACE@44..45 " "
EQ@45..46 "="
WHITESPACE@46..47 " "
PTR_TYPE@47..69
STAR@47..48 "*"
CONST_KW@48..53 "const"
WHITESPACE@53..54 " "
DYN_TRAIT_TYPE@54..69
DYN_KW@54..57 "dyn"
WHITESPACE@57..58 " "
TYPE_BOUND_LIST@58..69
TYPE_BOUND@58..62
PATH_TYPE@58..62
PATH@58..62
PATH_SEGMENT@58..62
NAME_REF@58..62
IDENT@58..62 "Send"
WHITESPACE@62..63 " "
PLUS@63..64 "+"
WHITESPACE@64..65 " "
TYPE_BOUND@65..69
PATH_TYPE@65..69
PATH@65..69
PATH_SEGMENT@65..69
NAME_REF@65..69
IDENT@65..69 "Sync"
SEMICOLON@69..70 ";"
WHITESPACE@70..71 "\n"
TYPE_ALIAS@71..109
TYPE_KW@71..75 "type"
WHITESPACE@75..76 " "
NAME@76..79
IDENT@76..79 "Foo"
WHITESPACE@79..80 " "
EQ@80..81 "="
WHITESPACE@81..82 " "
FN_PTR_TYPE@82..108
FN_KW@82..84 "fn"
PARAM_LIST@84..86
L_PAREN@84..85 "("
R_PAREN@85..86 ")"
WHITESPACE@86..87 " "
RET_TYPE@87..108
THIN_ARROW@87..89 "->"
WHITESPACE@89..90 " "
DYN_TRAIT_TYPE@90..108
DYN_KW@90..93 "dyn"
WHITESPACE@93..94 " "
TYPE_BOUND_LIST@94..108
TYPE_BOUND@94..98
PATH_TYPE@94..98
PATH@94..98
PATH_SEGMENT@94..98
NAME_REF@94..98
IDENT@94..98 "Send"
WHITESPACE@98..99 " "
PLUS@99..100 "+"
WHITESPACE@100..101 " "
TYPE_BOUND@101..108
LIFETIME@101..108
LIFETIME_IDENT@101..108 "'static"
SEMICOLON@108..109 ";"
WHITESPACE@109..110 "\n"
FN@110..186
FN_KW@110..112 "fn"
WHITESPACE@112..113 " "
NAME@113..117
IDENT@113..117 "main"
PARAM_LIST@117..119
L_PAREN@117..118 "("
R_PAREN@118..119 ")"
WHITESPACE@119..120 " "
BLOCK_EXPR@120..186
STMT_LIST@120..186
L_CURLY@120..121 "{"
WHITESPACE@121..126 "\n "
LET_STMT@126..184
LET_KW@126..129 "let"
WHITESPACE@129..130 " "
IDENT_PAT@130..131
NAME@130..131
IDENT@130..131 "b"
WHITESPACE@131..132 " "
EQ@132..133 "="
WHITESPACE@133..134 " "
CAST_EXPR@134..183
PAREN_EXPR@134..138
L_PAREN@134..135 "("
REF_EXPR@135..137
AMP@135..136 "&"
PATH_EXPR@136..137
PATH@136..137
PATH_SEGMENT@136..137
NAME_REF@136..137
IDENT@136..137 "a"
R_PAREN@137..138 ")"
WHITESPACE@138..139 " "
AS_KW@139..141 "as"
WHITESPACE@141..142 " "
REF_TYPE@142..183
AMP@142..143 "&"
DYN_TRAIT_TYPE@143..183
DYN_KW@143..146 "dyn"
WHITESPACE@146..147 " "
TYPE_BOUND_LIST@147..183
TYPE_BOUND@147..175
PATH_TYPE@147..175
PATH@147..175
PATH_SEGMENT@147..175
NAME_REF@147..150
IDENT@147..150 "Add"
GENERIC_ARG_LIST@150..175
L_ANGLE@150..151 "<"
TYPE_ARG@151..156
PATH_TYPE@151..156
PATH@151..156
PATH_SEGMENT@151..156
NAME_REF@151..156
IDENT@151..156 "Other"
COMMA@156..157 ","
WHITESPACE@157..158 " "
ASSOC_TYPE_ARG@158..174
NAME_REF@158..164
IDENT@158..164 "Output"
WHITESPACE@164..165 " "
EQ@165..166 "="
WHITESPACE@166..167 " "
PATH_TYPE@167..174
PATH@167..174
PATH_SEGMENT@167..174
NAME_REF@167..174
IDENT@167..174 "Addable"
R_ANGLE@174..175 ">"
WHITESPACE@175..176 " "
PLUS@176..177 "+"
WHITESPACE@177..178 " "
TYPE_BOUND@178..183
PATH_TYPE@178..183
PATH@178..183
PATH_SEGMENT@178..183
NAME_REF@178..183
IDENT@178..183 "Other"
SEMICOLON@183..184 ";"
WHITESPACE@184..185 "\n"
R_CURLY@185..186 "}"
WHITESPACE@186..187 "\n"
error 19..34: ambiguous `+` in a type
error 54..69: ambiguous `+` in a type
error 90..108: ambiguous `+` in a type
error 143..183: ambiguous `+` in a type