combin-iterator 0.2.0

Some usefull facilities for combining iterators
Documentation
# combin-iterator

The combin-iterator crate provides a set of combinators for creating iterators through combinations of existing iterators. It aims to simplify the process of composing and chaining iterators to create more complex iteration patterns.

## Features

Combinator Macros: Use convenient macros to combine multiple iterators and create complex iteration sequences.

Round-Robin Alternation: Use the Altern iterator to alternate between elements produced by multiple iterators in a round-robin fashion.

Note: This crate is currently in development, and only little features are yet available.

## Usage

```rust
use combin_iterator::altern;
use combin_iterator::altern::AlternWith;

fn main() {
    let vec1 = vec![1, 4, 7, 9];
    let vec2 = vec![2, 5];
    let vec3 = vec![3, 6, 8];

    // Use the altern! macro for alternating iteration
    let altern_iter = altern!(vec1.iter(), vec2.iter(), vec3.iter());

    // Iterate over the elements
    for element in altern_iter {
        println!("{}", element);
    } // Print: 1 2 3 5 6 7 8 9

    // Or use the AlternWith trait (i.e. combin_iterator::altern::BiAltern)
    let trait_iter = vec1.iter().altern_with(vec2.iter());

    // Iterate over the elements
    for element in trait_iter {
        println!("{}", element);
    } // Print: 1 2 4 5 7 9
}
```

## Changelog



## Installation

Add the following dependency to your Cargo.toml:
```text
[dependencies]
combin-iterator = "0.2.0"
```

## License

This project is licensed under the MIT License or Apache 2.0 - see the LICENSE file for details.

## Contribution

Contributions are welcome! If you have any ideas, suggestions, or bug reports, please open an issue or submit a pull request.

Happy Iterating with combin-iterator!