No description
Find a file
Brent Pedersen 3a8dbf0d43
Merge pull request #3 from smoe/patch-1
Distinguish copyright holders for kexpr/* and MIT/X11
2020-11-06 08:02:14 -07:00
docs discardable setting 2018-12-10 16:01:58 -07:00
kexpr update nimble file 2018-09-12 10:46:22 -06:00
.gitignore working impl 2017-10-04 15:20:26 -06:00
kexpr.nim discardable setting 2018-12-10 16:01:58 -07:00
kexpr.nimble bump version 2018-12-10 15:16:50 -07:00
LICENSE Distinguish copyright holders for kexpr/* and MIT/X11 2020-11-06 02:23:15 +01:00
Makefile working impl 2017-10-04 15:20:26 -06:00
README.md fix readme 2018-12-10 15:27:09 -07:00
tests.nim simplify api 2018-12-10 15:07:22 -07:00

kexpr-nim

nim wrapper for Heng Li's kexpr math expression library

badge

var e = expression("5*6+x > 20")
e["x"] = 10
echo e.int
e["x"] = 20
echo e.int64
assert e.error() == 0

e = expression("(sample1 > 20 & sample2 > 10 & sample3 < 40")
# missing paren
assert e.error() != 0
e.clear()

e = expression("(sample1 > 20) & (sample2 > 10) & (sample3 < 40)")
e["sample1"] = 21; e["sample2"] = 65; e["sample3"] = 20
echo e.int # 1
e["sample1"] = 0
echo e.int # 0
assert e.error() == 0
echo e.float # 0.0

installation

If you have nimble installed you can do:

nimble install kexpr

nimble