Tokstyle.Cimple.Analysis.CFG
data Node Source #
A node in the Control Flow Graph.
Constructors
Defined in Tokstyle.Cimple.Analysis.CFG
Methods
(==) :: Node -> Node -> Bool #
(/=) :: Node -> Node -> Bool #
compare :: Node -> Node -> Ordering #
(<) :: Node -> Node -> Bool #
(<=) :: Node -> Node -> Bool #
(>) :: Node -> Node -> Bool #
(>=) :: Node -> Node -> Bool #
max :: Node -> Node -> Node #
min :: Node -> Node -> Node #
showsPrec :: Int -> Node -> ShowS #
show :: Node -> String #
showList :: [Node] -> ShowS #
data NodeKind Source #
showsPrec :: Int -> NodeKind -> ShowS #
show :: NodeKind -> String #
showList :: [NodeKind] -> ShowS #
data EdgeType Source #
The type of transition between nodes.
(==) :: EdgeType -> EdgeType -> Bool #
(/=) :: EdgeType -> EdgeType -> Bool #
showsPrec :: Int -> EdgeType -> ShowS #
show :: EdgeType -> String #
showList :: [EdgeType] -> ShowS #
type Edge = (EdgeType, Node) Source #
type CFG = Map Node [Edge] Source #
fromFunction :: Node (Lexeme Text) -> (Node, CFG) Source #
Build a CFG from a function definition.
getFuncName :: Node (Lexeme Text) -> Maybe Text Source #