@basic-streams/take-while

takeWhile operator for basic-streams

Usage no npm install needed!

<script type="module">
  import basicStreamsTakeWhile from 'https://cdn.skypack.dev/@basic-streams/take-while';
</script>

README

@basic-streams/take-while

takeWhile<T>(predicate: (x: T) => boolean, stream: Stream<T>): Stream<T>

Creates a stream containing each value from the given stream up until the first value x for which predicate(x) returns false.

import ofMany from "@basic-streams/of-many"
import takeWhile from "@basic-streams/take-while"

const stream = ofMany([0, 1, 2, 1], 5000)

const result = takeWhile(x => x < 2, stream)

result(x => {
  console.log(x)
})

// > 0
// > 1

// stream: ____0____1____2!
// result: ____0____1