fn iter_paritychecks_tc(&self) -> ParityIter {
        let prototype = match *self {
            LDPCCode::TC128 => &compact_parity_checks::TC128_H,
            LDPCCode::TC256 => &compact_parity_checks::TC256_H,
            LDPCCode::TC512 => &compact_parity_checks::TC512_H,
            // This function is only called with TC codes.
            _               => unreachable!(),
        };

        let subm = prototype[0][0][0];

        let m = self.submatrix_size();

        // We can use any phi as it won't be touched by the iterator (no HS consts for TC codes).
        let phi = &self::compact_parity_checks::PHI_J_K_M128;

        ParityIter {
            phi, prototype, m, logmd4: (m/4).trailing_zeros() as usize, modm: m-1, modmd4: (m/4)-1,
            rowidx: 0, colidx: 0, sub_mat_idx: 0, sub_mat: subm, sub_mat_val: (subm & 0x3F) as usize, check: 0,
        }
    }
/// Set up a ParityIter for a TC code
Set up a ParityIter for a TC code
Set up a ParityIter for a TC code
fn iter_paritychecks_tc(&self) -> ParityIter {
        let prototype = match *self {
            LDPCCode::TC128 => &compact_parity_checks::TC128_H,
            LDPCCode::TC256 => &compact_parity_checks::TC256_H,
            LDPCCode::TC512 => &compact_parity_checks::TC512_H,
            // This function is only called with TC codes.
            _               => unreachable!(),
        };
        let subm = prototype[0][0][0];
        let m = self.submatrix_size();
        // We can use any phi as it won't be touched by the iterator (no HS consts for TC codes).
        let phi = &self::compact_parity_checks::PHI_J_K_M128;
        ParityIter {
            phi, prototype, m, logmd4: (m/4).trailing_zeros() as usize, modm: m-1, modmd4: (m/4)-1,
            rowidx: 0, colidx: 0, sub_mat_idx: 0, sub_mat: subm, sub_mat_val: (subm & 0x3F) as usize, check: 0,
        }
    }
fn iter_paritychecks_tc ( & self ) -> ParityIter { let prototype = match * self { LDPCCode :: TC128 => & compact_parity_checks :: TC128_H , LDPCCode :: TC256 => & compact_parity_checks :: TC256_H , LDPCCode :: TC512 => & compact_parity_checks :: TC512_H , // This function is only called with TC codes. _ => unreachable ! ( ) , } ; let subm = prototype [ 0 ] [ 0 ] [ 0 ] ; let m = self . submatrix_size ( ) ; // We can use any phi as it won't be touched by the iterator (no HS consts for TC codes). let phi = & self :: compact_parity_checks :: PHI_J_K_M128 ; ParityIter { phi , prototype , m , logmd4 : ( m / 4 ) . trailing_zeros ( ) as usize , modm : m - 1 , modmd4 : ( m / 4 ) - 1 , rowidx : 0 , colidx : 0 , sub_mat_idx : 0 , sub_mat : subm , sub_mat_val : ( subm & 0x3F ) as usize , check : 0 , } }
Set up a ParityIter for a TC code
Set up a ParityIter for a TC code
&self