introduce liveness constraints into NLL code

And do a bunch of gratuitious refactoring that I did not bother to
separate into nice commits.
This commit is contained in:
Niko Matsakis 2017-10-24 14:20:47 -04:00
parent 8535a4a32c
commit 7523c7368c
7 changed files with 393 additions and 209 deletions

View file

@ -53,11 +53,19 @@ pub struct IdxSet<T: Idx> {
}
impl<T: Idx> fmt::Debug for IdxSetBuf<T> {
fn fmt(&self, w: &mut fmt::Formatter) -> fmt::Result { self.bits.fmt(w) }
fn fmt(&self, w: &mut fmt::Formatter) -> fmt::Result {
w.debug_list()
.entries(self.iter())
.finish()
}
}
impl<T: Idx> fmt::Debug for IdxSet<T> {
fn fmt(&self, w: &mut fmt::Formatter) -> fmt::Result { self.bits.fmt(w) }
fn fmt(&self, w: &mut fmt::Formatter) -> fmt::Result {
w.debug_list()
.entries(self.iter())
.finish()
}
}
impl<T: Idx> IdxSetBuf<T> {