mirror of
https://github.com/golang/go
synced 2024-09-24 23:10:12 -06:00
gob: slightly simpler code for encodeUint
R=r CC=golang-dev https://golang.org/cl/5077047
This commit is contained in:
parent
d16ceca5c5
commit
91a48115bb
@ -59,15 +59,14 @@ func (state *encoderState) encodeUint(x uint64) {
|
||||
}
|
||||
return
|
||||
}
|
||||
var n, m int
|
||||
m = uint64Size
|
||||
for n = 1; x > 0; n++ {
|
||||
state.buf[m] = uint8(x)
|
||||
i := uint64Size
|
||||
for x > 0 {
|
||||
state.buf[i] = uint8(x)
|
||||
x >>= 8
|
||||
m--
|
||||
i--
|
||||
}
|
||||
state.buf[m] = uint8(-(n - 1))
|
||||
n, err := state.b.Write(state.buf[m : uint64Size+1])
|
||||
state.buf[i] = uint8(i - uint64Size) // = loop count, negated
|
||||
_, err := state.b.Write(state.buf[i : uint64Size+1])
|
||||
if err != nil {
|
||||
error(err)
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user