MCPcopy Create free account
hub / github.com/Monibuca/engine / WriteBits64

Method WriteBits64

util/bits/bits.go:70–85  ·  view source on GitHub ↗
(bits uint64, n int)

Source from the content-addressed store, hash-verified

68}
69
70func (self *Writer) WriteBits64(bits uint64, n int) (err error) {
71 if self.n+n > 64 {
72 move := uint(64 - self.n)
73 mask := bits >> move
74 self.bits = (self.bits << move) | mask
75 self.n = 64
76 if err = self.FlushBits(); err != nil {
77 return
78 }
79 n -= int(move)
80 bits ^= (mask << move)
81 }
82 self.bits = (self.bits << uint(n)) | bits
83 self.n += n
84 return
85}
86
87func (self *Writer) WriteBits(bits uint, n int) (err error) {
88 return self.WriteBits64(uint64(bits), n)

Callers 2

WriteBitsMethod · 0.95
WriteMethod · 0.95

Calls 1

FlushBitsMethod · 0.95

Tested by

no test coverage detected