Commit Graph

199 Commits

Author SHA1 Message Date
0ba96e65a5 Variable reference 2024-04-06 01:00:29 +02:00
574a6f5215 Expression process diagram added 2024-04-04 12:56:43 +02:00
d073d11ad3 Variable references belonging to the parent scope added ('@') 2024-04-04 12:54:26 +02:00
8c3254a8f2 typo 2024-04-03 13:19:18 +02:00
fccfd2f971 Operators '??' and '?=' added 2024-04-03 13:15:25 +02:00
088e347c95 Changed SetValue() as SetVar() and GetValue() as GetVar() 2024-04-03 06:29:57 +02:00
6c02b02d4a New draft 2024-04-03 06:23:45 +02:00
4fc8ac64e7 README.adoc: examples, relational operators table completed 2024-04-02 08:18:34 +02:00
4683a08da2 import() function added 2024-04-02 06:49:16 +02:00
6aada9f7e4 funcs-math.go -> func-math.go 2024-04-02 05:18:30 +02:00
4e8ebbef04 the preset.go file 2024-04-02 05:02:15 +02:00
f29b1f13b1 preset definitions and functions were moved to the new preset.go file 2024-04-02 05:00:48 +02:00
072dab4144 Expressions now support function definition 2024-04-02 04:36:03 +02:00
f58ec3ac32 parser: now checks whether the assign operator '=' is preceded by a variable 2024-03-31 06:38:46 +02:00
28e3b2f741 parser: accepts espression forest (multi expressions) 2024-03-31 06:10:27 +02:00
4e361f938e ast: now supports espression forest (multi expressions) 2024-03-31 05:57:02 +02:00
aa705e68bf 'and' and 'or' operators are now evaluated using logic shortcut (this behaviour can be changed setting system var '_bool_shortcut' to false 2024-03-31 05:09:24 +02:00
94ad968d5e ast.go: presetting of system variables before starting evaluation process 2024-03-31 05:06:24 +02:00
e3e5ad7da8 Farmatting changes 2024-03-30 08:12:47 +01:00
d0572260c7 New operators 'but' and assignment ('=') 2024-03-30 08:09:41 +01:00
43fd457383 term.go: added priority levels priBut and priAssign 2024-03-30 08:08:49 +01:00
e085502df3 symbol.go: New keyword 'but' 2024-03-30 08:08:11 +01:00
85fb007a2b The plus and minus operators now support lists for join and difference respectively 2024-03-30 07:05:22 +01:00
f540ec28e8 funcs-math.go: Implementes add() and mul() function for both simple values and iterators 2024-03-30 07:01:00 +01:00
36feed3168 parser.go: changedthe message error about unknown functiona 2024-03-30 06:58:29 +01:00
836a9165a5 Added Iterator interface and two implementation: list itrator and range iterator 2024-03-30 06:56:12 +01:00
e012afa691 Added the RegisterFunc() interface to the expression context 2024-03-30 06:54:43 +01:00
20007a5a81 utils.go: New function isList() that checks is a value is an array of any 2024-03-30 06:50:49 +01:00
107484d13c parser_test.go: add test on the list data type 2024-03-28 08:52:54 +01:00
c36c88d0fd Added list '[]' data type. Fix: function with no arguments 2024-03-28 08:51:02 +01:00
3ca415fc66 Merge branch 'main' of ssh://git.portale-stac.it:3022/go-pkg/expr 2024-03-28 06:34:53 +01:00
ae2f7c89bd helpers_test.go: changed some comments 2024-03-28 06:34:40 +01:00
27f53db0f4 helpers_test.go: tests on the helper functions 2024-03-28 06:33:14 +01:00
6d8c6f5154 helpers.go provides easy functions to parse and evaluate expressions 2024-03-28 06:32:37 +01:00
d20027296c New test on the tilde operator. Now it is based on simple-var-store 2024-03-28 06:30:45 +01:00
37f0de5902 Added simple context objects 2024-03-28 06:29:11 +01:00
fdc2fd8dfd utils.go: added functions anyInteger() and anyFloat() 2024-03-28 06:26:20 +01:00
9fa3d9fcb2 Added the tilde '~' operator acting as NOT 2024-03-28 06:25:29 +01:00
45c0663ea1 Second incomplete draft 2024-03-27 08:44:47 +01:00
998580772a added operator '%' (division remainder) and test 2024-03-26 09:27:14 +01:00
594806c999 added operator './' (float division) and test 2024-03-26 09:12:44 +01:00
800664c98c added go.mod 2024-03-26 08:56:20 +01:00
4bb1e9abcd Merge branch 'main' of ssh://git.portale-stac.it:3022/go-pkg/expr 2024-03-26 08:45:37 +01:00
33841c5861 Added copyrighr note to all sources 2024-03-26 08:45:18 +01:00
eaf5e29a0c byte-ring.go -> byte-slider.go 2024-03-26 08:44:56 +01:00
3586aadbc1 First incomplete draft 2024-03-26 07:36:12 +01:00
19ab171109 README.md -> README.adoc 2024-03-26 07:17:27 +01:00
522b880ca3 Added all source files 2024-03-26 07:00:53 +01:00
737696b71e first commit 2024-03-26 06:51:04 +01:00