Package Exports
- @rimbu/hashed
- @rimbu/hashed/common
- @rimbu/hashed/map
- @rimbu/hashed/map-custom
- @rimbu/hashed/set
- @rimbu/hashed/set-custom
Readme
@rimbu/hashed
Welcome to @rimbu/hashed! This package provides robust implementations for HashMap and HashSet, forming the backbone of all Rimbu Hashed collections. These collections use a configurable Hasher instance to determine the equality of values/objects, ensuring efficient and reliable data management.
Key Features:
- Configurable Hashing: Use a
Hasherinstance to customize how keys and values are hashed. - Efficient Lookups: Optimized for fast retrieval and manipulation of data.
- Versatile Collections: Suitable for a wide range of applications requiring hashed data structures.
Exported Types:
| Name | Description |
|---|---|
HashMap<K, V> |
A map with entries of key type K and value type V, where keys are hashed with a Hasher. |
HashSet<T> |
A set of value type T where items are hashed with a Hasher. |
Documentation
For complete documentation, please visit the Map or Set pages in the Rimbu Docs, or directly explore the Rimbu Hashed API Docs.
Try It Out
Experience @rimbu/hashed in action! Try Out Rimbu on CodeSandBox.
Installation
Compabitity
Package Managers
Yarn:
yarn add @rimbu/hashednpm:
npm install @rimbu/hashedBun:
bun add @rimbu/hashedDeno 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 { HashSet } from '@rimbu/hashed';
console.log(HashSet.of(1, 3, 2, 4, 3, 1).toString());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.