.版本 2

.程序集 易代码解析器, , 公开
.程序集变量 _parser, 整数型

.子程序 _初始化



.子程序 _销毁



.子程序 初始化, , 公开
.参数 易根目录, 文本型

.如果真 (是否为空 ())
    _parser ＝ ECodeParser_Create (易根目录)
.如果真结束


.子程序 销毁, , 公开

.如果真 (是否为空 () ＝ 假)
    ECodeParser_Destroy (_parser)
    _parser ＝ 0
.如果真结束


.子程序 是否为空, 逻辑型, 公开

返回 (_parser ＝ 0)

.子程序 添加事件, , 公开
.参数 事件名称, 文本型, , EVENT
.参数 事件处理, 子程序指针

.如果真 (是否为空 () ＝ 假)
    ECodeParser_AddEvent (_parser, 事件名称, 事件处理)
.如果真结束


.子程序 执行解析, 整数型, 公开
.参数 文件数据, 字节集
.参数 是否加密, 逻辑型, 可空

.如果真 (是否为空 () ＝ 假)
    返回 (ECodeParser_Parse (_parser, 文件数据, 取字节集长度 (文件数据), 是否加密))
.如果真结束
返回 (0)

.子程序 寻找易数据, 整数型, 公开, EBase*
.参数 数据标识, ETAG

.如果真 (是否为空 () ＝ 假)
    返回 (ECodeParser_FindEBase (_parser, ETAG转整数 (数据标识)))
.如果真结束
返回 (0)

.子程序 枚举派生类, , 公开
.参数 派生类列表, ETAG, 参考 数组
.参数 类标识, ETAG
.局部变量 未公开_变量_248, 整数型
.局部变量 未公开_变量_209, 整数型
.局部变量 未公开_变量_20a, 整数型
.局部变量 未公开_变量_20b, 整数型
.局部变量 未公开_变量_20c, 整数型

清除数组 (派生类列表)
.如果真 (是否为空 () ＝ 假)
    连续赋值 (ECodeParser_GetDerived (_parser, ETAG转整数 (类标识)), 未公开_变量_248, 未公开_变量_209)
    未公开_变量_20a ＝ 指针到整数 (未公开_变量_209 ＋ 4)
    未公开_变量_209 ＝ 未公开_变量_209 ＋ 8
    .如果真 (未公开_变量_20a ＞ 0)
        重定义数组 (派生类列表, 假, 未公开_变量_20a)
        .计次循环首 (未公开_变量_20a, 未公开_变量_20b)
            未公开_变量_20c ＝ 指针到整数 (未公开_变量_209)
            未公开_变量_209 ＝ 未公开_变量_209 ＋ 4
            派生类列表 [未公开_变量_20b] ＝ 整数转ETAG (未公开_变量_20c)
        .计次循环尾 ()
    .如果真结束
    FreePtr (未公开_变量_248)
.如果真结束


.子程序 子程序数据到文本, 文本型, 公开
.参数 子程序标识, ETAG
.局部变量 未公开_变量_232, 整数型
.局部变量 未公开_变量_233, 文本型

.如果真 (是否为空 () ＝ 假)
    未公开_变量_232 ＝ ECodeParser_EMethod2Code (_parser, ETAG转整数 (子程序标识))
    未公开_变量_233 ＝ 指针到文本 (未公开_变量_232)
    FreePtr (未公开_变量_232)
.如果真结束
返回 (未公开_变量_233)

.子程序 窗口数据创建窗口, 整数型, 公开
.参数 窗口标识, ETAG

.如果真 (是否为空 () ＝ 假)
    返回 (ECodeParser_EForm2Window (_parser, ETAG转整数 (窗口标识)))
.如果真结束
返回 (0)
