@@ -40,9 +40,7 @@ impl<'a, I: gll::grammer::input::Input, T: ?Sized> Handle<'a, '_, I, T> {
40
40
}
41
41
}
42
42
43
- impl < ' a , ' i , I , T : ?Sized >
44
- _forest:: typed:: FromShapeFields < ' a , _forest:: ParseForest < ' i , _G , I > , Node < ' i , _G > >
45
- for Handle < ' a , ' i , I , T >
43
+ impl < ' a , ' i , I , T : ?Sized > _forest:: typed:: FromShapeFields < ' a , ' i , _G , I > for Handle < ' a , ' i , I , T >
46
44
where
47
45
I : gll:: grammer:: input:: Input ,
48
46
{
@@ -89,9 +87,7 @@ impl<'a, 'i, I: gll::grammer::input::Input, T> fmt::Debug for Handle<'a, 'i, I,
89
87
where
90
88
// FIXME(eddyb) this should be `Handle<'a, 'i, I, T>: fmt::Debug` but that
91
89
// runs into overflows looking for `Handle<I, [[[...[[[_]]]...]]]>`.
92
- T : _forest:: typed:: Shaped
93
- + _forest:: typed:: FromShapeFields < ' a , _forest:: ParseForest < ' i , _G , I > , Node < ' i , _G > > ,
94
- T :: Shape : _forest:: typed:: Shape < _forest:: ParseForest < ' i , _G , I > , Node < ' i , _G > > ,
90
+ T : _forest:: typed:: Shaped + _forest:: typed:: FromShapeFields < ' a , ' i , _G , I > ,
95
91
T :: Output : fmt:: Debug ,
96
92
{
97
93
fn fmt ( & self , f : & mut fmt:: Formatter < ' _ > ) -> fmt:: Result {
@@ -250,9 +246,7 @@ impl<'a, 'i, I: gll::grammer::input::Input, T> Handle<'a, 'i, I, [T]> {
250
246
impl < ' a , ' i , I , T > fmt:: Debug for Handle < ' a , ' i , I , T >
251
247
where
252
248
I : gll:: grammer:: input:: Input ,
253
- T : _forest:: typed:: Shaped
254
- + _forest:: typed:: FromShapeFields < ' a , _forest:: ParseForest < ' i , _G , I > , Node < ' i , _G > > ,
255
- T :: Shape : _forest:: typed:: Shape < _forest:: ParseForest < ' i , _G , I > , Node < ' i , _G > > ,
249
+ T : _forest:: typed:: Shaped + _forest:: typed:: FromShapeFields < ' a , ' i , _G , I > ,
256
250
T :: Output : fmt:: Debug ,
257
251
{
258
252
fn fmt ( & self , f : & mut fmt:: Formatter < ' _ > ) -> fmt:: Result {
@@ -276,18 +270,14 @@ where
276
270
impl < ' a , ' i , I , T > Handle < ' a , ' i , I , T >
277
271
where
278
272
I : gll:: grammer:: input:: Input ,
279
- T : _forest:: typed:: Shaped
280
- + _forest:: typed:: FromShapeFields < ' a , _forest:: ParseForest < ' i , _G , I > , Node < ' i , _G > > ,
281
- T :: Shape : _forest:: typed:: Shape < _forest:: ParseForest < ' i , _G , I > , Node < ' i , _G > > ,
273
+ T : _forest:: typed:: Shaped + _forest:: typed:: FromShapeFields < ' a , ' i , _G , I > ,
282
274
{
283
275
pub fn one ( self ) -> Result < T :: Output , Ambiguity < Self > > {
284
276
T :: one ( self . forest , self . forest . unpack_alias ( self . node ) )
285
277
. map_err ( |_forest:: MoreThanOne | Ambiguity ( self ) )
286
278
}
287
279
288
- pub fn all (
289
- self ,
290
- ) -> _forest:: typed:: ShapedAllIter < ' a , T , _forest:: ParseForest < ' i , _G , I > , Node < ' i , _G > > {
280
+ pub fn all ( self ) -> _forest:: typed:: ShapedAllIter < ' a , ' i , _G , I , T > {
291
281
T :: all ( self . forest , self . forest . unpack_alias ( self . node ) )
292
282
}
293
283
}
0 commit comments