-
Notifications
You must be signed in to change notification settings - Fork 0
Getting Started
Stardust D.L edited this page Jan 15, 2018
·
2 revisions
- .Net Standard 2.0
- System.Tuple
iExpr.Core 发布到 NuGet.
PM> Install-Package iExpr.Core
关于 iExpr.Core 的类库结构请见 API接口
实现可参见 iExpr.Exprs 中数学表达式部分的实现。 Link
实现 iExpr.Parsers.ParseEnvironment 作为自定义的解析环境。一般步骤是将自己定义的运算符和函数等添加到环境中。
实现可参见 iExpr.Exprs 中数学表达式部分的实现,其包含了常用的数学运算符,函数以及数学常数。 Link
实现 iExpr.Evaluators.EvalEnvironment 作为自定义的解析环境。最简单的情况是直接使用 iExpr.Core 自带的运算器进行运算(Link),当需要更深层次的定制时,需要重写一些函数,如数学表达式部分的实现
使用以下代码:
ParseEnvironment ep = new YourParseEnvironment();
EvalEnvironment ep = new YourEvalEnvironment();
//iExpr.Core 自带的解析器,根据ParseEnvironment进行解析
ExprBuilder eb = new ExprBuilder(ep);
var buildedExpr = eb.GetExpr(exprString);
var context = ev.CreateContext().GetChild();
var evaluatedExpr=context.Evaluate(buildedExpr);最后得到的 evaluatedExpr 是一个 IExpr 对象作为计算结果。