slice_trait

Crates.ioslice_trait
lib.rsslice_trait
version0.2.0
sourcesrc
created_at2023-12-29 00:11:14.256858+00
updated_at2025-02-16 16:39:01.503032+00
descriptionA generic trait for any slice, with item as a type parameter
homepage
repositoryhttps://github.com/sigurd4/slice_trait
max_upload_size
id1082813
size20,609
sigurd4 (sigurd4)

documentation

README

Build Status (nightly)

Build Status (stable)

Test Status Lint Status

Latest Version License:MIT Documentation Coverage Status

slice_trait

A trait for any slice, with item as an associated type.

This crate is a subset of the crate slice_ops.

Example

use slice_trait::*;

let a: &[i32] = [1, 2, 3].as_slice();

fn first<'a, S: Slice + ?Sized>(slice: &'a S) -> Option<&'a S::Item>
where
    S::Item: Copy,
{
    slice.as_slice().first()
}

assert_eq!(first(a), Some(&1));
Commit count: 0

cargo fmt