Mischief.ECS.Graph
data Graph a Source #
Constructors
Fields
newGraph :: IO (Graph a) Source #
addNode :: Ord a => a -> Graph a -> IO Int Source #
setNode :: a -> Int -> Graph a -> IO () Source #
tryGetNode :: Ord a => a -> Graph a -> IO (Maybe Int) Source #
getOrAddNode :: Ord a => a -> Graph a -> IO Int Source #
addEdge :: Ord a => (a, a) -> Graph a -> IO () Source #
takeRemoveableNodes :: IOVec (Maybe a, Set Int) -> IO [a] Source #
getNodes :: Graph a -> IO [[a]] Source #