本文整理匯總了TypeScript中@tempest/core.Stream類的典型用法代碼示例。如果您正苦於以下問題:TypeScript Stream類的具體用法?TypeScript Stream怎麽用?TypeScript Stream使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。
在下文中一共展示了Stream類的9個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的TypeScript代碼示例。
示例1: it
it ('should remember the last value for a late subscriber', (done) => {
const stream = new Stream<number>({
run (sink: Sink<number>, scheduler: Scheduler) {
let i = -1
const interval = setInterval(() => {
sink.event(scheduler.now(), ++i)
}, 50)
return {
dispose () {
clearInterval(interval)
}
}
}
})
const rstream = remember(stream)
stream.subscribe()
setTimeout(() => {
rstream.subscribe((x: number) => {
assert(x === 1)
done()
})
}, 80)
})
示例2: it
it ('should be curried', (done) => {
const predicate = (x: number) => x > 2
const greaterThan2 = filter(predicate)
const stream: Stream<number> = greaterThan2(Stream.of(1, 2, 3))
const expected = [3]
stream.subscribe((x: number) => {
assert(x === expected.shift())
}, done, () => done())
})
示例3: it
it ('should create a stream from a Promise', (done) => {
const promise: Promise<number> = Promise.resolve<number>(123)
const stream: Stream<number> = fromPromise(promise)
const expected = [123]
stream.subscribe((x: number) => {
assert(x === expected.shift())
}, done, () => done())
})
示例4: it
it ('should create a stream of incrementing numbers', (done) => {
const stream: Stream<number> = periodic(100)
const expected = [0, 1, 2, 3]
const sub = stream.subscribe((x) => {
assert(x === expected.shift())
if (expected.length === 0) {
sub.unsubscribe()
done()
}
})
})
示例5: it
it ('should only emit the last value of a stream', (done) => {
const stream = last(Stream.from([1, 2, 3]))
const expected = [3]
stream.subscribe((value) => {
assert(value === expected.shift())
}, done, () => done())
})
示例6: it
it ('should merge multiple streams into 1', (done) => {
const stream = merge([
Stream.of(1),
Stream.of(2),
Stream.of(3)
])
const expected = [1, 2, 3]
stream.subscribe((x) => {
assert(x === expected.shift())
}, done, () => {
assert(expected.length === 0)
done()
})
})
示例7: it
it ('should accumulate values over time', (done) => {
const stream = fold((x, y) => x + y, 0, Stream.of(1, 1, 1))
const expected = [0, 1, 2, 3]
stream.subscribe((x) => {
assert(x === expected.shift())
}, done, () => done())
})
示例8: it
it ('should take n events and end', (done) => {
const stream = take(1, Stream.of(1, 2, 3))
const expected = [1]
stream.subscribe((x: number) => {
assert(x === expected.shift())
}, done, () => done())
})
示例9: it
it ('should drop first n events', (done) => {
const stream = drop(1, Stream.of(1, 2, 3))
const expected = [2, 3]
stream.subscribe((x: number) => {
assert(x === expected.shift())
}, done, () => done())
})