#![allow(unused)] #![warn(clippy::sliced_string_as_bytes)] use std::ops::{Index, Range}; struct Foo; struct Bar; impl Bar { fn as_bytes(&self) -> &[u8] { &[0, 1, 2, 3] } } impl Index> for Foo { type Output = Bar; fn index(&self, _: Range) -> &Self::Output { &Bar } } fn main() { let s = "Lorem ipsum"; let string: String = "dolor sit amet".to_owned(); let bytes = &s.as_bytes()[1..5]; //~^ sliced_string_as_bytes let bytes = &string.as_bytes()[1..]; //~^ sliced_string_as_bytes let bytes = &"consectetur adipiscing".as_bytes()[..=5]; //~^ sliced_string_as_bytes let f = Foo; let bytes = f[0..4].as_bytes(); }