libamxo
4.3.4
Object Definition Language (ODL) parsing
function_rr.py
Go to the documentation of this file.
1
# https://pypi.org/project/railroad-diagrams/
2
# https://jakearchibald.github.io/svgomg/
3
4
from
railroad
import
*
5
6
css_rr =
"""svg.railroad-diagram {
7
background-color:hsl(30,20%,95%);
8
}
9
svg.railroad-diagram path {
10
stroke-width:3;
11
stroke:black;
12
fill:rgba(0,0,0,0);
13
}
14
svg.railroad-diagram text {
15
font:bold 14px monospace;
16
text-anchor:middle;
17
}
18
svg.railroad-diagram text.label{
19
text-anchor:start;
20
}
21
svg.railroad-diagram text.comment{
22
font:italic 12px monospace;
23
}
24
svg.railroad-diagram rect{
25
stroke-width:3;
26
stroke:black;
27
fill:hsl(120,100%,90%);
28
}
29
svg.railroad-diagram g.non-terminal rect{
30
stroke: black;
31
fill: white;
32
)
33
svg.railroad-diagram rect.group-box {
34
stroke: gray;
35
stroke-dasharray: 10 5;
36
fill: none;
37
}"""
38
39
d = Diagram(
40
Sequence(
41
Optional(
42
Choice(0,
43
Terminal(
"%protected"
),
44
Terminal(
"%private"
)
45
),
"skip"
46
),
47
ZeroOrMore(
48
Choice(0,
49
Terminal(
"%template"
),
50
Terminal(
"%instance"
),
51
Terminal(
"%async"
),
52
),
""
,
"skip"
53
),
54
Choice(0,
55
Terminal(
"string"
),
56
Terminal(
"csv_string"
),
57
Terminal(
"ssv_string"
),
58
Terminal(
"int8"
),
59
Terminal(
"int16"
),
60
Terminal(
"int32"
),
61
Terminal(
"int64"
),
62
Terminal(
"uint8"
),
63
Terminal(
"uint16"
),
64
Terminal(
"uint32"
),
65
Terminal(
"uint64"
),
66
Terminal(
"bool"
),
67
Terminal(
"datetime"
),
68
Terminal(
"list"
),
69
Terminal(
"htable"
),
70
Terminal(
"void"
),
71
Terminal(
"variant"
)
72
),
73
Choice(0,
74
Terminal(
"<NAME>"
),
75
Terminal(
"'<NAME>'"
),
76
Terminal(
'"<NAME>"'
)
77
),
78
Terminal(
"("
),
79
ZeroOrMore(
80
NonTerminal(
"ARGUMENT"
),
","
81
),
82
Terminal(
")"
),
83
Stack(
84
Optional(
85
Sequence(
86
NonTerminal(
"RESOLVER"
),
87
),
"skip"
88
),
89
Choice(0,
90
Terminal(
";"
),
91
Sequence(
92
Terminal(
"{"
),
93
ZeroOrMore(
94
NonTerminal(
"USERFLAGS"
),
","
95
),
96
Terminal(
"}"
)
97
)
98
)
99
)
100
)
101
)
102
103
d.writeStandalone(sys.stdout.write, css=css_rr)
doc
railroad
function_rr.py
Generated on Mon Aug 26 2024 14:17:32 for libamxo by
1.9.1