mightyplow 4436982669 1.1.2 | před 5 roky | |
---|---|---|
src | před 5 roky | |
tests | před 5 roky | |
.gitignore | před 5 roky | |
README.md | před 5 roky | |
package-lock.json | před 5 roky | |
package.json | před 5 roky |
Utilites to manipulate single bits in a sequence of bits. This can be used to store specific boolean flags in a memory saving manor.
npm i @mightyplow/flags
Sets one or multiple flags on a sequence of bits.
Unsets one or multiple flags on a sequence of bits.
Checks one or multiple flags on a sequence of bits. Returns true, when all requested bits are set to 1.
Inverts one or multiple flags on a sequence of bits.
import { set } from '@mightyplow/flags'
const Option = {
foo: 2 ** 0,
bar: 2 ** 1,
baz: 2 ** 2
}
const base = 0b000;
console.log(set([Option.foo, Option.baz], base).toSting(2)) // "101"
import { isset } from '@mightyplow/flags'
const Option = {
foo: 2 ** 0,
bar: 2 ** 1,
baz: 2 ** 2
}
const hasFooAndBaz = (flags) => isset([Option.foo, Option.baz], flags)
console.log(hasFooAndBaz(0b101)) // true
console.log(hasFooAndBaz(0b001)) // false