diff options
Diffstat (limited to 'src/librustdoc/clean/auto_trait.rs')
| -rw-r--r-- | src/librustdoc/clean/auto_trait.rs | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/src/librustdoc/clean/auto_trait.rs b/src/librustdoc/clean/auto_trait.rs index b7f5ed9d004..e198b008753 100644 --- a/src/librustdoc/clean/auto_trait.rs +++ b/src/librustdoc/clean/auto_trait.rs @@ -1,10 +1,24 @@ use rustc::hir; use rustc::traits::auto_trait::{self, AutoTraitResult}; -use rustc::ty::{self, TypeFoldable}; +use rustc::ty::{self, Region, RegionVid, TypeFoldable}; +use rustc::util::nodemap::FxHashSet; + use std::fmt::Debug; use super::*; +#[derive(Eq, PartialEq, Hash, Copy, Clone, Debug)] +enum RegionTarget<'tcx> { + Region(Region<'tcx>), + RegionVid(RegionVid) +} + +#[derive(Default, Debug, Clone)] +struct RegionDeps<'tcx> { + larger: FxHashSet<RegionTarget<'tcx>>, + smaller: FxHashSet<RegionTarget<'tcx>> +} + pub struct AutoTraitFinder<'a, 'tcx> { pub cx: &'a core::DocContext<'tcx>, pub f: auto_trait::AutoTraitFinder<'tcx>, |
