Commit Graph

624 Commits

Author SHA1 Message Date
camoroso 1055569dd6 Dict literal now accepts expressions as keys. Key values are computed at evalutetion time and still must be integer or string 2026-05-20 05:14:22 +02:00
camoroso 1aea1c14d2 LinkedList: added support for index and range extraction 2026-05-19 06:42:45 +02:00
camoroso 081395be5f linked-list-iterator and context operator $$ enhancement 2026-05-18 09:50:06 +02:00
camoroso 35a599b284 operator length # supports linked-list 2026-05-18 08:56:44 +02:00
camoroso eda3037855 operator $$() changed to return a linked-list in place of list 2026-05-18 08:55:28 +02:00
camoroso 47c181546a linked-list: added forgotten source files 2026-05-18 08:53:46 +02:00
camoroso a8a5d6aaa6 Linked-List: constructor NewLinkedListA() accepts any type of int and float 2026-05-18 06:24:59 +02:00
camoroso 84b255a51b new type LinkedList, preliminary implementation 2026-05-17 22:43:27 +02:00
camoroso 9efdeffcac test with mixed field name and index 2026-05-17 19:14:35 +02:00
camoroso d34b9d8a48 dict: implemented sub-field access, e.g D=["sub-dict"]["sub-field"] 2026-05-17 18:57:27 +02:00
camoroso 1bf8015da1 the assign operators, '=' and ':=', can set the value of dict items 2026-05-17 07:15:12 +02:00
camoroso 3ccbeb3978 util/utils.go: new function UnquoteString() 2026-05-17 07:02:35 +02:00
camoroso 0c719025cd new operator ':=', it assigns a value to a variable by deep copy 2026-05-17 05:02:07 +02:00
camoroso 08617378e0 doc: added some details 2026-05-16 17:33:45 +02:00
camoroso e6844ad1e8 alias operators: '<<' same as '<+', '>>' same as '+>'. Insert and append operation optimized with linked lists 2026-05-16 17:18:23 +02:00
camoroso 3a4e217891 kern/fraction-type.go: changed some syntax 2026-05-13 08:01:18 +02:00
camoroso 0f293fdbbc restructured some test files 2026-05-11 14:01:22 +02:00
camoroso 45faea7620 map, filter and cat return an iterator 2026-05-09 17:42:04 +02:00
camoroso e5a61b5638 iter-ops raised above assign; 'cat' operator returns an iterator; $$ operator supports iterators producing a list of items 2026-05-09 12:15:59 +02:00
camoroso 5285b61320 'join' operator renamed as 'cat' 2026-05-09 10:34:46 +02:00
camoroso 5950630cf7 Doc: added more details and new functions and operators (iterator operators) 2026-05-08 15:17:24 +02:00
camoroso 78e431f2b9 forgotten changes to builtin-os-file-iter.go 2026-05-08 11:07:53 +02:00
camoroso c7dce8288f file iterators refactored 2026-05-08 11:03:16 +02:00
camoroso c10053253c os file builtins refactored with the package 'file' 2026-05-08 10:16:03 +02:00
camoroso a3c7cf2efa iter-iter.go: check ctx against nil on creation 2026-05-08 10:14:07 +02:00
camoroso dfa1491093 kern/common-errors.go: new error function ErrFuncInvalidArg() 2026-05-08 10:10:28 +02:00
camoroso 99c1adc434 copyright header updated to 2026 feat-iter-iter v0.39.0 2026-05-06 09:27:42 +02:00
camoroso 5585b496fb iter-iter: changed item operation from function and args to a list of expressions 2026-05-06 04:04:08 +02:00
camoroso acd4f8487d new iter-iter iterator and kern.func-info module 2026-05-05 20:38:30 +02:00
camoroso 7f34ccf955 moved scanner sources to package 'scan' v0.38.0 2026-05-03 14:19:17 +02:00
camoroso f63ff5953e graph.go: conditioned compilation by 'graph' tag v0.37.0 2026-05-03 07:14:30 +02:00
camoroso b9d37a5b4c kern/compare.go: added copyright comment 2026-05-03 07:13:39 +02:00
camoroso 23b8eec74a builtin-base: removed useless function unset(). See UNSET operator 2026-05-03 06:46:51 +02:00
camoroso bb6b6d17ec operator-map.go: return nil on error 2026-05-03 06:30:56 +02:00
camoroso 53acacbadf kern/common-errors.go: little changes to ErrExpectedGot() and ErrInvalidParameterValue() 2026-05-03 06:30:00 +02:00
camoroso 2ebc52891c Iterator operator: automatic temporary variables _index and _count changed with '__' and '_#' respectively. Note that, sinc '#' is not an identifier allowed char, '_#' requires himBHsnotation: -cover 2026-05-02 15:06:12 +02:00
camoroso 3b2ef7927b new operator 'groupby' 2026-05-02 14:53:19 +02:00
camoroso d5ced343c4 kern/compare.go: new function Equal(a,b) that returns true if a and b have the same value 2026-05-02 14:45:05 +02:00
camoroso 3ac8cab275 enhanced ending operator detection 2026-05-02 09:54:24 +02:00
camoroso 6c5e9db34b int-itrator: new iterator over integer ranges 2026-05-01 17:23:06 +02:00
camoroso 78871641d0 t_common_test.go: Error messages also contains the name of the section introduced by special symbol >>> 2026-05-01 17:17:40 +02:00
camoroso dacbec677a iterator interface chenged index and count members from int to tint 64 2026-05-01 17:15:18 +02:00
camoroso 75ed88915d ast.go, pasrse.go: fixed the recover routine 2026-05-01 17:03:44 +02:00
camoroso f2d1f23774 ast.go: added recover from panic in ast.Eval() 2026-05-01 07:25:05 +02:00
camoroso edd90054d7 parser.go: added recover from panic in parser.Parse() 2026-05-01 07:24:41 +02:00
camoroso 610e2df5f5 operator-dot: added support to access dict value by exprssion; example: D.key, D."key", D.expr 2026-04-30 07:06:20 +02:00
camoroso 32c0b45255 kern/dict-type.go: added GetItem() 2026-04-30 07:04:03 +02:00
camoroso 75a3f220df parser: token '()' returns error 2026-04-30 07:03:28 +02:00
camoroso 116b54836f token.go: little change to ErrorExpectedGotStringWithPrefix() 2026-04-30 07:01:02 +02:00
camoroso 8787973de0 util files moved form kern to util package 2026-04-29 11:03:36 +02:00