Crates.io | enumerate-split |
lib.rs | enumerate-split |
version | 0.0.1 |
source | src |
created_at | 2016-05-16 09:22:38.250625 |
updated_at | 2016-05-16 09:22:38.250625 |
description | 2 dimensional version of Enumerate from the standard library |
homepage | |
repository | https://github.com/derekdreery/enumerate-split |
max_upload_size | |
id | 5084 |
size | 4,245 |
Like enumerate, but splits into blocks based on some value (like '\n'
for
lines) and gives the block number and the block position as (usize, usize)
[dependencies]
enumerate-split = "0.0.1"
use enumerate_split::enumerate_split;
let mut input = enumerate_split("Some \n\nstring with a newline".chars(), '\n');
assert_eq!(input.next(), Some(('S', (0, 0))));
assert_eq!(input.next(), Some(('o', (0, 1))));
assert_eq!(input.next(), Some(('m', (0, 2))));
assert_eq!(input.next(), Some(('e', (0, 3))));
assert_eq!(input.next(), Some((' ', (0, 4))));
assert_eq!(input.next(), Some(('\n', (0, 5))));
assert_eq!(input.next(), Some(('\n', (1, 0))));
assert_eq!(input.next(), Some(('s', (2, 0))))