blob: 835a5f558991d31226d728665890f69824a72a49 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
|
block qualifier list:
interface**
enum**
loop
match
if
else
method*
override*
raw
inline
export
module
case
default
operator*
structure of blocks:
(block start)
interface (defword)
enum (defword) (return type list)
loop (bool params) (loop rets)
if (bool params)
else
if (bool params)***
match (match params) (case blocks)
case (case params)
default
override***
method (defword) (function params) (function rets)
operator <unary operator> (ret)
operator <binary operator> (param) (ret)
export***
module (defword)
inline***
raw***
(defword) (function params) (function rets)
(block end)
structure of statements:
(type) (definition list)
(value)
(keyword) (parameters if required)
keyword statements:
delete (list of defwords)*
struct (defword) (struct params)*
continue
break
label (defword)
goto (defword)
asm (defstring)
* - type extension
** - advanced type extension
*** - optional modifier
|