menu

no-zero-iterator-drop

Disallow Iterator.drop with a constant zero count

Dropping zero values wraps an Iterator without changing the sequence it yields. Instead, you SHOULD use the original Iterator directly.

Reported

1import { Iterator } from "destack:iter";2 3function retain(values: Iterator<int32>): Iterator<int32> {4    return values.drop(0);5}

Accepted

1import { Iterator } from "destack:iter";2 3function retain(values: Iterator<int32>): Iterator<int32> {4    return values;5}