Commit Graph

38 Commits

Author SHA1 Message Date
6ee21e10af New, more flexible, parser context datatype that includes and extends
the previous flags allowForest and allowVarRef.
Added binary operator (work in progress).
Better implementation of +=,-=,*=, and /= (new) operators.
2024-12-19 14:48:27 +01:00
a28d24ba68 parser.go: improved terminal symbols thanks to new symbol-map.go functions 2024-10-13 08:42:55 +02:00
321030c8d3 parser.go: function parameter list can't specify same parameter more than once 2024-10-01 06:39:51 +02:00
7285109115 parser.go: number sign is now allowed after the assign operator 2024-09-16 06:49:26 +02:00
ffe1fa3aac op-assign expansion now end at ']' and '}' too 2024-07-24 06:37:57 +02:00
1a1a475dd8 Added support to op-assign operators like '+='.
This feature is implemented by expansion, not by dedicated operators, e.g. a*=2+x is exapanded as a=a*(2+x)
2024-07-23 15:35:57 +02:00
80d3c6ec7d parser.go: Fixed an old bug that did not allow the parser to skip comment tokens 2024-07-21 05:37:34 +02:00
7f367cfc49 parser.go: renamed self receiver 2024-07-07 16:14:52 +02:00
d63b18fd76 parser.go: SymColon resets the firstToken flag; that is needed to specify range indeces that can define negative limits 2024-06-19 09:22:40 +02:00
0d01afcc9f member ctx removed from struct parser because it is unused 2024-06-07 09:03:42 +02:00
10a596a4cd parser.go: commented out some useless code 2024-06-04 11:02:26 +02:00
9bba40f155 Expr's functions now support parameters with default value 2024-06-01 19:56:40 +02:00
2c87d6bf9e Eprx now supports range of indeces to extract parts of strings or lists 2024-05-26 06:19:08 +02:00
fa136cb70b parser.go: square brackets are also allowed after a variable 2024-05-25 03:32:13 +02:00
03d4c192c2 new syntax to get items from collection: collection[index]. Supported collections are string, list and dict 2024-05-24 22:51:01 +02:00
d6a1607041 The content of round bracket now returns an expressione term. This way the content is decoupled from external terms. 2024-05-19 01:34:07 +02:00
0a9543543d Remove the unused 'parent' param from the function newTerm(). 2024-05-11 06:41:06 +02:00
0fdd51049d parser.go: simplified the parser of the function parameters 2024-05-04 19:10:02 +02:00
a2c0a24494 added symbol '..' and '...'; improved some error reports in parser.go 2024-05-04 18:47:00 +02:00
7724cabdcc removed commented code 2024-05-04 00:57:21 +02:00
16557d70de the iterator operator now can be defined providing values or a list of values directly 2024-05-04 00:51:15 +02:00
750c660331 first working implementation of iterators and some fixes to the parser around lists analysis 2024-04-26 04:45:42 +02:00
323308d86f expressions now support dict data-type 2024-04-21 14:24:56 +02:00
54bc759f70 expressions now support intger value in bin (0b), oct (0o), and hex (0x) form 2024-04-17 14:15:50 +02:00
f1afbf9b49 parser.go: removed commented code 2024-04-14 07:35:43 +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 2024-04-13 10:10:25 +02:00
b17d2250a4 parser.go: fixed a problem on the selector operator 2024-04-13 04:37:15 +02:00
9ac88bf446 made some interfaces exportable and fixed/enhaaced some selector operator versions 2024-04-08 23:17:56 +02:00
d3f388f7e1 Selector operator, multi-operand, added 2024-04-08 22:16:07 +02:00
181a9210d5 parser.go -- Fix: reset to true the firstToken flag after getting a semicolon 2024-04-06 01:32:29 +02:00
d073d11ad3 Variable references belonging to the parent scope added ('@') 2024-04-04 12:54:26 +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
36feed3168 parser.go: changedthe message error about unknown functiona 2024-03-30 06:58:29 +01:00
c36c88d0fd Added list '[]' data type. Fix: function with no arguments 2024-03-28 08:51:02 +01:00
33841c5861 Added copyrighr note to all sources 2024-03-26 08:45:18 +01:00
522b880ca3 Added all source files 2024-03-26 07:00:53 +01:00