/// The equivalent of `deconstruct` for site metadata.
///
/// `fold_meta` is called on the images of each primitive atom,
/// along with their cell indices in a parallel slice.
/// The primitive atoms are done in an arbitrary order.
The equivalent of `deconstruct` for site metadata.
`fold_meta` is called on the images of each primitive atom,
along with their cell indices in a parallel slice.
The primitive atoms are done in an arbitrary order.
The equivalent of ` deconstruct ` for site metadata . ` fold_meta ` is called on the images of each primitive atom along with their cell indices in a parallel slice . The primitive atoms are done in an arbitrary order .
pub fn collapse_with<M, M2, F>(
        &self,
        meta: Vec<M>,
        mut fold_meta: F,
    ) -> Vec<M2>
    where F: FnMut(OwnedMetas<'_, M>, &[[u32; 3]]) -> M2,
    { self.try_collapse_with(meta, |m, i| Ok::<_, ()>(fold_meta(m, i))).expect("BUG!") }
pub fn collapse_with < M , M2 , F > ( & self , meta : Vec < M > , mut fold_meta : F , ) -> Vec < M2 > where F : FnMut ( OwnedMetas < ' _ , M > , & [ [ u32 ; 3 ] ] ) -> M2 , { self . try_collapse_with ( meta , | m , i | Ok :: < _ , ( ) > ( fold_meta ( m , i ) ) ) . expect ( " " ) }
The equivalent of `deconstruct` for site metadata.
The equivalent of ` deconstruct ` for site metadata .
&self
meta
Vec<M>
fold_meta
F