@@ -27,18 +27,23 @@ pub(super) struct RegionValueElements {
2727impl RegionValueElements {
2828 pub ( super ) fn new ( mir : & Mir < ' _ > , num_universal_regions : usize ) -> Self {
2929 let mut num_points = 0 ;
30- let statements_before_block =
31- mir. basic_blocks ( )
32- . iter ( )
33- . map ( |block_data| {
34- let v = num_points;
35- num_points += block_data. statements . len ( ) + 1 ;
36- v
37- } )
38- . collect ( ) ;
39-
40- debug ! ( "RegionValueElements(num_universal_regions={:?})" , num_universal_regions) ;
41- debug ! ( "RegionValueElements: statements_before_block={:#?}" , statements_before_block) ;
30+ let statements_before_block = mir. basic_blocks ( )
31+ . iter ( )
32+ . map ( |block_data| {
33+ let v = num_points;
34+ num_points += block_data. statements . len ( ) + 1 ;
35+ v
36+ } )
37+ . collect ( ) ;
38+
39+ debug ! (
40+ "RegionValueElements(num_universal_regions={:?})" ,
41+ num_universal_regions
42+ ) ;
43+ debug ! (
44+ "RegionValueElements: statements_before_block={:#?}" ,
45+ statements_before_block
46+ ) ;
4247 debug ! ( "RegionValueElements: num_points={:#?}" , num_points) ;
4348
4449 Self {
@@ -60,7 +65,9 @@ impl RegionValueElements {
6065
6166 /// Iterates over the `RegionElementIndex` for all points in the CFG.
6267 pub ( super ) fn all_point_indices < ' a > ( & ' a self ) -> impl Iterator < Item = RegionElementIndex > + ' a {
63- ( 0 ..self . num_points ) . map ( move |i| RegionElementIndex :: new ( i + self . num_universal_regions ) )
68+ ( 0 ..self . num_points ) . map ( move |i| {
69+ RegionElementIndex :: new ( i + self . num_universal_regions )
70+ } )
6471 }
6572
6673 /// Iterates over the `RegionElementIndex` for all points in the CFG.
@@ -95,12 +102,11 @@ impl RegionValueElements {
95102 // be (BB2, 20).
96103 //
97104 // Nit: we could do a binary search here but I'm too lazy.
98- let ( block, & first_index) =
99- self . statements_before_block
100- . iter_enumerated ( )
101- . filter ( |( _, first_index) | * * first_index <= point_index)
102- . last ( )
103- . unwrap ( ) ;
105+ let ( block, & first_index) = self . statements_before_block
106+ . iter_enumerated ( )
107+ . filter ( |( _, first_index) | * * first_index <= point_index)
108+ . last ( )
109+ . unwrap ( ) ;
104110
105111 RegionElement :: Location ( Location {
106112 block,
@@ -151,7 +157,10 @@ pub(super) trait ToElementIndex {
151157
152158impl ToElementIndex for Location {
153159 fn to_element_index ( self , elements : & RegionValueElements ) -> RegionElementIndex {
154- let Location { block, statement_index } = self ;
160+ let Location {
161+ block,
162+ statement_index,
163+ } = self ;
155164 let start_index = elements. statements_before_block [ block] ;
156165 RegionElementIndex :: new ( elements. num_universal_regions + start_index + statement_index)
157166 }
0 commit comments