# baibel **Repository Path**: clia/baibel ## Basic Information - **Project Name**: baibel - **Description**: 百倍中文编程系统 - **Primary Language**: Rust - **License**: BSD-2-Clause - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 4 - **Forks**: 0 - **Created**: 2018-12-04 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # baibel #### 项目介绍 百倍中文编程系统 支持使用中文的 [N1编程语言](https://gitee.com/clia/N1) 进行程序的设计、编写、展示,可以直接从 Web 界面上进行开发,程序有着美妙的结构,可 3D 展示。具有一流的开发效率、一流的执行性能。 #### 软件架构 软件架构说明 对中文程序进行转换,转换成 Rust 代码,再编译成 PostgreSQL 扩展函数,自动安装上去,程序就完成了。 例如如下的中文函数(程序文本表示,另有图形表示): ``` 修改用户手机号 参数: 1、名称:上下文 类型:框架的上下文 2、名称:用户标识 类型:对象标识 缺失时:返回错误:未指明被操作用户 3、名称:手机号 类型:手机号 缺失时:返回错误:未提供手机号 结果:类型:结果《系统的用户,框架的错误》 过程: 校验参数: 1、上下文的用户为空 =》返回错误:未指明操作用户 2、上下文的用户的标识不等于存在的用户标识 =》返回错误:操作用户不具备操作权限 第一步:用户对象为:根据用户标识查出系统的用户 第二步:如果用户对象为空,返回错误:用户对象不存在 第三步:把用户对象的手机号改为手机号 第四步:保存结果为:保存用户对象 第五步:如果保存结果是错误(保存错误),返回保存错误 第六步:返回用户对象 ``` 转译成Rust程序: ```Rust #![feature(non_ascii_idents)] use framework::框架; use framework::基础; use framework::数据库; use business::模型; #[baibel_function("修改用户手机号")] pub fn 修改用户手机号(上下文: 框架::上下文, 可选用户标识: Option<基础::对象标识>, 可选手机号: Option<基础::手机号>) => Result<模型::系统::用户, 框架::错误> { 校验参数!{ 可选用户标识 == None => "未指明被操作用户", 可选手机号 == None => "未提供手机号", 上下文.用户 == None => "未指明操作用户", 上下文.用户.unwrap().标识 != 可选用户标识 => "操作用户不具备操作权限", } let 用户标识 = 可选用户标识.unwrap(); let 手机号 = 可选手机号.unwrap(); let 可选用户对象 = 数据库::根据标识获取::<模型::系统::用户>("系统.用户", &用户标识); if 可选用户对象 == None { return 框架::错误::新建("用户对象不存在"); } let mut 用户对象 = 可选用户对象.unwrap(); 用户对象.手机号 = Some(手机号); let 保存结果 = 数据库::保存对象(&用户对象); if let Err(保存错误) = 保存结果 { return 框架::错误::从错误(保存错误); } return 用户对象; } ``` 另外也包括前端UI界面的生成及业务逻辑(基于Flutter框架) #### 安装教程 1. xxxx 2. xxxx 3. xxxx #### 使用说明 1. xxxx 2. xxxx 3. xxxx #### 参与贡献 1. Fork 本项目 2. 新建 Feat_xxx 分支 3. 提交代码 4. 新建 Pull Request #### 码云特技 1. 使用 Readme\_XXX.md 来支持不同的语言,例如 Readme\_en.md, Readme\_zh.md 2. 码云官方博客 [blog.gitee.com](https://blog.gitee.com) 3. 你可以 [https://gitee.com/explore](https://gitee.com/explore) 这个地址来了解码云上的优秀开源项目 4. [GVP](https://gitee.com/gvp) 全称是码云最有价值开源项目,是码云综合评定出的优秀开源项目 5. 码云官方提供的使用手册 [https://gitee.com/help](https://gitee.com/help) 6. 码云封面人物是一档用来展示码云会员风采的栏目 [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/)