libamxo
4.3.4
Object Definition Language (ODL) parsing
odl_rr.py
Go to the documentation of this file.
1
# https://pypi.org/project/railroad-diagrams/
2
# https://jakearchibald.github.io/svgomg/
3
# Create svg files: for i in $(find . -name "*_rr.py"); do basename="${i%_rr.py}"; python3 $i > $basename.svg; done
4
5
from
railroad
import
*
6
7
css_rr =
"""svg.railroad-diagram {
8
background-color:hsl(30,20%,95%);
9
}
10
svg.railroad-diagram path {
11
stroke-width:3;
12
stroke:black;
13
fill:rgba(0,0,0,0);
14
}
15
svg.railroad-diagram text {
16
font:bold 14px monospace;
17
text-anchor:middle;
18
}
19
svg.railroad-diagram text.label{
20
text-anchor:start;
21
}
22
svg.railroad-diagram text.comment{
23
font:italic 12px monospace;
24
}
25
svg.railroad-diagram rect{
26
stroke-width:3;
27
stroke:black;
28
fill:hsl(120,100%,90%);
29
}
30
svg.railroad-diagram g.non-terminal rect{
31
stroke: black;
32
fill: white;
33
)
34
svg.railroad-diagram rect.group-box {
35
stroke: gray;
36
stroke-dasharray: 10 5;
37
fill: none;
38
}"""
39
40
d = Diagram(
41
ZeroOrMore(
42
Choice(0,
43
NonTerminal(
"INCLUDE"
),
44
NonTerminal(
"IMPORT"
),
45
NonTerminal(
"PRINT"
),
46
NonTerminal(
"REQUIRES"
),
47
NonTerminal(
"CONFIG"
),
48
NonTerminal(
"DEFINE"
),
49
NonTerminal(
"POPULATE"
)
50
)
51
)
52
)
53
54
d.writeStandalone(sys.stdout.write, css_rr)
55
doc
railroad
odl_rr.py
Generated on Mon Aug 26 2024 14:17:32 for libamxo by
1.9.1