array_ext 0.4.0

Extra functionality for Rust arrays
Documentation
  • Coverage
  • 100%
    24 out of 24 items documented1 out of 23 items with examples
  • Size
  • Source code size: 16.01 kB This is the summed size of all the files inside the crates.io package for this release.
  • Documentation size: 1.54 MB This is the summed size of all files generated by rustdoc for all configured targets
  • Links
  • wolfiestyle/array_ext
    0 2 0
  • crates.io
  • Dependencies
  • Versions
  • Owners
  • wolfiestyle

array_ext

Extra functionality for Rust arrays.

Documentation

Examples

The trait Array provides fixed-size array generics:

use array_ext::Array;

fn average<T: Array<f32>>(arr: T) -> f32
{
    let n = arr.len() as f32;
    arr.foldl(0.0, |acc, val| acc + val) / n
}

assert!((average([8.96, 3.14, 17.9]) - 10.0).abs() < f32::EPSILON);

Some methods, like zip_with, are provided by the sized ArrayN trait that allows doing full [T; N] -> [U; N] mapping. The base Array trait can only do [T; N] -> [T; N] mapping.

This was originally made as workaround for the lack of const generics, but since v0.4 everything is implemented using const generics.