X-Git-Url: http://git.cielonegro.org/gitweb.cgi?p=hs-rrdtool.git;a=blobdiff_plain;f=Data%2FHList%2FGraph.hs;fp=Data%2FHList%2FGraph.hs;h=c3fcf87eb750f229c85951d185a25c4814ab2038;hp=7a833ea4ec2e10eadbf9345f1ff575825610a750;hb=66d175582375d19adfa8747c9e1c468138d47583;hpb=000307857df5266907964aff4ecc9e118314fe3f diff --git a/Data/HList/Graph.hs b/Data/HList/Graph.hs index 7a833ea..c3fcf87 100644 --- a/Data/HList/Graph.hs +++ b/Data/HList/Graph.hs @@ -1,25 +1,37 @@ {-# LANGUAGE EmptyDataDecls, - FlexibleContexts, - FlexibleInstances, - MultiParamTypeClasses, TypeFamilies #-} module Data.HList.Graph - ( Graph(..) - , NodeSet - , NodeIDSet - , Node(..) - , LPath(..) + ( Context + , Graph + , Empty , IsEmpty - - , NodeIDA +-- , Match ) where import Data.HList.Prelude +import Types.Data.Bool + +-- Graph is a map from node ID to context +data Context preNodes node sucNodes +data Graph nodeMap + +-- Empty +type Empty = Graph Nil + +-- IsEmpty +type family IsEmpty g +type instance IsEmpty (Graph Nil) = True +type instance IsEmpty (Graph (Cons x xs)) = False + +-- Match +--type Match n g +-- = +{- -- NodeSet class NodeSet ns instance NodeSet Nil @@ -57,3 +69,4 @@ class ( NodeSet (Nodes g) -- IsEmpty type family IsEmpty g +-} \ No newline at end of file