-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathcfg.txt
74 lines (74 loc) · 2.03 KB
/
cfg.txt
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
72
73
74
<代码> -> <函数定义>
<函数定义> -> <类型> <标识符> ( <参数声明> ) { <函数块> }
<类型> -> Type
<标识符> -> id
<参数声明> -> <声明> <声明闭包>
<参数声明> -> $
<声明> -> <类型> <标识符> <赋初值>
<赋初值> -> = <右值>
<赋初值> -> $
<右值> -> <表达式>
<右值> -> - <表达式>
<右值> -> { <多个数据> }
<表达式> -> <因子> <项>
<因子> -> <因式> <因式递归>
<因式> -> ( <表达式> )
<因式> -> <标识符>
<因式> -> <常量>
<常量> -> Constant
<因式递归> -> * <因式> <因式递归>
<因式递归> -> / <因式> <因式递归>
<因式递归> -> $
<项> -> + <因子> <项>
<项> -> - <因子> <项>
<项> -> $
<多个数据> -> <常量> <常量闭包>
<常量闭包> -> , <常量> <常量闭包>
<常量闭包> -> $
<声明闭包> -> , <声明> <声明闭包>
<声明闭包> -> $
<函数块> -> <函数块闭包>
<函数块闭包> -> <声明语句> <函数块闭包>
<函数块闭包> -> <赋值函数> <函数块闭包>
<函数块闭包> -> <for循环> <函数块闭包>
<函数块闭包> -> <while循环> <函数块闭包>
<函数块闭包> -> <条件语句> <函数块闭包>
<函数块闭包> -> <函数返回> <函数块闭包>
<函数块闭包> -> $
<声明语句> -> <声明> ;
<赋值函数> -> <标识符> <赋值或函数调用>
<赋值或函数调用> -> = <右值> ;
<赋值或函数调用> -> += <右值> ;
<赋值或函数调用> -> -= <右值> ;
<赋值或函数调用> -> *= <右值> ;
<赋值或函数调用> -> /= <右值> ;
<赋值或函数调用> -> %= <右值> ;
<赋值或函数调用> -> ( <参数列表> ) ;
<参数列表> -> <参数> <参数闭包>
<参数闭包> -> , <参数> <参数闭包>
<参数闭包> -> $
<参数> -> <标识符>
<参数> -> <常量>
<for循环> -> for ( <赋值函数> <逻辑表达式> ; <后缀表达式> ) { <函数块> }
<while循环> -> while ( <逻辑表达式> ) { <函数块> }
<逻辑表达式> -> <表达式> <逻辑运算符> <表达式>
<逻辑表达式> -> ( <逻辑表达式> ) <逻辑运算符> ( <逻辑表达式> )
<逻辑表达式> -> ! ( <逻辑表达式> )
<逻辑运算符> -> <
<逻辑运算符> -> <=
<逻辑运算符> -> >
<逻辑运算符> -> >=
<逻辑运算符> -> ==
<逻辑运算符> -> !=
<逻辑运算符> -> &
<逻辑运算符> -> &&
<逻辑运算符> -> |
<逻辑运算符> -> ||
<后缀表达式> -> <标识符> <后缀运算符>
<后缀运算符> -> ++
<后缀运算符> -> --
<条件语句> -> if ( <逻辑表达式> ) { <函数块> } <否则语句>
<否则语句> -> else { <函数块> }
<否则语句> -> else <条件语句>
<否则语句> -> $
<函数返回> -> return <因式> ;