day16: make decoder more readable
This commit is contained in:
parent
6b8ddc0f16
commit
ba470a933d
|
|
@ -42,6 +42,7 @@ decode p = decode' typeID $ drop 6 p where
|
|||
decodeLit [] = error "trying to decode an empty list"
|
||||
decodeLit (False:ps) = splitAt 4 ps
|
||||
decodeLit (True:ps) = let (next,rem) = decodeLit (drop 4 ps) in (take 4 ps ++ next, rem)
|
||||
|
||||
decode' :: Int -> [Bool] -> (DecodedPacket, [Bool])
|
||||
decode' 4 p = let (num, rem) = decodeLit p in (Lit version typeID (binToDec num), rem)
|
||||
decode' x [] = error "unexpected end-of-packet"
|
||||
|
|
|
|||
Loading…
Reference in New Issue