Changeset 12742 for trunk/Static/DevGraph.hs
- Timestamp:
- 27.10.2009 15:43:56 (5 months ago)
- Files:
-
- 1 modified
-
trunk/Static/DevGraph.hs (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/Static/DevGraph.hs
r12615 r12742 170 170 hasOpenGoals = hasSenKind (\ s -> not (isAxiom s) && not (isProvenSenStatus s)) 171 171 172 -- | check if the node has an internal name (wrong for DGRef!)172 -- | check if the node has an internal name 173 173 isInternalNode :: DGNodeLab -> Bool 174 isInternalNode l@DGNodeLab {dgn_name = n} = not (isDGRef l) &&isInternal n174 isInternalNode DGNodeLab {dgn_name = n} = isInternal n 175 175 176 176 getNodeConsStatus :: DGNodeLab -> ConsStatus … … 200 200 201 201 data DGNodeType = DGNodeType 202 { nonRefType :: NonRefType 203 , isLocallyEmpty :: Bool } 204 deriving (Eq, Ord, Show) 205 206 data NonRefType = 207 RefType 208 | NonRefType { isProvenCons :: Bool 209 , isInternalSpec :: Bool } 202 { isRefType :: Bool 203 , isProvenNode :: Bool 204 , isProvenCons :: Bool 205 , isInternalSpec :: Bool } 210 206 deriving (Eq, Ord, Show) 211 207 … … 213 209 getRealDGNodeType :: DGNodeLab -> DGNodeType 214 210 getRealDGNodeType dgnlab = DGNodeType 215 { nonRefType = if isDGRef dgnlab then RefType else 216 NonRefType { isProvenCons = not $ hasOpenNodeConsStatus False dgnlab 217 , isInternalSpec = isInternalNode dgnlab } 218 , isLocallyEmpty = not $ hasOpenGoals dgnlab 219 } 211 { isRefType = isDGRef dgnlab 212 , isProvenNode = not $ hasOpenGoals dgnlab 213 , isProvenCons = not $ hasOpenNodeConsStatus False dgnlab 214 , isInternalSpec = isInternalNode dgnlab } 220 215 221 216 -- | Creates a list with all DGNodeType types 222 217 listDGNodeTypes :: [DGNodeType] 223 listDGNodeTypes = 224 [ DGNodeType { nonRefType = ref, isLocallyEmpty = isEmpty' } 225 | ref <- RefType : 226 [ NonRefType { isProvenCons = proven, isInternalSpec = spec } 227 | proven <- [True, False] 228 , spec <- [True, False] 229 ] 230 , isEmpty' <- [True, False] 231 ] 218 listDGNodeTypes = let bs = [False, True] in 219 [ DGNodeType 220 { isRefType = ref 221 , isProvenNode = isEmpty' 222 , isProvenCons = proven 223 , isInternalSpec = spec } 224 | ref <- bs 225 , isEmpty' <- bs 226 , proven <- bs 227 , spec <- bs ] 232 228 233 229 -- ** edge label types