这是我所指的模式的示例函数:
fn check_sub_listiness<T: PartialEq>(big_list: &[T], small_list: &[T]) -> bool {
for poss_sublist in big_list.windows(small_list.len()) {
if poss_sublist == small_list {
return true;
}
}
false
}
这段代码接受一个大列表和一个小列表,并返回小列表是否是大列表的子列表。我把它写成我正在做的锻炼练习的一部分。我发现自己经常使用这种模式,我在其中循环一些选项,检查条件,如果找到它则返回 true,如果我在循环结束时没有找到我正在寻找的东西,则返回 false。有这个名字吗?更重要的是,是否有更好的语义化方式来编写它(用 Rust 或任何其他语言)。