Mercurial > pygar
annotate core/sim/bdir_dut/Trace.bi @ 1:91a1f76ddd62 pygar svn.2
[svn r2] Adding initial lab 5 source
author | punk |
---|---|
date | Tue, 13 Apr 2010 17:34:33 -0400 |
parents | |
children |
rev | line source |
---|---|
punk@1 | 1 signature Trace where { |
punk@1 | 2 import ¶Counter®¶; |
punk@1 | 3 |
punk@1 | 4 import ¶FIFOF_®¶; |
punk@1 | 5 |
punk@1 | 6 import ¶FIFOF®¶; |
punk@1 | 7 |
punk@1 | 8 import ¶FIFO®¶; |
punk@1 | 9 |
punk@1 | 10 import ¶Inout®¶; |
punk@1 | 11 |
punk@1 | 12 import ¶List®¶; |
punk@1 | 13 |
punk@1 | 14 import ¶Clocks®¶; |
punk@1 | 15 |
punk@1 | 16 import ¶ListN®¶; |
punk@1 | 17 |
punk@1 | 18 import ¶PrimArray®¶; |
punk@1 | 19 |
punk@1 | 20 import ¶Vector®¶; |
punk@1 | 21 |
punk@1 | 22 import ¶Connectable®¶; |
punk@1 | 23 |
punk@1 | 24 import ¶GetPut®¶; |
punk@1 | 25 |
punk@1 | 26 import ¶ClientServer®¶; |
punk@1 | 27 |
punk@1 | 28 class (Trace.Traceable :: * -> *) item_t where { |
punk@1 | 29 Trace.traceTiny :: ¶Prelude®¶.¶String®¶ -> |
punk@1 | 30 ¶Prelude®¶.¶String®¶ -> item_t -> ¶Prelude®¶.¶Action®¶ {-# arg_names = [loc, traceTag, item] #-}; |
punk@1 | 31 Trace.traceFull :: ¶Prelude®¶.¶String®¶ -> |
punk@1 | 32 ¶Prelude®¶.¶String®¶ -> item_t -> ¶Prelude®¶.¶Action®¶ {-# arg_names = [loc, traceTag, item] #-} |
punk@1 | 33 }; |
punk@1 | 34 |
punk@1 | 35 instance Trace Trace.Traceable ¶Prelude®¶.¶String®¶; |
punk@1 | 36 |
punk@1 | 37 instance Trace Trace.Traceable (¶Prelude®¶.¶Bit®¶ n); |
punk@1 | 38 |
punk@1 | 39 Trace.traceGet :: (Trace.Traceable item_t) => |
punk@1 | 40 ¶Prelude®¶.¶String®¶ -> ¶Prelude®¶.¶String®¶ -> ¶GetPut®¶.¶Get®¶ item_t -> ¶GetPut®¶.¶Get®¶ item_t; |
punk@1 | 41 |
punk@1 | 42 Trace.tracePut :: (Trace.Traceable item_t) => |
punk@1 | 43 ¶Prelude®¶.¶String®¶ -> ¶Prelude®¶.¶String®¶ -> ¶GetPut®¶.¶Put®¶ item_t -> ¶GetPut®¶.¶Put®¶ item_t; |
punk@1 | 44 |
punk@1 | 45 Trace.traceClient :: (Trace.Traceable resp_t, Trace.Traceable req_t) => |
punk@1 | 46 ¶Prelude®¶.¶String®¶ -> |
punk@1 | 47 ¶Prelude®¶.¶String®¶ -> |
punk@1 | 48 ¶Prelude®¶.¶String®¶ -> |
punk@1 | 49 ¶ClientServer®¶.¶Client®¶ req_t resp_t -> ¶ClientServer®¶.¶Client®¶ req_t resp_t; |
punk@1 | 50 |
punk@1 | 51 Trace.traceServer :: (Trace.Traceable resp_t, Trace.Traceable req_t) => |
punk@1 | 52 ¶Prelude®¶.¶String®¶ -> |
punk@1 | 53 ¶Prelude®¶.¶String®¶ -> |
punk@1 | 54 ¶Prelude®¶.¶String®¶ -> |
punk@1 | 55 ¶ClientServer®¶.¶Server®¶ req_t resp_t -> ¶ClientServer®¶.¶Server®¶ req_t resp_t |
punk@1 | 56 } |