7aabd068ed
func-math.go: add() now supports general iterators. TODO: do the same thing to mul()
camoroso2024-05-01 05:55:37 +02:00
924f5da725
Clone functions now filter ref variables to avoid to pass them to child context
camoroso2024-05-01 05:53:56 +02:00
d657cbb51e
func-os.go: fixed the handling of err==io.EOF
camoroso2024-05-01 05:48:37 +02:00
be874503ec
iterator.go: new error function errInvalidDataSource()
camoroso2024-05-01 05:46:24 +02:00
056d42d328
utils.go: Copy and Clone maps with filter function. Also added isIterator().
camoroso2024-05-01 05:45:10 +02:00
aa66d07caa
Iterators now support generic operation interface based on methods HasOperation() and CallOperation(). Also fixed mul() function that called doAdd() instead of doMul().
camoroso2024-04-28 06:45:20 +02:00
bf8f1a175f
modules are now represented by a struct that holds import-function, module description and importa status. It is also available the new function IterateModules() to explore all modules.
camoroso2024-04-28 05:41:13 +02:00
06ab303b9e
accessing to the Reset() and Clean()functions of an iterator is now done by identifiers, i.e. reset, not by string, i.e. "reset".
camoroso2024-04-28 04:44:19 +02:00
2ccbdb2254
Fixed Clean() and added error message when calling optional missing functions
camoroso2024-04-28 04:41:43 +02:00
c5fca70cfc
operator-length.go: Fix: the returned value was int, instead of int64
camoroso2024-04-27 22:37:56 +02:00
895778f236
operator-dot.go: '*dataCursor' case added; to be enhanced
camoroso2024-04-27 22:34:23 +02:00
81c85afbea
operand-iterator.go: accepts two new optional functions 'reset' and 'clean' from data-source
camoroso2024-04-27 22:32:57 +02:00
354cb79580
data-cursor.go: added Reset() e Clean() functions
camoroso2024-04-27 22:31:14 +02:00
d2bab5fd9e
context clone & export function moved from operand-func.go to context-helpers.go
camoroso2024-04-26 20:12:56 +02:00
f94f369547
context clone & export function moved from operand-func.go to context-helpers.go
camoroso2024-04-26 20:12:56 +02:00
107ec4958f
operator-length.go: the prefix operator '#' now accept iterator oeprand; it returns the index of the current item
camoroso2024-04-26 08:04:55 +02:00
2ab896bbac
the dataCursor struct has been moved fro operand-iterator.go to the new file data-cursor.go
camoroso2024-04-26 08:01:35 +02:00
62e16219f7
func-math.go/add: now supports the general iterator interface
camoroso2024-04-26 04:47:59 +02:00
750c660331
first working implementation of iterators and some fixes to the parser around lists analysis
camoroso2024-04-26 04:45:42 +02:00
7a88449cd1
updated some error messages; add some tests on the dict data-type; Use of reflect.DeepEqual() to compare the test results with the desired results.
camoroso2024-04-26 04:43:36 +02:00
b14dc2f1ee
provisional implementation of the postfix ++ operator
camoroso2024-04-26 04:37:50 +02:00
d354102c6a
adapted to the new GetFuncInfo() specification
camoroso2024-04-26 04:36:03 +02:00
761ec868e6
operator-assign.go: little refactor
camoroso2024-04-26 04:31:31 +02:00
7941c2dfec
the FlatArrayIterator has been moved to the new file iter-list.go
camoroso2024-04-26 04:30:43 +02:00
ebb2811ed3
context.go: added exists return value to the GetFuncInfo()
camoroso2024-04-26 04:28:50 +02:00
75c0c0f681
Fix ast.go: the insert() didn't check the returned error
camoroso2024-04-26 04:26:20 +02:00
268a968548
term.go: added two new priorities (priIterValue and priPrePost); new function term.symbol())
camoroso2024-04-26 04:23:39 +02:00
323308d86f
expressions now support dict data-type
camoroso2024-04-21 14:24:56 +02:00
b28d6a8f02
commented out a test for a future new operator based on the caret symbol
camoroso2024-04-21 07:12:59 +02:00
ab82bcf1ef
preparation for the definition of the iterators
camoroso2024-04-21 07:11:58 +02:00
a628bfac39
New symbol '^' (caret). The scanner now returns an error token if can't recognise a symbol.
camoroso2024-04-21 07:10:19 +02:00
d1122da566
coalesce operators '??' and '?=' now accepts function definitions too
camoroso2024-04-20 09:40:07 +02:00
6ae5ca34ed
expr_test.go, more tests on the int() function
camoroso2024-04-20 08:50:05 +02:00
730b59e6d3
funcs_test.go, more tests on the int() function
camoroso2024-04-20 07:41:58 +02:00
f198ba47e1
new convert function int()
camoroso2024-04-20 07:29:42 +02:00
943ef3327e
empty expressions no more return error, now they return nil
camoroso2024-04-20 06:56:26 +02:00
475ef3c80a
parser_test.go: test added on isNil() function
camoroso2024-04-20 06:54:51 +02:00
3c0307524b
simple-func-store.go: now imports 'builtins' module on creation
camoroso2024-04-20 06:53:30 +02:00
ed6af6603a
commented out some test code
camoroso2024-04-13 22:15:20 +02:00
51e740d243
expr_test.go: fixed test expression
camoroso2024-04-13 22:14:28 +02:00
53dacd5332
operator-selector.go: fixed the case match algorithm
camoroso2024-04-13 22:13:16 +02:00
e297f2a1d3
expr_test.go: new test file to verify complex expressions
camoroso2024-04-13 10:11:44 +02:00
70cdb9367e
changed the structer of the selector components: now all case are a list value assigned as right operand of the selector operator
camoroso2024-04-13 10:10:25 +02:00