feat: add isEmpty method to Sequence class with efficient early-termination check

This commit is contained in:
Bob Nystrom
2015-06-30 13:52:29 +00:00
parent d04e6a61a6
commit 1dc1c4e2bf
4 changed files with 21 additions and 0 deletions
+10
View File
@@ -0,0 +1,10 @@
IO.print([].isEmpty) // expect: true
IO.print([1].isEmpty) // expect: false
class InfiniteSequence is Sequence {
iterate(iterator) { true }
iteratorValue(iterator) { iterator }
}
// Should not try to iterate the whole sequence.
IO.print((new InfiniteSequence).isEmpty) // expect: false