diff options
author | Yann Herklotz <ymherklotz@gmail.com> | 2018-12-22 11:35:32 +0000 |
---|---|---|
committer | Yann Herklotz <ymherklotz@gmail.com> | 2018-12-22 11:35:32 +0000 |
commit | b5202e97fe669dfa10ec15cc39f9c7f250bcefc5 (patch) | |
tree | 57dbe1150acdd89f4465fc14706f53b97611f4e3 /src/Test/VeriFuzz/Graph/CodeGen.hs | |
parent | 73514c6500c6431406313ee7db665dd5e64286ee (diff) | |
download | verismith-b5202e97fe669dfa10ec15cc39f9c7f250bcefc5.tar.gz verismith-b5202e97fe669dfa10ec15cc39f9c7f250bcefc5.zip |
Add more functions to the code generation
Diffstat (limited to 'src/Test/VeriFuzz/Graph/CodeGen.hs')
-rw-r--r-- | src/Test/VeriFuzz/Graph/CodeGen.hs | 13 |
1 files changed, 3 insertions, 10 deletions
diff --git a/src/Test/VeriFuzz/Graph/CodeGen.hs b/src/Test/VeriFuzz/Graph/CodeGen.hs index 43fee25..8d20a71 100644 --- a/src/Test/VeriFuzz/Graph/CodeGen.hs +++ b/src/Test/VeriFuzz/Graph/CodeGen.hs @@ -21,15 +21,9 @@ import Data.Graph.Inductive (Graph, LNode, Node, indeg, import Data.Maybe (fromMaybe) import Data.Text (Text, empty, pack) import Test.VeriFuzz.Circuit +import Test.VeriFuzz.Internal.Gen import Test.VeriFuzz.Internal.Shared -fromNode :: Node -> Text -fromNode node = pack $ "w" <> show node - -filterGr :: (Graph gr) => gr n e -> (Node -> Bool) -> [Node] -filterGr graph f = - filter f $ nodes graph - toOperator :: Gate -> Text toOperator And = " & " toOperator Or = " | " @@ -61,7 +55,6 @@ generate graph = <> "$display(\"Hello, world\");\n $finish;\n " <> "end\nendmodule" where - zero fun1 fun2 n = fun1 graph n == 0 && fun2 graph n /= 0 - inp = filterGr graph $ zero indeg outdeg - out = filterGr graph $ zero outdeg indeg + inp = inputs graph + out = outputs graph imap b e = fmap ((\s -> b <> s <> e) . fromNode) |