5 个版本 (3 个破坏性更改)

0.4.1 2021 年 5 月 25 日
0.4.0 2021 年 5 月 25 日
0.3.5 2021 年 5 月 7 日
0.2.1 2021 年 5 月 7 日
0.1.0 2021 年 5 月 7 日

#2771 in 解析器实现

MIT 许可证

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