Socket
Socket
Sign inDemoInstall

cp-data

Package Overview
Dependencies
0
Maintainers
1
Versions
4
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    cp-data

cp-data is a JavaScript library for some common data structures


Version published
Maintainers
1
Install size
16.7 kB
Created

Readme

Source

cp-data

cp-data is a JavaScript library for some common data structures. Currently this includes a fast Set implementation and a PriorityQueue.

Build Status

Getting cp-data

NPM Install

Before installing this library you need to install the npm package manager.

To get cp-data from npm, use:

$ npm install cp-data

Browser Scripts

You can get the latest browser-ready scripts:

Build From Source

Before building this library you need to install the npm package manager.

Check out this project and run this command from the root of the project:

$ make

This will generate cp-data.js and cp-data.min.js in the out/dist directory of the project.

Set Example

var Set = require('cp-data').Set;

var s1 = new Set();

s1.has(1);
// => false

s1.add(1);
// => true

s1.size();
// => 1

s1.has(1);
// => true

// Addind a key that is already in the set does not change the set. The
// function returns `false` to indicate nothing changed.
s1.add(1);
// => false

s1.size();
// => 1

s1.add(2);
s1.size();
// => 2

// We can construct a set from an array
var s2 = new Set([2, 3, 4]);

s2.keys();
// => [2, 3, 4]

// Intersection:
Set.intersect([s1, s2]).keys();
// => [2]

// Union:
Set.union([s1, s2]).keys();
// => [1, 2, 3, 4]

// We can also do set intersection / union with arrays:
Set.intersect([[1, 2, 3], [2, 3, 4]]).keys();
// => [2, 3]

// We can do set intersection / union with more that 2 sets:
Set.union([s1, s2, ['a', 'b', 'c']]).keys();
// => [1, 2, 3, 4, 'a', 'b', 'c']

// Lastly, sets preserve the type of the key supplied. Compare the following 2
// results:
new Set([1]).keys();
// => [1]
new Set(['1']).keys();
// => ['1']

License

cp-data is licensed under the terms of the MIT License. See the LICENSE file for details.

Keywords

FAQs

Last updated on 31 Jan 2014

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc