summaryrefslogtreecommitdiff
path: root/src/Grasp/Monad.hs
diff options
context:
space:
mode:
Diffstat (limited to 'src/Grasp/Monad.hs')
-rw-r--r--src/Grasp/Monad.hs14
1 files changed, 13 insertions, 1 deletions
diff --git a/src/Grasp/Monad.hs b/src/Grasp/Monad.hs
index 86de9a2..0bab4c8 100644
--- a/src/Grasp/Monad.hs
+++ b/src/Grasp/Monad.hs
@@ -13,7 +13,7 @@ module Grasp.Monad (
peekIP,
nextIP,
- nodesOut, edgesOut,
+ nodesOut, edgesOut, edgesIn,
reLabel,
nodesWithName,
subGraph,
@@ -331,6 +331,18 @@ edgesOut n = do
+edgesIn :: GNode -> GraspM [GEdge]
+edgesIn n = do
+ (gr, ips, fh) <- State.get
+ curNode <- peekIP
+
+ let ein = Graph.inn gr (GN.toNode (Maybe.fromJust curNode))
+ result = map GE.mk ein
+
+ if (Maybe.isNothing curNode) then return [] else return result
+
+
+
reLabel :: Instruction -> GNode -> GraspM ()
reLabel i n = do
(gr, ips, fh) <- State.get