X-Git-Url: https://git.stderr.nl/gitweb?a=blobdiff_plain;f=Bits.hs;fp=Bits.hs;h=435b04e1efc5cb0292b345111f5584a694cf2521;hb=8d8e5446f4558cd5bfbd78f3378e6cf96a9c3fc8;hp=b50430af9644553c657e6d6bb5ff5f95e1d69ad8;hpb=6fcd2ccf28d4b34eca94eb868ecac83cc5a2c144;p=matthijs%2Fmaster-project%2Fc%CE%BBash.git diff --git a/Bits.hs b/Bits.hs index b50430a..435b04e 100644 --- a/Bits.hs +++ b/Bits.hs @@ -1,9 +1,10 @@ -{-# LANGUAGE FlexibleContexts,GADTs,ExistentialQuantification,LiberalTypeSynonyms #-} +{-# LANGUAGE FlexibleContexts,GADTs,ExistentialQuantification,LiberalTypeSynonyms,TemplateHaskell #-} module Bits where import qualified Data.Param.TFVec as TFVec import qualified Types +import Language.Haskell.TH.Lift --class Signal a where -- hwand :: a -> a -> a @@ -46,6 +47,8 @@ displaysig Low = "0" data Bit = High | Low deriving (Show, Eq, Read) +$(deriveLift1 ''Bit) + -- A function to prettyprint a bitvector --displaysigs :: (Signal s) => [s] -> String