2.2.0 • Published 2 months ago

@rimbu/stream v2.2.0

Weekly downloads
-
License
MIT
Repository
github
Last release
2 months ago

npm version Deno

Licence

@rimbu/stream

A Stream is an Iterable-like structure that represents a source that can stream values when requested. The source is unspecified, it may be a materialized object (e.g. an Array), or a calculated sequence (e.g. the fibonacci numbers). However, unlike an Iterable, a Stream offers many methods to change the values produced by the Stream, before it is consumed, without the need to materialize intermediate instances.

This package exports the following main types:

NameDescription
FastIterable<T>an Iterable that supports faster iterating than the Iterable type
FastIterator<T>an Iterator that supports faster iterating than the Iterator type
Stream<T>an Iterable-like structure that represents a source that can produce values of type T when requested
Streamable<T>an interface requiring that an object has a .stream() method
StreamSource<T>a convenience type that covers all types that can be automatically converted to a Stream

For complete documentation please visit the Stream page in the Rimbu Docs, or directly see the Rimbu Stream API Docs.

Or Try Out Rimbu in CodeSandBox.

Installation

Compabitity

Yarn / NPM / Bun

For convenience, all main types are also exported through @rimbu/core.

To install this package only:

For yarn:

yarn add @rimbu/stream

For npm:

npm i @rimbu/stream

For bun:

bun add @rimbu/stream

Deno

For Deno, the following approach is recommended:

In the root folder of your project, create or edit a file called import_map.json with the following contents (where you should replace x.y.z with the desired version of Rimbu):

{
  "imports": {
    "@rimbu/": "https://deno.land/x/rimbu@x.y.z/"
  }
}

Note: The trailing slashes are important!

In this way you can use relative imports from Rimbu in your code, like so:

import { List } from '@rimbu/core/mod.ts';
import { HashMap } from '@rimbu/hashed/mod.ts';

Note that for sub-packages, due to conversion limitations it is needed to import the index.ts instead of mod.ts, like so:

import { HashMap } from '@rimbu/hashed/map/index.ts';

To run your script (let's assume the entry point is in src/main.ts):

deno run --import-map import_map.json src/main.ts

Usage

import { Stream } from '@rimbu/stream';

console.log(Stream.range({ start: 10, amount: 15 }).toArray());

Author

Arvid Nicolaas

Contributing

Feel very welcome to contribute to further improve Rimbu. Please read our Contributing guide.

Contributors

Made with contributors-img.

License

Licensed under the MIT License, Copyright © 2020-present Arvid Nicolaas.

See LICENSE for more information.

2.2.0

2 months ago

2.1.0

3 months ago

2.0.0

3 months ago

1.1.1

5 months ago

1.0.0

10 months ago

1.0.0-alpha.2

10 months ago

1.0.0-alpha.1

10 months ago

1.1.0

10 months ago

0.13.6

12 months ago

0.13.5

1 year ago

0.13.1

1 year ago

0.13.2

1 year ago

0.13.3

1 year ago

0.13.4

1 year ago

0.13.0

1 year ago

0.12.6

2 years ago

0.12.4

2 years ago

0.12.5

2 years ago

0.12.1

2 years ago

0.12.2

2 years ago

0.12.3

2 years ago

0.10.9

2 years ago

0.11.0

2 years ago

0.12.0

2 years ago

0.10.2

2 years ago

0.10.3

2 years ago

0.10.4

2 years ago

0.10.10

2 years ago

0.10.5

2 years ago

0.10.11

2 years ago

0.10.6

2 years ago

0.10.12

2 years ago

0.10.7

2 years ago

0.10.8

2 years ago

0.10.0

2 years ago

0.10.1

2 years ago

0.9.0

2 years ago

0.8.1

2 years ago

0.8.0

2 years ago

0.8.2

2 years ago

0.7.5

3 years ago

0.7.4

3 years ago

0.7.3

3 years ago

0.7.2

3 years ago

0.7.1

3 years ago

0.7.0

3 years ago

0.6.1

3 years ago

0.6.0

3 years ago

0.5.11

3 years ago

0.5.10

3 years ago

0.5.10-alpha.0

3 years ago

0.5.9

3 years ago

0.5.8

3 years ago

0.5.7

3 years ago

0.5.5

3 years ago

0.5.4

3 years ago