44170697cb
Begin forking with new features
2023-06-22 01:07:17 -04:00
Sebastian Schmidt
1033e16904
Add comment about inaccurate error in test.
2023-06-01 16:01:01 +03:00
Kaspar Schleiser
6211888086
add more hex literal parsing test cases
2023-06-01 15:59:11 +03:00
Kaspar Schleiser
40d27df446
add hex integer literal parsing support
2023-06-01 15:59:11 +03:00
Sebastian Schmidt
199a42ebab
Fixes for pull request #130 .
2023-05-27 11:04:56 +03:00
ISibboI
e63a99af80
Merge branch 'main' into main
2023-05-27 10:42:40 +03:00
Sebastian Schmidt
c01a23bcf8
Return Ok
when disabling builtin functions in EmptyContext
and enabling builtin functions in EmptyContextWithBuiltinFunctions
.
...
These are noops anyways.
2023-05-21 10:30:53 +03:00
Sebastian Schmidt
5a4dcf9516
Fix docs and error types.
2023-05-21 10:30:53 +03:00
Codex Yore
24c1749143
Resolving issues for PR #129
2023-05-21 10:30:53 +03:00
Codex Yore
50532c5db5
feature_method_to_disable_builtin_function
2023-05-21 10:30:53 +03:00
LinuxHeki
d9698df268
math::abs of int returns int
2023-05-21 09:12:12 +02:00
LinuxHeki
9bbb152b4a
add tests for math::abs
2023-05-20 15:36:45 +02:00
Nick
8b8af31eb8
contains + contains_any builtins
2023-05-10 12:31:33 -05:00
Sebastian Schmidt
4fd86751dc
Fix unary operator precedence.
...
Before, unary operators that appeared after an operator with higher precedence would be executed after that operator.
However, in evalexpr, the two unary operators are prefix operators negation and not, and prefix operators always happen before operators directly left of them.
2023-04-13 14:42:39 +03:00
Sebastian Schmidt
9d0a776346
Add test for powers of negative numbers.
2023-04-13 14:21:44 +03:00
Sebastian Schmidt
94b9f1c9be
Fix lints.
2023-04-13 14:05:02 +03:00
natan
ebd08caa91
Formats code.
2022-11-21 19:50:22 +02:00
Natan Freeman
927e0e4075
Replaces f64
and i64
with FloatType
and IntType
.
2022-09-14 21:36:36 +03:00
Sebastian Schmidt
70a749194f
Add tests for iterating only variable names in a context.
...
Relates to #108
2022-07-22 12:18:56 +03:00
Tobias Schmitt
532e2ed770
adds iter_(read/write)_variable_identifiers
...
seperate iterator returns for read and write variable identifiers.
this is useful in our project and i suspect it might be of use for
others too.
2022-07-21 21:12:26 +02:00
Sebastian Schmidt
a4f49de71a
Add tests for context variable iteration.
...
Relates to #108
2022-07-15 13:50:14 +03:00
Sebastian Schmidt
e70e9d366a
Use explicit operator type for reading and writing variables.
...
Before, variables written to were represented with the same operator as constants in the AST. This was hacky and confusing to some users.
Closes #106
2022-07-04 17:10:28 +03:00
Sebastian Schmidt
65fadfd164
Add tests for left-hand side of assignment being an identifier.
...
Relates to #106
2022-07-04 16:50:50 +03:00
Sebastian Schmidt
d9c5d5dbbb
Test new TryFrom<Value>
impls.
...
Closes #105
2022-07-04 14:39:27 +03:00
lovasoa
7227d02a9c
Add a comment for the random() != random() test
2022-04-20 20:53:08 +02:00
ISibboI
687f762115
Merge branch 'main' into random
2022-04-07 16:20:41 +03:00
Ophir LOJKINE
7c90768afb
add newline at the end of the file to make cargo fmt happy
2022-03-30 14:46:23 +02:00
Ophir LOJKINE
bce31e24ae
new function: random()
...
random() returns a random number between 0 and 1
2022-03-30 14:39:26 +02:00
Ophir LOJKINE
9d5ef651ae
cargo fmt
2022-03-23 18:09:23 +01:00
Ophir LOJKINE
8eedf720e7
Implement changes requested in PR
...
https://github.com/ISibboI/evalexpr/pull/101#issuecomment-1076466426
2022-03-23 16:33:53 +01:00
Ophir LOJKINE
678c881377
fix test
2022-03-23 13:56:22 +01:00
Ophir LOJKINE
3c4a429e8d
Remove is_sumbnormal
2022-03-23 13:11:41 +01:00
Ophir LOJKINE
ea42cf6355
Add support for is_nan, is_finite, and other floating-point testing functions
2022-03-23 13:04:09 +01:00
Ophir LOJKINE
004c2c9f03
more tests
2022-03-14 15:30:52 +01:00
Ophir LOJKINE
9eedc8e93b
cargo fmt
2022-03-14 15:07:38 +01:00
Ophir LOJKINE
a219f0b66f
Add an "if" function
...
If the first argument is true, returns the second argument, otherwise, return the third
2022-03-14 14:59:48 +01:00
Diane Sparks
284ddfd567
Add comment separator for bitwise tests
2022-03-06 10:20:40 -08:00
Diane Sparks
d6fafc171d
Add bitwise shift functions
2022-03-06 10:17:37 -08:00
Sebastian Schmidt
da5036b5ea
Fix dependency version numbers and update dev dependencies.
2022-02-20 09:54:24 +02:00
Sebastian Schmidt
79cb25bc9d
Increase test coverage.
2022-01-13 15:18:06 +02:00
Sebastian Schmidt
4e5e218d3e
Fix #94 .
...
Introduce a new error type for illegal parenthese expressions such as `4(5)`.
2022-01-13 14:50:38 +02:00
Sebastian Schmidt
2ffc88a22e
Add failing examples from issue.
...
Relates to #94
2022-01-13 13:52:51 +02:00
Sebastian Schmidt
b3be7f600c
Implement bitwise operators as builtin functions.
...
Relates to #88
2021-10-12 14:59:10 +03:00
Sebastian Schmidt
e0d4ef24e5
Increase test coverage.
2021-08-16 14:23:02 +03:00
Sebastian Schmidt
efd7ef5dcf
Format code.
2021-08-16 13:33:56 +03:00
Jakub Dąbek
6be3b7d80e
Make Function
able to hold capturing closures.
...
This commit "reverts" a change introduced in bee98999
,
by making `Function` be simultaneously `Fn` and `Clone`.
2021-08-15 20:11:00 +02:00
Sebastian Schmidt
fc2f5ac50d
Add test case for potential error.
...
Relates to #89 .
2021-08-01 15:13:58 +03:00
Dennis Marttinen
fbbecc766f
Add support for scientific notation of the form <coefficient>e{+,-,}<exponent>
2021-07-20 20:34:51 +03:00
Sebastian Schmidt
77659b8181
Add more string comparison test cases.
2021-07-13 15:06:43 +03:00
Sebastian Schmidt
97c5fc1c21
Add tests for evaluating operator tree and fix correct error for eval_number functions.
2021-07-13 14:55:23 +03:00