diff --git a/src/misc.rs b/src/misc.rs index 0a6b0ea..6573271 100644 --- a/src/misc.rs +++ b/src/misc.rs @@ -27,14 +27,12 @@ where output } -pub fn diag( - i: usize, - j: usize, - min_i: usize, - min_j: usize, - max_i: usize, - max_j: usize, -) -> Vec> { +pub fn diag(i: T, j: T, min_i: T, min_j: T, max_i: T, max_j: T) -> Vec> +where + T: num::Integer + Copy, + RangeInclusive: Iterator + DoubleEndedIterator, + Rev>: Iterator, +{ let i_chains = split_from(min_i, max_i, i); let j_chains = split_from(min_j, max_j, j);