binary-file-0.15.0: examples/bits.hs
{-# LANGUAGE QuasiQuotes, TypeFamilies, ScopedTypeVariables #-}
import File.Binary (binary, Field(..))
import File.Binary.Instances ()
import File.Binary.Instances.LittleEndian (BitsInt)
main :: IO ()
main = do
let (bits :: Bits, "") = fromBinary () "hello"
print bits
print (toBinary () bits :: String)
[binary|
Bits deriving Show
{Bool}: b0
{Bool}: b1
4{BitsInt}: b2345
{Bool}: b6
{Bool}: b7
{Bool}: c0
{Bool}: c1
{Bool}: c2
{Bool}: c3
{Bool}: c4
{Bool}: c5
{Bool}: c6
{Bool}: c7
((), Nothing){[Bool]}: rests
|]