iterwindows 0.4.0

An iterator adapter to iterate over all contiguous windows of length N
Documentation
<!-- Generated by cargo-onedoc. DO NOT EDIT. -->

# iterwindows

[![Crates.io Version](https://badgers.space/crates/version/iterwindows)](https://crates.io/crates/iterwindows)
[![Docs.rs Latest](https://badgers.space/badge/docs.rs/latest/blue)](https://docs.rs/iterwindows)
[![Build Status](https://badgers.space/github/checks/rossmacarthur/itermore?label=build)](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.