diff options
Diffstat (limited to 'crates/hir_def/src/item_tree.rs')
-rw-r--r-- | crates/hir_def/src/item_tree.rs | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/crates/hir_def/src/item_tree.rs b/crates/hir_def/src/item_tree.rs index 7440e7d29..528270d49 100644 --- a/crates/hir_def/src/item_tree.rs +++ b/crates/hir_def/src/item_tree.rs | |||
@@ -1,6 +1,9 @@ | |||
1 | //! A simplified AST that only contains items. | 1 | //! A simplified AST that only contains items. |
2 | 2 | ||
3 | mod lower; | 3 | mod lower; |
4 | mod pretty; | ||
5 | #[cfg(test)] | ||
6 | mod tests; | ||
4 | 7 | ||
5 | use std::{ | 8 | use std::{ |
6 | any::type_name, | 9 | any::type_name, |
@@ -205,6 +208,10 @@ impl ItemTree { | |||
205 | } | 208 | } |
206 | } | 209 | } |
207 | 210 | ||
211 | pub fn pretty_print(&self) -> String { | ||
212 | pretty::print_item_tree(self) | ||
213 | } | ||
214 | |||
208 | fn data(&self) -> &ItemTreeData { | 215 | fn data(&self) -> &ItemTreeData { |
209 | self.data.as_ref().expect("attempted to access data of empty ItemTree") | 216 | self.data.as_ref().expect("attempted to access data of empty ItemTree") |
210 | } | 217 | } |
@@ -776,6 +783,10 @@ impl<T> IdRange<T> { | |||
776 | fn new(range: Range<Idx<T>>) -> Self { | 783 | fn new(range: Range<Idx<T>>) -> Self { |
777 | Self { range: range.start.into_raw().into()..range.end.into_raw().into(), _p: PhantomData } | 784 | Self { range: range.start.into_raw().into()..range.end.into_raw().into(), _p: PhantomData } |
778 | } | 785 | } |
786 | |||
787 | fn is_empty(&self) -> bool { | ||
788 | self.range.is_empty() | ||
789 | } | ||
779 | } | 790 | } |
780 | 791 | ||
781 | impl<T> Iterator for IdRange<T> { | 792 | impl<T> Iterator for IdRange<T> { |