side-channel-list (1.0.0)
Published 2026-02-24 14:05:04 +00:00 by atheaadmin
Installation
registry=npm install side-channel-list@1.0.0"side-channel-list": "1.0.0"About this package
side-channel-list 
Store information about any JS value in a side channel, using a linked list.
Warning: this implementation will leak memory until you delete the key.
Use side-channel for the best available strategy.
Getting started
npm install --save side-channel-list
Usage/Examples
const assert = require('assert');
const getSideChannelList = require('side-channel-list');
const channel = getSideChannelList();
const key = {};
assert.equal(channel.has(key), false);
assert.throws(() => channel.assert(key), TypeError);
channel.set(key, 42);
channel.assert(key); // does not throw
assert.equal(channel.has(key), true);
assert.equal(channel.get(key), 42);
channel.delete(key);
assert.equal(channel.has(key), false);
assert.throws(() => channel.assert(key), TypeError);
Tests
Clone the repo, npm install, and run npm test
Dependencies
Dependencies
| ID | Version |
|---|---|
| es-errors | ^1.3.0 |
| object-inspect | ^1.13.3 |
Development Dependencies
| ID | Version |
|---|---|
| @arethetypeswrong/cli | ^0.17.1 |
| @ljharb/eslint-config | ^21.1.1 |
| @ljharb/tsconfig | ^0.2.2 |
| @types/object-inspect | ^1.13.0 |
| @types/tape | ^5.6.5 |
| auto-changelog | ^2.5.0 |
| eclint | ^2.8.1 |
| encoding | ^0.1.13 |
| eslint | =8.8.0 |
| evalmd | ^0.0.19 |
| in-publish | ^2.0.1 |
| npmignore | ^0.3.1 |
| nyc | ^10.3.2 |
| safe-publish-latest | ^2.0.0 |
| tape | ^5.9.0 |
| typescript | next |
