This package has been deprecated

Author message:

Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.

staack
TypeScript icon, indicating that this package has built-in type declarations

3.0.2 • Public • Published

🏯 Staack

A library to create type-safe opaque stacks

Example

// 1. Create a key with a name and a type
const NumKey = Key.create<number>('Num');

// 2. Create a stack
const stack = new Staack();

// 3. Add a value to the stack using the key (Staack is immutable, it returns a new instance)
const stack2 = stack.with(NumKey.Provider(42));

// 4. Get the value from the stack using the key
expect(stack2.get(NumKey.Consumer)).toBe(42);

Installation

npm install staack
# or
yarn add staack

Extending Staack

You can create your own Staack:

class CustomStaack extends Staack {
  // You need to override the `instantiate` method to return a new instance of your CustomStack
  protected instantiate(staackCore: StaackCoreValue): this {
    return new CustomStaack(staackCore) as any;
  }
}

const custom = new CustomStaack();
expect(custom instanceof CustomStaack).toBe(true);
expect(custom instanceof Staack).toBe(true);

Readme

Keywords

Package Sidebar

Install

npm i staack

Weekly Downloads

4

Version

3.0.2

License

MIT

Unpacked Size

23.6 kB

Total Files

6

Last publish

Collaborators

  • etienne-dldc-graveyard