Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
G
gast
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
4
Issues
4
List
Boards
Labels
Service Desk
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Incidents
Environments
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
clean-and-itasks
gast
Commits
99d6fe39
Commit
99d6fe39
authored
Apr 10, 2017
by
Bas Lijnse
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Organized libraries into a hierarchy to prevent namespace conflicts
parent
da52aaef
Changes
21
Show whitespace changes
Inline
Side-by-side
Showing
21 changed files
with
46 additions
and
732 deletions
+46
-732
Libraries/ESMVizTool.dcl
Libraries/ESMVizTool.dcl
+1
-1
Libraries/ESMVizTool.icl
Libraries/ESMVizTool.icl
+2
-2
Libraries/ESMVizTool/ESMSpec.dcl
Libraries/ESMVizTool/ESMSpec.dcl
+3
-3
Libraries/ESMVizTool/ESMSpec.icl
Libraries/ESMVizTool/ESMSpec.icl
+4
-4
Libraries/Gast.dcl
Libraries/Gast.dcl
+3
-2
Libraries/Gast.icl
Libraries/Gast.icl
+2
-2
Libraries/Gast/ConfSM.dcl
Libraries/Gast/ConfSM.dcl
+3
-2
Libraries/Gast/ConfSM.icl
Libraries/Gast/ConfSM.icl
+3
-4
Libraries/Gast/Gen.dcl
Libraries/Gast/Gen.dcl
+2
-2
Libraries/Gast/Gen.icl
Libraries/Gast/Gen.icl
+2
-2
Libraries/Gast/GenLibTest.dcl
Libraries/Gast/GenLibTest.dcl
+2
-2
Libraries/Gast/GenLibTest.icl
Libraries/Gast/GenLibTest.icl
+2
-2
Libraries/Gast/Graphviz/Visualization.dcl
Libraries/Gast/Graphviz/Visualization.dcl
+1
-1
Libraries/Gast/Graphviz/Visualization.icl
Libraries/Gast/Graphviz/Visualization.icl
+1
-1
Libraries/Gast/StdProperty.dcl
Libraries/Gast/StdProperty.dcl
+3
-4
Libraries/Gast/StdProperty.icl
Libraries/Gast/StdProperty.icl
+3
-3
Libraries/Gast/Testable.dcl
Libraries/Gast/Testable.dcl
+5
-5
Libraries/Gast/Testable.icl
Libraries/Gast/Testable.icl
+3
-3
Libraries/Graphviz.dcl
Libraries/Graphviz.dcl
+0
-365
Libraries/Graphviz.icl
Libraries/Graphviz.icl
+0
-321
Tests/test0.icl
Tests/test0.icl
+1
-1
No files found.
Libraries/ESMVizTool.dcl
View file @
99d6fe39
definition
module
ESMVizTool
import
ESMSpec
import
ESM
VizTool
.
ESM
Spec
import
iTasks
class
all
a
|
iTask
,
render
,
gEq
{|*|}
a
...
...
Libraries/ESMVizTool.icl
View file @
99d6fe39
implementation
module
ESMVizTool
import
iTasks
import
ESMSpec
import
ESM
VizTool
.
ESM
Spec
import
GenPrint
import
Data
.
Graphviz
import
G
raphviz
Visualization
import
G
ast
.
Graphviz
.
Visualization
derive
bimap
(,),
Maybe
derive
class
iTask
KnownAutomaton
,
State
...
...
Libraries/ESMSpec.dcl
→
Libraries/ESM
VizTool/ESM
Spec.dcl
View file @
99d6fe39
definition
module
ESMSpec
definition
module
ESM
VizTool
.
ESM
Spec
import
StdClass
,
Std
Maybe
import
gast
//gen
import
StdClass
,
Data
.
Maybe
import
Gast
::
Traces
s
i
o
:==
[[
SeenTrans
s
i
o
]]
::
ESM
s
i
o
=
{
s_0
::
s
// the initial state
...
...
Libraries/ESMSpec.icl
→
Libraries/ESM
VizTool/ESM
Spec.icl
View file @
99d6fe39
implementation
module
ESMSpec
implementation
module
ESM
VizTool
.
ESM
Spec
import
StdBool
,
StdList
,
StdM
aybe
,
StdM
isc
,
StdString
,
StdTuple
,
StdOrdList
import
GenPrint
,
GenEq
,
Data
.
List
import
g
ast
import
StdBool
,
StdList
,
StdMisc
,
StdString
,
StdTuple
,
StdOrdList
import
GenPrint
,
GenEq
,
Data
.
List
,
Data
.
Maybe
import
G
ast
tupToSpec
::
(
state
input
->
[([
output
],
state
)])
->
Spec
state
input
output
// conversion for old specificaions
tupToSpec
fun
=
\
s
i
=
[
Pt
o
t
\\
(
o
,
t
)
<-
fun
s
i
]
...
...
Libraries/
g
ast.dcl
→
Libraries/
G
ast.dcl
View file @
99d6fe39
definition
module
g
ast
definition
module
G
ast
/*
GAST: A Generic Automatic Software Test-system
...
...
@@ -9,4 +9,5 @@ definition module gast
pieter@cs.ru.nl
*/
import
Math
.
Random
,
gen
,
GenEq
,
genLibTest
,
testable
,
confSM
,
stdProperty
import
Math
.
Random
,
GenEq
import
Gast
.
Gen
,
Gast
.
GenLibTest
,
Gast
.
Testable
,
Gast
.
StdProperty
,
Gast
.
ConfSM
Libraries/
g
ast.icl
→
Libraries/
G
ast.icl
View file @
99d6fe39
implementation
module
g
ast
implementation
module
G
ast
/*
GAST: A Generic Automatic Software Test-system
...
...
Libraries/
c
onfSM.dcl
→
Libraries/
Gast/C
onfSM.dcl
View file @
99d6fe39
definition
module
c
onfSM
definition
module
Gast
.
C
onfSM
/*
GAST: A Generic Automatic Software Test-system
...
...
@@ -12,7 +12,8 @@ definition module confSM
*/
import
StdFile
import
Math
.
Random
,
gen
,
/* genLibTest,*/
testable
,
StdMaybe
import
Math
.
Random
,
Data
.
Maybe
import
Gast
.
Testable
,
Gast
.
Gen
::
Spec
state
input
output
:==
state
input
->
[
Trans
output
state
]
::
Trans
output
state
=
Pt
[
output
]
state
|
Ft
([
output
]->[
state
])
...
...
Libraries/
c
onfSM.icl
→
Libraries/
Gast/C
onfSM.icl
View file @
99d6fe39
implementation
module
c
onfSM
implementation
module
Gast
.
C
onfSM
/*
GAST: A Generic Automatic Software Test-system
...
...
@@ -11,9 +11,8 @@ implementation module confSM
pieter@cs.ru.nl
*/
import
StdEnv
,
Math
.
Random
,
gen
,
GenEq
,
testable
//, StdLib
import
StdMaybe
//import qualified genLibTest
import
StdEnv
,
GenEq
,
Math
.
Random
,
Data
.
Maybe
import
Gast
.
Gen
,
Gast
.
Testable
toSpec
::
(
state
input
->
[(
state
,[
output
])])
->
Spec
state
input
output
// conversion for old specificaions
toSpec
fun
=
\
s
i
=
[
Pt
o
t
\\
(
t
,
o
)
<-
fun
s
i
]
...
...
Libraries/
g
en.dcl
→
Libraries/
Gast/G
en.dcl
View file @
99d6fe39
definition
module
g
en
definition
module
Gast
.
G
en
/*
GAST: A Generic Automatic Software Test-system
g
en: generic generation of values of a type
Gast.G
en: generic generation of values of a type
Pieter Koopman, 2004
Radboud Universty, Nijmegen
...
...
Libraries/
g
en.icl
→
Libraries/
Gast/G
en.icl
View file @
99d6fe39
implementation
module
g
en
implementation
module
Gast
.
G
en
/*
GAST: A Generic Automatic Software Test-system
g
en: generic generation of values of a type
Gast.G
en: generic generation of values of a type
Pieter Koopman, 2004
Radboud Universty, Nijmegen
...
...
Libraries/
g
enLibTest.dcl
→
Libraries/
Gast/G
enLibTest.dcl
View file @
99d6fe39
definition
module
g
enLibTest
definition
module
Gast
.
G
enLibTest
/*
GAST: A Generic Automatic Software Test-system
genLibt
est: library for generic testing: showing and comparing values
Gast.GenLibT
est: library for generic testing: showing and comparing values
Pieter Koopman, 2004
Radboud Universty, Nijmegen
...
...
Libraries/
g
enLibTest.icl
→
Libraries/
Gast/G
enLibTest.icl
View file @
99d6fe39
implementation
module
g
enLibTest
implementation
module
Gast
.
G
enLibTest
/*
GAST: A Generic Automatic Software Test-system
genLibt
est: library for generic testing: showing and comparing values
Gast.GenLibT
est: library for generic testing: showing and comparing values
Pieter Koopman, 2004
Radboud Universty, Nijmegen
...
...
Libraries/G
raphviz
Visualization.dcl
→
Libraries/G
ast/Graphviz/
Visualization.dcl
View file @
99d6fe39
definition
module
G
raphviz
Visualization
definition
module
G
ast
.
Graphviz
.
Visualization
/** This module provides the iTasks class for the Graphviz library
**/
import
Data
.
Graphviz
,
iTasks
...
...
Libraries/G
raphviz
Visualization.icl
→
Libraries/G
ast/Graphviz/
Visualization.icl
View file @
99d6fe39
implementation
module
G
raphviz
Visualization
implementation
module
G
ast
.
Graphviz
.
Visualization
//import GenVisualize, GenUpdate, GenPrint, GenParse
//import iTasks.Framework.Generic, iTasks.Framework.UIDefinition, iTasks.Framework.IWorld, iTasks.API.Core.Types
...
...
Libraries/
s
tdProperty.dcl
→
Libraries/
Gast/S
tdProperty.dcl
View file @
99d6fe39
definition
module
s
tdProperty
definition
module
Gast
.
S
tdProperty
/*
GAST: A Generic Automatic Software Test-system
s
tdProperty: opertors on logical properties
Gast.S
tdProperty: opertors on logical properties
Pieter Koopman, 2004
Radboud Universty, Nijmegen
...
...
@@ -11,8 +11,7 @@ definition module stdProperty
pieter@cs.ru.nl
*/
/* import qualified genLibTest */
import
testable
import
Gast
.
Testable
class
(\/)
infixr
2
a
b
::
!
a
b
->
Property
// Conditional or of arg1 and arg2
class
(/\)
infixr
3
a
b
::
!
a
b
->
Property
// Conditional and of arg1 and arg2
...
...
Libraries/
s
tdProperty.icl
→
Libraries/
Gast/S
tdProperty.icl
View file @
99d6fe39
implementation
module
s
tdProperty
implementation
module
Gast
.
S
tdProperty
/*
GAST: A Generic Automatic Software Test-system
s
tdProperty: opertors on logical properties
Gast.S
tdProperty: opertors on logical properties
Pieter Koopman, 2004..2008
Radboud Universty, Nijmegen
...
...
@@ -11,7 +11,7 @@ implementation module stdProperty
pieter@cs.ru.nl
*/
import
t
estable
,
StdEnv
import
Gast
.
T
estable
,
StdEnv
from
Math
.
Random
import
genRandInt
class
(==>)
infixr
1
b
::
b
p
->
Property
|
Testable
p
...
...
Libraries/
t
estable.dcl
→
Libraries/
Gast/T
estable.dcl
View file @
99d6fe39
definition
module
t
estable
definition
module
Gast
.
T
estable
/*
GAST: A Generic Automatic Software Test-system
t
estable: the test algorithm for logical properties
Gast.T
estable: the test algorithm for logical properties
Pieter Koopman, 2002-2007
Radboud Universty, Nijmegen
...
...
@@ -11,9 +11,9 @@ definition module testable
pieter@cs.ru.nl
*/
import
g
enLibTest
from
s
tdProperty
import
::
Property
// for instance of testable
import
g
en
import
Gast
.
G
enLibTest
from
Gast
.
S
tdProperty
import
::
Property
// for instance of testable
import
Gast
.
G
en
//--- basics --//
...
...
Libraries/
t
estable.icl
→
Libraries/
Gast/T
estable.icl
View file @
99d6fe39
implementation
module
t
estable
implementation
module
Gast
.
T
estable
/*
GAST: A Generic Automatic Software Test-system
t
estable: the test algorithm for logical properties
Gast.T
estable: the test algorithm for logical properties
Pieter Koopman, 2002-2008
Radboud Universty, Nijmegen
...
...
@@ -11,7 +11,7 @@ implementation module testable
pieter@cs.ru.nl
*/
import
StdEnv
,
Math
.
Random
,
genLibTest
,
/* StdTime, */
g
en
import
StdEnv
,
Math
.
Random
,
Gast
.
GenLibTest
,
Gast
.
G
en
derive
gLess
Result
instance
==
Result
where
(==)
x
y
=
x
===
y
...
...
Libraries/Graphviz.dcl
deleted
100644 → 0
View file @
da52aaef
// Peter Divianszky, 2007
// Code extended and adapted by Peter Achten, 2007, Pieter Koopman 2010
definition
module
Graphviz
from
StdOverloaded
import
class
toString
import
StdMaybe
import
GenEq
// A digraph contains a title and a list of node definitions
::
Digraph
=
Digraph
String
[
GraphAttribute
]
[
NodeDef
]
(
Maybe
SelectedItem
)
::
SelectedItem
=
SelectedItem
Int
digraphTitle
::
!
Digraph
->
String
digraphAtts
::
!
Digraph
->
[
GraphAttribute
]
digraphNodes
::
!
Digraph
->
[
NodeDef
]
digraphSelectedItem
::
!
Digraph
->
Maybe
SelectedItem
// A node definition contains a unique identifier (an integer), a list of node attributes and a list of edge definitions.
// An edge definition contains an identifier (the id of the end node and edge attributes).
::
NodeDef
=
NodeDef
!
Int
![
NodeState
]
![
NodeAttribute
]
[
EdgeDef
]
::
EdgeDef
:==
(!
Int
,![
EdgeAttribute
])
::
NodeState
=
NStAllEdgesFound
!
Bool
// all edges of this node are known
// Convert digraph into list of strings.
// The strings are lines of the graphviz representation of the graph.
printDigraph
::
!
Digraph
->
[
String
]
::
GraphAttribute
=
GAtt_Damping
Real
|
GAtt_K
Real
|
GAtt_URL
String
|
GAtt_bb
Rect
|
GAtt_bgcolor
Color
|
GAtt_center
Bool
|
GAtt_charset
String
|
GAtt_clusterrank
ClusterMode
|
GAtt_colorscheme
String
|
GAtt_comment
String
|
GAtt_compound
Bool
|
GAtt_concentrate
Bool
|
GAtt_defaultdist
Real
|
GAtt_dim
Int
// | GAtt_diredgeconstraints ... PA: ignored, neato only
|
GAtt_dpi
Real
|
GAtt_epsilon
Real
|
GAtt_esep
Real
|
GAtt_fontcolor
Color
|
GAtt_fontname
String
|
GAtt_fontnames
String
|
GAtt_fontpath
String
|
GAtt_fontsize
Real
|
GAtt_label
String
|
GAtt_labeljust
String
|
GAtt_labelloc
String
|
GAtt_landscape
Bool
|
GAtt_layers
LayerList
|
GAtt_layersep
String
|
GAtt_levelsgap
Real
|
GAtt_lp
DotPoint
|
GAtt_margin
Margin
|
GAtt_maxiter
Int
|
GAtt_mclimit
Real
|
GAtt_mindist
Real
|
GAtt_mode
String
|
GAtt_model
String
|
GAtt_mosek
Bool
|
GAtt_nodesep
Real
|
GAtt_nojustify
Bool
|
GAtt_normalize
Bool
|
GAtt_nslimit
Real
|
GAtt_nslimit1
Real
|
GAtt_ordering
String
|
GAtt_orientation
String
|
GAtt_outputorder
OutputMode
|
GAtt_pad
Pad
|
GAtt_page
Pointf
|
GAtt_pagedir
PageDir
|
GAtt_quantum
Real
|
GAtt_rank
RankType
|
GAtt_rankdir
RankDir
|
GAtt_ranksep
Real
|
GAtt_ratio
Ratio
|
GAtt_remincross
Bool
|
GAtt_resolution
Real
|
GAtt_root
String
|
GAtt_rotate
Int
|
GAtt_searchsize
Int
|
GAtt_showboxes
Int
|
GAtt_size
Sizef
//Pointf // PA++
// | GAtt_splines PA: skipped for the time being
|
GAtt_start
StartType
|
GAtt_stylesheet
String
|
GAtt_target
String
|
GAtt_truecolor
Bool
|
GAtt_viewport
ViewPort
|
GAtt_voro_margin
Real
::
NodeAttribute
=
NAtt_URL
String
|
NAtt_color
Color
|
NAtt_colorscheme
String
|
NAtt_comment
String
|
NAtt_distortion
Real
|
NAtt_fillcolor
Color
|
NAtt_fixedsize
Bool
|
NAtt_fontcolor
Color
|
NAtt_fontname
String
|
NAtt_fontsize
Real
|
NAtt_group
String
|
NAtt_height
Real
|
NAtt_label
String
|
NAtt_layer
LayerRange
|
NAtt_margin
Margin
|
NAtt_nojustify
Bool
|
NAtt_orientation
Real
|
NAtt_peripheries
Int
|
NAtt_pin
Bool
// | NAtt_pos ... PA: ignored for the time being
|
NAtt_rects
Rect
|
NAtt_regular
Bool
|
NAtt_samplepoints
Int
|
NAtt_shape
NodeShape
|
NAtt_shapefile
String
|
NAtt_showboxes
Int
|
NAtt_sides
Int
|
NAtt_skew
Real
|
NAtt_style
NodeStyle
|
NAtt_target
String
|
NAtt_tooltip
String
|
NAtt_width
Real
|
NAtt_z
Real
::
EdgeAttribute
=
EAtt_URL
String
|
EAtt_arrowhead
ArrowType
|
EAtt_arrowsize
Real
|
EAtt_arrowtail
ArrowType
|
EAtt_color
Color
|
EAtt_colorscheme
String
|
EAtt_comment
String
|
EAtt_constraint
Bool
|
EAtt_decorate
Bool
|
EAtt_dir
DirType
|
EAtt_edgeURL
String
|
EAtt_edgehref
String
|
EAtt_edgetarget
String
|
EAtt_edgetooltip
String
|
EAtt_fontcolor
Color
|
EAtt_fontname
String
|
EAtt_fontsize
Real
|
EAtt_headURL
String
|
EAtt_headclip
Bool
|
EAtt_headhref
String
|
EAtt_headlabel
String
|
EAtt_headport
PortPos
|
EAtt_headtarget
String
|
EAtt_headtooltip
String
|
EAtt_href
String
|
EAtt_label
String
|
EAtt_labelURL
String
|
EAtt_labelangle
Real
|
EAtt_labeldistance
Real
|
EAtt_labelfloat
Bool
|
EAtt_labelfontcolor
Color
|
EAtt_labelfontname
String
|
EAtt_labelfontsize
Real
|
EAtt_labelhref
String
|
EAtt_labeltarget
String
|
EAtt_labeltooltip
String
|
EAtt_layer
LayerRange
|
EAtt_len
Real
|
EAtt_lhead
String
|
EAtt_lp
DotPoint
|
EAtt_ltail
String
|
EAtt_minlen
Int
|
EAtt_nojustify
Bool
// | EAtt_pos PA: ignored for the time being
|
EAtt_samehead
String
|
EAtt_sametail
String
|
EAtt_showboxes
Int
|
EAtt_style
EdgeStyle
|
EAtt_tailURL
String
|
EAtt_tailclip
Bool
|
EAtt_tailhref
String
|
EAtt_taillabel
String
|
EAtt_tailport
PortPos
|
EAtt_tailtarget
String
|
EAtt_tailtooltip
String
|
EAtt_target
String
|
EAtt_tooltip
String
|
EAtt_weight
Real
::
ClusterMode
=
CM_local
|
CM_global
|
CM_none
::
CompassPoint
=
CP_n
|
CP_ne
|
CP_e
|
CP_se
|
CP_s
|
CP_sw
|
CP_w
|
CP_nw
::
DotPoint
=
DotPoint
Real
Real
Bool
::
LayerId
=
LayerAll
|
LayerNr
Int
|
LayerName
String
::
LayerList
=
LayerList
[
String
]
::
LayerRange
=
LayerRange
LayerId
[
LayerId
]
::
Margin
=
SingleMargin
Real
|
DoubleMargin
Real
Real
::
OutputMode
=
OM_breadthfirst
|
OM_nodesfirst
|
OM_edgesfirst
::
Pad
=
SinglePad
Real
|
DoublePad
Real
Real
::
PageDir
=
PD_BL
|
PD_BR
|
PD_TL
|
PD_TR
|
PD_RB
|
PD_RT
|
PD_LB
|
PD_LT
::
Pointf
=
Pointf
Real
Real
::
PortPos
// PA: for now only compass points are supported
:==
CompassPoint
::
RankDir
=
RD_TB
|
RD_LR
|
RD_BT
|
RD_RL
::
RankType
=
RT_same
|
RT_min
|
RT_source
|
RT_max
|
RT_sink
::
Ratio
=
AspectRatio
Real
|
R_fill
|
R_compress
|
R_expand
|
R_auto
::
Rect
=
{
llx
::
Int
,
lly
::
Int
,
urx
::
Int
,
ury
::
Int
}
::
Sizef
// PA++
=
Sizef
Real
Real
Bool
::
StartStyle
=
SS_regular
|
SS_self
|
SS_random
::
StartType
=
{
startStyle
::
Maybe
StartStyle
,
startSeed
::
Maybe
Int
}
::
ViewPort
=
{
vp_W
::
Real
,
vp_H
::
Real
,
vp_Z
::
Maybe
Real
,
vp_xy
::
Maybe
Pointf
}
pointNode
::
[
NodeAttribute
]
// attributes of a point-shaped node
hiddenNode
::
[
NodeAttribute
]
// attributes of a hidden node
::
NodeShape
=
NShape_box
|
NShape_circle
|
NShape_diamond
|
NShape_doublecircle
|
NShape_doubleoctagon
|
NShape_egg
|
NShape_ellipse
|
NShape_hexagon
|
NShape_house
|
NShape_invtriangle
|
NShape_invtrapezium
|
NShape_invhouse
|
NShape_octagon
|
NShape_Mdiamond
|
NShape_Msquare
|
NShape_Mcircle
|
NShape_parallelogram
|
NShape_pentagon
|
NShape_plainText
|
NShape_polygon
|
NShape_point
|
NShape_rect
|
NShape_rectangle
|
NShape_septagon
|
NShape_trapezium
|
NShape_triangle
|
NShape_tripleoctagon
|
NShape_none
instance
toString
NodeShape
instance
==
NodeShape
derive
gEq
NodeShape
// PK++
::
NodeStyle
=
NStyle_filled
|
NStyle_invis
|
NStyle_diagonals
|
NStyle_rounded
|
NStyle_dashed
|
NStyle_dotted
|
NStyle_solid
|
NStyle_bold
instance
toString
NodeStyle
instance
==
NodeStyle
derive
gEq
NodeStyle
// PK++
::
EdgeStyle
=
EStyle_solid
|
EStyle_bold
|
EStyle_dashed
|
EStyle_dotted
|
EStyle_invis
instance
toString
EdgeStyle
instance
==
EdgeStyle
derive
gEq
EdgeStyle
// PK++
::
Color
=
RGB
Int
Int
Int
|
HSV
Real
Real
Real
|
Color
String
// X11 1.2 color names; see rgb.txt
C_black
:==
Color
"black"
C_white
:==
Color
"white"
C_gray
:==
Color
"gray"
C_red
:==
Color
"red"
C_green
:==
Color
"green"
C_blue
:==
Color
"blue"
C_yellow
:==
Color
"yellow"
instance
toString
Color
instance
==
Color
derive
gEq
Color
// PK++
::
ArrowType
=
{
closest
::
Arrow
,
furthest
::
Maybe
Arrow
}
::
Arrow
=
{
open
::
Bool
,
side
::
Maybe
Side
,
shape
::
ArrowShape
}
::
Side
=
Side_l
|
Side_r
::
ArrowShape
=
AShape_box
|
AShape_crow
|
AShape_diamond
|
AShape_dot
|
AShape_inv
|
AShape_none
|
AShape_normal
|
AShape_tee
|
AShape_vee
instance
toString
ArrowType
instance
==
ArrowType
derive
gEq
ArrowType
// PK++
// direction of the edge
::
DirType
=
DT_forward
|
DT_back
|
DT_both
|
DT_none
instance
toString
DirType
instance
==
DirType
derive
gEq
DirType
// PK++
layersep
:==
":
\t
"
Libraries/Graphviz.icl
deleted
100644 → 0
View file @
da52aaef
// Peter Divianszky, 2007
// Code extended and adapted for using generics by Peter Achten, 2007, Pieter Koopman 2011