5个版本
0.1.4 | 2023年2月3日 |
---|---|
0.1.3 | 2022年12月6日 |
0.1.2 | 2022年7月26日 |
0.1.1 | 2022年2月19日 |
0.1.0 | 2022年2月8日 |
#668 in 编码
每月208次下载
用于 7 个crate(5个直接使用)
48KB
740 行
wolfram-expr
API文档 | 变更日志 | 贡献
在Rust中高效且人性化的Wolfram表达式表示。
示例
构建表达式 {1, 2, 3}
use wolfram_expr::{Expr, Symbol};
let expr = Expr::normal(Symbol::new("System`List"), vec![
Expr::from(1),
Expr::from(2),
Expr::from(3)
]);
在不同的表达式变体上进行模式匹配
use wolfram_expr::{Expr, ExprKind};
let expr = Expr::from("some arbitrary expression");
match expr.kind() {
ExprKind::Integer(1) => println!("got 1"),
ExprKind::Integer(n) => println!("got {}", n),
ExprKind::Real(_) => println!("got a real number"),
ExprKind::String(s) => println!("got string: {}", s),
ExprKind::Symbol(sym) => println!("got symbol named {}", sym.symbol_name()),
ExprKind::Normal(e) => println!(
"got expr with head {} and length {}",
e.head(),
e.elements().len()
),
}
相关链接
相关crate
wolfram-library-link
— 作者库,可以被Wolfram语言动态加载。wstp
— Wolfram符号传输协议的绑定,用于在程序之间传递任意Wolfram表达式。wolfram-app-discovery
— 用于定位本地Wolfram应用程序和Wolfram语言的实用工具。
许可证
在以下两种许可证中选择一种
- Apache许可证,版本2.0 (LICENSE-APACHE 或 http://www.apache.org/licenses/LICENSE-2.0)
- MIT许可证 (LICENSE-MIT 或 http://opensource.org/licenses/MIT)
根据您的选择。
贡献
除非您明确说明,否则根据Apache-2.0许可证定义的,您有意提交以包含在作品中的任何贡献,应双重许可,如上所述,没有任何附加条款或条件。
有关更多信息,请参阅CONTRIBUTING.md。
依赖关系
~240KB