# iterwindows
[](https://crates.io/crates/iterwindows)
[](https://docs.rs/iterwindows)
[](https://github.com/rossmacarthur/itermore/actions/workflows/build.yaml)
This crate provides an iterator adapter to iterate over all contiguous
windows of length `N`.
### Deprecated
This crate is deprecated in favour of the [`itermore`] crate and it
currently just re-exports types from there. The following dependency
definition is the equivalent of using this crate.
```toml
# Cargo.toml
[dependencies]
itermore = { version = "...", default-features = false, features = ["array_windows"] }
```
## Getting started
Add the crate to your Cargo manifest.
```sh
cargo add iterwindows
```
And bring the `IterArrayWindows` trait into scope.
```rust
use iterwindows::IterArrayWindows;
```
Now you can use the [`array_windows`] method on any iterator.
```rust
for [a, b, c] in iter.array_windows() {
println!("{} {} {}", a, b, c)
}
```
Generally the size of `N` can be inferred by the compiler but you can also
specify it manually.
```rust
let w = iter.array_windows::<3>();
```
[`itermore`]: https://crates.io/crates/itermore
[`array_windows`]: IterArrayWindows::array_windows
## License
This project is distributed under the terms of both the MIT license and the Apache License (Version 2.0).
See [LICENSE-APACHE](LICENSE-APACHE) and [LICENSE-MIT](LICENSE-MIT) for details.