5 个版本 (3 个破坏性更改)
0.4.1 | 2021 年 5 月 25 日 |
---|---|
0.4.0 |
|
0.3.5 | 2021 年 5 月 7 日 |
0.2.1 | 2021 年 5 月 7 日 |
0.1.0 | 2021 年 5 月 7 日 |
#2771 in 解析器实现
20KB
505 行
calc_engine
此引擎将数学表达式的字符串表示转换为表达式的实际结果。
我使用自顶向下的递归下降解析技术。(从左到右读取输入)
如何使用。
use calc_engine;
func main() {
let res = calc_engine::calculate("1 + 1")?;
let error_margin = f64::EPSILON;
assert!((result - 2.0).abs() < error_margin);
let res = calc_engine::calculate("(1 + 1) + 3")?;
}
待完成
- 错误修复
- 对数表达式
- 更多测试...
不分先后。
依赖关系
~13KB