dds/graph-typed.rkt

17 lines
586 B
Racket

#lang typed/racket
;;; Slap types on some graph functions.
(require/typed/provide graph
[#:opaque Graph graph?]
[graphviz (-> Graph
[#:output Output-Port]
[#:colors (HashTable Any Natural)]
String)]
[unweighted-graph/directed (-> (Listof (List Any Any)) Graph)]
[in-edges (-> Graph (Sequenceof Any))]
[directed-graph (->* ((Listof (List Any Any))) ((Listof Any)) Graph)]
[undirected-graph (->* ((Listof (List Any Any))) ((Listof Any)) Graph)]
[has-vertex? (-> Graph Any Boolean)]
[has-edge? (-> Graph Any Any Boolean)])