into_index

Crates.iointo_index
lib.rsinto_index
version0.1.0
sourcesrc
created_at2024-04-30 14:28:58.36622
updated_at2024-04-30 14:28:58.36622
descriptionHelper traits allowing indexing into vectors and similar types by other types than `usize`
homepage
repositoryhttps://git.pipapo.org/cehteh/into_index.git
max_upload_size
id1225069
size7,617
(cehteh)

documentation

README

IntoIndex

Sometimes it is more convenient to use another type than usize to calculate and store indices. This crate provides an IntoIndex trait that can be used to convert any type into an usize. For types that implement TryInto<usize> this is already implented. Naturally some of these conversions are fallible,​ the into_index() method may panic in this case. A try_into_index() method that returns a Result for handling such errors are available as well.

At and AtMut

Further the At and AtMut traits use IntoIndex for providing indexing without the associated Output type that is required for the Index and IndexMut traits. A implementation for std Vec<T> is already provided.

Example

use into_index::{IntoIndex, At};
let v = vec![1,2,3];

assert_eq!(*v.at(1u8), 2);
Commit count: 0

cargo fmt