punk@1: signature SFIFO where { punk@1: import ¶ConfigReg®¶; punk@1: punk@1: import ¶FIFOF_®¶; punk@1: punk@1: import ¶FIFOF®¶; punk@1: punk@1: import ¶FIFO®¶; punk@1: punk@1: import ¶List®¶; punk@1: punk@1: import ¶Monad®¶; punk@1: punk@1: import ¶RWire®¶; punk@1: punk@1: interface (SFIFO.SFIFO :: * -> * -> *) alpha_T search_T = { punk@1: SFIFO.enq :: alpha_T -> ¶Prelude®¶.¶Action®¶ {-# arg_names = [x] #-}; punk@1: SFIFO.deq :: ¶Prelude®¶.¶Action®¶ {-# arg_names = [] #-}; punk@1: SFIFO.first :: alpha_T {-# arg_names = [] #-}; punk@1: SFIFO.clear :: ¶Prelude®¶.¶Action®¶ {-# arg_names = [] #-}; punk@1: SFIFO.find :: search_T -> ¶Prelude®¶.¶Bool®¶ {-# arg_names = [x] #-}; punk@1: SFIFO.find2 :: search_T -> ¶Prelude®¶.¶Bool®¶ {-# arg_names = [x] #-} punk@1: }; punk@1: punk@1: instance SFIFO (¶Prelude®¶.¶PrimMakeUndefined®¶ alpha_T) => punk@1: ¶Prelude®¶.¶PrimMakeUndefined®¶ (SFIFO.SFIFO alpha_T search_T); punk@1: punk@1: instance SFIFO (¶Prelude®¶.¶PrimDeepSeqCond®¶ alpha_T) => punk@1: ¶Prelude®¶.¶PrimDeepSeqCond®¶ (SFIFO.SFIFO alpha_T search_T); punk@1: punk@1: instance SFIFO (¶Prelude®¶.¶PrimMakeUninitialized®¶ alpha_T) => punk@1: ¶Prelude®¶.¶PrimMakeUninitialized®¶ (SFIFO.SFIFO alpha_T search_T); punk@1: punk@1: SFIFO.mkSFIFO :: (¶Prelude®¶.¶Bits®¶ alpha_T asz, ¶Prelude®¶.¶IsModule®¶ _m__ _c__) => punk@1: (search_T -> alpha_T -> ¶Prelude®¶.¶Bool®¶) -> _m__ (SFIFO.SFIFO alpha_T search_T); punk@1: punk@1: SFIFO.mkSFIFO1 :: (¶Prelude®¶.¶Eq®¶ alpha_T, punk@1: ¶Prelude®¶.¶Bits®¶ alpha_T asz, punk@1: ¶Prelude®¶.¶IsModule®¶ _m__ _c__) => punk@1: (search_T -> alpha_T -> ¶Prelude®¶.¶Bool®¶) -> _m__ (SFIFO.SFIFO alpha_T search_T); punk@1: punk@1: SFIFO.mkSizedSFIFOInternal :: (¶Prelude®¶.¶Bits®¶ alpha_T alpha_SZ, punk@1: ¶Prelude®¶.¶IsModule®¶ _m__ _c__) => punk@1: ¶Prelude®¶.¶Integer®¶ -> punk@1: (search_T -> alpha_T -> ¶Prelude®¶.¶Bool®¶) -> punk@1: (search_T -> alpha_T -> ¶Prelude®¶.¶Bool®¶) -> _m__ (SFIFO.SFIFO alpha_T search_T); punk@1: punk@1: SFIFO.mkSizedSFIFO :: (¶Prelude®¶.¶Bits®¶ alpha_T asz, ¶Prelude®¶.¶IsModule®¶ _m__ _c__) => punk@1: ¶Prelude®¶.¶Integer®¶ -> punk@1: (search_T -> alpha_T -> ¶Prelude®¶.¶Bool®¶) -> _m__ (SFIFO.SFIFO alpha_T search_T) punk@1: }