@@ -487,14 +487,13 @@ pub fn each_lang_item<F>(cdata: Cmd, mut f: F) -> bool where
487
487
} )
488
488
}
489
489
490
- pub type GetCrateDataCb < ' a > = |ast:: CrateNum |: ' a -> Rc <crate_metadata>;
491
-
492
- fn each_child_of_item_or_crate<F >( intr: Rc <IdentInterner >,
493
- cdata : Cmd ,
494
- item_doc : rbml:: Doc ,
495
- get_crate_data : GetCrateDataCb ,
496
- mut callback : F ) where
490
+ fn each_child_of_item_or_crate < F , G > ( intr : Rc < IdentInterner > ,
491
+ cdata : Cmd ,
492
+ item_doc : rbml:: Doc ,
493
+ mut get_crate_data : G ,
494
+ mut callback : F ) where
497
495
F : FnMut ( DefLike , ast:: Name , ast:: Visibility ) ,
496
+ G : FnMut ( ast:: CrateNum ) -> Rc < crate_metadata > ,
498
497
{
499
498
// Iterate over all children.
500
499
let _ = reader:: tagged_docs ( item_doc, tag_mod_child, |child_info_doc| {
@@ -608,12 +607,13 @@ fn each_child_of_item_or_crate<F>(intr: Rc<IdentInterner>,
608
607
}
609
608
610
609
/// Iterates over each child of the given item.
611
- pub fn each_child_of_item < F > ( intr : Rc < IdentInterner > ,
612
- cdata : Cmd ,
613
- id : ast:: NodeId ,
614
- get_crate_data : GetCrateDataCb ,
615
- callback : F ) where
610
+ pub fn each_child_of_item < F , G > ( intr : Rc < IdentInterner > ,
611
+ cdata : Cmd ,
612
+ id : ast:: NodeId ,
613
+ get_crate_data : G ,
614
+ callback : F ) where
616
615
F : FnMut ( DefLike , ast:: Name , ast:: Visibility ) ,
616
+ G : FnMut ( ast:: CrateNum ) -> Rc < crate_metadata > ,
617
617
{
618
618
// Find the item.
619
619
let root_doc = rbml:: Doc :: new ( cdata. data ( ) ) ;
@@ -631,11 +631,12 @@ pub fn each_child_of_item<F>(intr: Rc<IdentInterner>,
631
631
}
632
632
633
633
/// Iterates over all the top-level crate items.
634
- pub fn each_top_level_item_of_crate < F > ( intr : Rc < IdentInterner > ,
635
- cdata : Cmd ,
636
- get_crate_data : GetCrateDataCb ,
637
- callback : F ) where
634
+ pub fn each_top_level_item_of_crate < F , G > ( intr : Rc < IdentInterner > ,
635
+ cdata : Cmd ,
636
+ get_crate_data : G ,
637
+ callback : F ) where
638
638
F : FnMut ( DefLike , ast:: Name , ast:: Visibility ) ,
639
+ G : FnMut ( ast:: CrateNum ) -> Rc < crate_metadata > ,
639
640
{
640
641
let root_doc = rbml:: Doc :: new ( cdata. data ( ) ) ;
641
642
let misc_info_doc = reader:: get_doc ( root_doc, tag_misc_info) ;
0 commit comments