客服脚本解释器实现
目录
客服脚本解释器实现
一、脚本设计说明
1. 编码
2. 关键字
3. 标识符
4. 变量
5. 注释
6. 行与缩进
二、程序设计说明
1. 参数设计
2. 交互设计
3. DSL解析器整体设计
4. 词法语法分析器设计
5. 运行时Runner设计
6. 词法语法分析器优化设计
7. 测试桩设计
8. 自动化测试设计
三. 程序设计API说明
1. Sparser 模块
2. Sproc 模块
3. Srunner 模块
4. config 模块
5. main 模块
一、脚本设计说明
1. 编码
默认情况下,以UTF-8编码进行解析脚本 也可以为源码文件指定不同的编码解析方式(类似于Python) 在脚本开头注明以下语句代表文件以GBK编码解析
! using coding GBK
2. 关键字
$\color{red}{Entry}$ : 入口过程的过程名,缺失则无法执行脚本 $\color{red}{Proc}$ : 定义过程的定义符号 $\color{red}{begin}$ : 过程结构和分支结构的开始符 $\color{red}{end}$ : 过程结构和分支结构的结束符 $\color{red}{OUT}$ : 控制台输出指令 $\color{red}{IN}$ : 控制台输入指令 $\color{red}{Switch}$ : 分支选择结构定义符 $\color{red}{Branch}$ : 分支结构内用于选择分支的关键字 $\color{red}{Default}$: 分支结构内用于默认分支的关键字 $\color{red}{Run}$ : 运行指定过程指令 $\color{red}{Loop}$ : 循环运行指定过程指令 $\color{red}{EXIT}$ : 退出程序指令
关键字不允许被标识符定义或使用