2.0.2 • Published 2 months ago

@rimbu/proximity v2.0.2

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

npm version Deno

Licence

@rimbu/proximity

This package contains all Rimbu proximity-based collections - especially the ProximityMap type. The collections use a configurable DistanceFunction to determine the proximity of values/objects.

This package exports the following main types:

NameDescription
ProximityMap<K, V>a map with entries of key type K and value type V, where keys are compared via a DistanceFunction

For complete documentation please visit the Map page Rimbu Docs, or directly see the Rimbu Proximity API Docs.

Or Try Out Rimbu in CodeSandBox.

Installation

Compabitity

Yarn / NPM / Bun

To install this package only:

For yarn:

yarn add @rimbu/proximity

For npm:

npm i @rimbu/proximity

For bun:

bun add @rimbu/proximity

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

console.log(
  ProximityMap.from([
    [1, 'A'],
    [2, 'B'],
  ]).toString()
);

Author

Arvid Nicolaas

Gianluca Costa

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.