mirror of
https://github.com/urbit/shrub.git
synced 2024-12-24 11:24:21 +03:00
king: fix actual perf problem: crufty LargeKey math in Packet.hs
This commit is contained in:
parent
c05b5ecdc0
commit
bb793e0d96
@ -158,8 +158,8 @@ instance Serialize Packet where
|
||||
putByteString body
|
||||
|
||||
where
|
||||
putShipGetRank s@(Ship (LargeKey p q)) = case () of
|
||||
_ | s < 2 ^ 16 -> (0, putWord16le $ fromIntegral s) -- lord
|
||||
| s < 2 ^ 32 -> (1, putWord32le $ fromIntegral s) -- planet
|
||||
| s < 2 ^ 64 -> (2, putWord64le $ fromIntegral s) -- moon
|
||||
| otherwise -> (3, putWord64le p >> putWord64le q) -- comet
|
||||
putShipGetRank (Ship (LargeKey p q)) = case q of
|
||||
0 | p < 2 ^ 16 -> (0, putWord16le $ fromIntegral p) -- lord
|
||||
| p < 2 ^ 32 -> (1, putWord32le $ fromIntegral p) -- planet
|
||||
| otherwise -> (2, putWord64le $ fromIntegral p) -- moon
|
||||
_ -> (3, putWord64le p >> putWord64le q) -- comet
|
||||
|
Loading…
Reference in New Issue
Block a user