Skip to content

Latest commit

 

History

History

common

npm version Deno

Licence

@rimbu/common

Welcome to @rimbu/common! This package exports essential types and utilities that are widely used across various Rimbu packages. It provides a robust foundation for building efficient and reliable applications.

Overview of most important Exported Types:

Name Description
CollectFun Types and values used in various collect methods within collections.
Comp Interface and default implementations of comparison functions for ordering/sorting values.
Eq Interface and default implementations of equality functions for checking value equality.
Err Functions to easily create error-throwing behavior as fallback values.
FastIterable An Iterable implementation that offers better performance than standard iterables.
IndexRange Utilities for selecting index ranges in indexed collections.
OptLazy A utility to provide values that can optionally be lazy.
Range Utility types to specify ranges for comparable types.
Reducer An API to create reusable logic pieces that process data streams, which can be processed in parallel.
TraverseState A utility for loops to maintain traversal state.
Update A standard way to update a value.

Documentation

For complete documentation, please visit the Rimbu Docs, or directly explore the Rimbu Common API Docs.

Try It Out

Experience @rimbu/common in action! Try Out Rimbu on CodeSandBox.

Installation

Compabitity

Package Managers

Yarn:

yarn add @rimbu/common

npm:

npm install @rimbu/common

Bun:

bun add @rimbu/common

Deno Setup

Create or edit import_map.json in your project root:

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

Replace x.y.z with the desired version.

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 { Eq } from '@rimbu/common';

console.log(Eq.stringCaseInsentitive()('abc', 'AbC'));
// => true

Author

Created and maintained by Arvid Nicolaas.

Contributing

We welcome contributions! Please read our Contributing guide.

Contributors

Made with contributors-img.

License

This project is licensed under the MIT License. See the LICENSE for details.