Skip to content

lit-technology/bit-ranges

Repository files navigation

Bit Ranges

BuildStatus Widget CodeCov Widget GoReport Widget GoDoc Widget

Library for setting and unsetting n least significant bits as ranges, and merging intersecting ranges.

Usage

import (
	"github.com/philip-bui/bit-ranges"
)

func main() {
	l, h := bits.RangeUint64(5, 777) // 1100001001.
	// l = 768, 1100000000.
	// h = 799, 1100011111.
	arr := bits.RangesUint64(5, 700, 799, 777, 768, 800, 77)
	// arr = [831, 768, 703, 672, 95, 64]. Arr will always be even amount (pairs).
}

License

Bit Ranges is available under the MIT license. See LICENSE for details.

About

(Un)setting n least significant bits and merging intersecting number ranges.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •