pub fn iter<'b>(&'b self) -> impl Iterator<Item = (u32, &'b Type<'a>)> + 'b {
        assert!((self.types.len() as u64) < (u32::MAX as u64));
        self.types
            .iter()
            .enumerate()
            .map(|(idx, ty)| (u32::try_from(idx).unwrap(), &**ty))
    }
/// Iterate over the types defined in this type set and their index.
Iterate over the types defined in this type set and their index.
Iterate over the types defined in this type set and their index .
pub fn iter<'b>(&'b self) -> impl Iterator<Item = (u32, &'b Type<'a>)> + 'b {
        assert!((self.types.len() as u64) < (u32::MAX as u64));
        self.types
            .iter()
            .enumerate()
            .map(|(idx, ty)| (u32::try_from(idx).unwrap(), &**ty))
    }
pub fn iter < ' b > ( & ' b self ) -> impl Iterator < Item = ( u32 , & ' b Type < ' a > ) > + ' b { assert ! ( ( self types len ( ) as u64 ) ( u32 MAX as u64 ) ) ; self . types . iter ( ) . enumerate ( ) . map ( | ( idx , ty ) | ( u32 :: try_from ( idx ) . unwrap ( ) , & * * ty ) ) }
Iterate over the types defined in this type set and their index.
Iterate over the types defined in this type set and their index .
&'b self
&'b self