bit-mask

1.0.2 • Public • Published

bit-mask.js

NPM version npm Travis

An NPM for manipulating bit masks

Just a convenient abstraction for computing bitmasks, such as file permissions.

var BitMask = require('bit-mask');

Bit Masks

Declare a new BitMask with an initial value

var mask = new BitMask(value, [base]);

Set a particular bit with a boolean

mask.setBit(position, value)

get the boolean value of a particular bit

mask.getBit(position)

get the bits as a string of binary digits

maks.bits()

Ownership Mask

Declare a new Ownership Mask with an initial value

var mask = new BitMask.OwnershipMask(value);

Then you have all the functions from the BitMask plus you can get the permissions in a more readable way with:

mask.hasPermission(context, permission)

where context is 'user', 'group' or 'world' and permission is 'read', 'write', 'execute' and a corresponding set:

mask.setPermission(context, permission, value)

as well as a modify function which allows you to pass chmod style modifier strings as well as integer values.

mask.modify('ugo+rwx')
mask.modify(755);

Testing

Run the tests at the project root with:

mocha

Enjoy,

-Abbey Hawk Sparrow

Versions

Current Tags

VersionDownloads (Last 7 Days)Tag
1.0.27,196latest

Version History

VersionDownloads (Last 7 Days)Published
1.0.27,196
1.0.1158
1.0.00
0.0.2-alpha9,440
0.0.1-alpha0

Package Sidebar

Install

npm i bit-mask

Weekly Downloads

16,794

Version

1.0.2

License

MIT

Unpacked Size

8.86 kB

Total Files

6

Last publish

Collaborators

  • khrome