/// Attempts to create a subspace from an iterator over points with a
/// specified rank.
///
/// If the points have a higher rank than expected, the method will return
/// `None` early. If the points have a lower rank, the method will return
/// `None` after traversing all of them.
///
/// This method is only faster than the usual one when the specified rank
/// isn't equal to the dimension of the points.
Attempts to create a subspace from an iterator over points with a
specified rank.

If the points have a higher rank than expected, the method will return
`None` early. If the points have a lower rank, the method will return
`None` after traversing all of them.

This method is only faster than the usual one when the specified rank
isn't equal to the dimension of the points.
Attempts to create a subspace from an iterator over points with a specified rank . If the points have a higher rank than expected the method will return ` None ` early . If the points have a lower rank the method will return ` None ` after traversing all of them . This method is only faster than the usual one when the specified rank isn ' t equal to the dimension of the points .
pub fn from_points_with<'a, U: Iterator<Item = &'a Point<T>>>(
        mut points: U,
        rank: usize,
    ) -> Option<Self> {
        let mut subspace = Self::new(
            points
                .next()
                .expect("A hyperplane can't be created from an empty point array!")
                .clone(),
        );
        for p in points {
            if subspace.add(p).is_some() && subspace.rank() > rank {
                return None;
            }
        }
        Some(subspace)
    }
pub fn from_points_with < ' a , U : Iterator < Item = & ' a Point < T > > > ( mut points : U , rank : usize , ) -> Option < Self > { let mut subspace = Self :: new ( points . next ( ) . expect ( " " ) . clone ( ) , ) ; for p in points { if subspace . add ( p ) . is_some ( ) && subspace . rank ( ) > rank { return None ; } } Some ( subspace ) }
Attempts to create a subspace from an iterator over points with a
specified rank.
Attempts to create a subspace from an iterator over points with a specified rank .
points
U
rank
usize