package Bus(a) where import Types import BusTypes interface (TestType :: * -> *) t = {} -- doSomething :: t -> Action mkTestType :: (Bits t n, Arith t, Eq t) => Module (TestType t) mkTestType = do return $ interface TestType {} mkTestTop :: Module Empty mkTestTop = do testType :: TestType (UInt 5) testType <- mkTestType return $ interface Empty { } a :: UInt 5 a = 3