diff options
author | Camil Staps | 2016-07-01 19:37:38 +0200 |
---|---|---|
committer | Camil Staps | 2016-07-01 19:37:38 +0200 |
commit | b3f1e3ff0404a5182b6eed2d88014b4b4fbd69c2 (patch) | |
tree | c2dbd5b0a43fffc6119510bdc2f5324aa3a0e3b5 /ABC/Nodes.dcl | |
parent | Assembler (diff) |
Moved to directory, added test program
Diffstat (limited to 'ABC/Nodes.dcl')
-rw-r--r-- | ABC/Nodes.dcl | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/ABC/Nodes.dcl b/ABC/Nodes.dcl new file mode 100644 index 0000000..9edd604 --- /dev/null +++ b/ABC/Nodes.dcl @@ -0,0 +1,27 @@ +definition module ABC.Nodes + +from ABC.Def import ::ArgNr, ::Arity, ::NodeId, ::InstrId, ::Args, ::DescId, ::NrArgs +from ABC.BStack import ::Basic + +:: Node = Node DescId InstrId Args + | Basic DescId InstrId Basic + | Empty + +n_arg :: Node ArgNr Arity -> NodeId +n_args :: Node Arity -> [NodeId] +n_arity :: Node -> Arity +n_B :: Node -> Bool +n_I :: Node -> Int +n_copy :: Node Node -> Node +n_descid :: Node -> DescId +n_entry :: Node -> InstrId +n_eq_arity :: Node Arity -> Bool +n_eq_B :: Node Bool -> Bool +n_eq_descid :: Node DescId -> Bool +n_eq_I :: Node Int -> Bool +n_eq_symbol :: Node Node -> Bool +n_fill :: DescId InstrId Args Node -> Node +n_fillB :: DescId InstrId Bool Node -> Node +n_fillI :: DescId InstrId Int Node -> Node +n_nargs :: Node NrArgs Arity -> [NodeId] +n_setentry :: InstrId Node -> Node |