File tree Expand file tree Collapse file tree 1 file changed +24
-0
lines changed Expand file tree Collapse file tree 1 file changed +24
-0
lines changed Original file line number Diff line number Diff line change @@ -2262,6 +2262,30 @@ struct parser {
2262
2262
push ( bounds, bound_const) ;
2263
2263
} else if self . eat_keyword ( ~"owned") {
2264
2264
push ( bounds, bound_owned) ;
2265
+ } else if is_ident ( self . token ) {
2266
+ // XXX: temporary until kinds become traits
2267
+ let maybe_bound = match self . token {
2268
+ token:: IDENT ( sid, _) => {
2269
+ match * self . id_to_str ( sid) {
2270
+ ~"Send " => Some ( bound_send) ,
2271
+ ~"Copy " => Some ( bound_copy) ,
2272
+ ~"Const " => Some ( bound_const) ,
2273
+ ~"Owned " => Some ( bound_owned) ,
2274
+ _ => None
2275
+ }
2276
+ }
2277
+ _ => fail
2278
+ } ;
2279
+
2280
+ match maybe_bound {
2281
+ Some ( bound) => {
2282
+ self . bump ( ) ;
2283
+ push ( bounds, bound) ;
2284
+ }
2285
+ None => {
2286
+ push ( bounds, bound_trait ( self . parse_ty ( false ) ) ) ;
2287
+ }
2288
+ }
2265
2289
} else {
2266
2290
push ( bounds, bound_trait ( self . parse_ty ( false ) ) ) ;
2267
2291
}
You can’t perform that action at this time.
0 commit comments