Commit Graph

  • c39970fa7e new operator 'in' added. It check if an item is member of a list, or if a key is contained in a dictionary v0.11.0 camoroso 2024-05-18 07:47:41 +02:00
  • 14bb9e942b operator-fraction.go: added link to a tutorial about fractions camoroso 2024-05-18 07:07:17 +02:00
  • 9451958218 utils_test.go: new test file camoroso 2024-05-18 07:06:06 +02:00
  • 91fdc1926e Doc: updated last change date and time camoroso 2024-05-17 15:48:17 +02:00
  • 9a3abdf1b6 Doc: more details on the syntax of the selector and variable default operators camoroso 2024-05-17 15:46:56 +02:00
  • ac3e690f87 Doc: more details on the syntax of the dictionaries, variables and multi-expressions camoroso 2024-05-17 07:31:13 +02:00
  • f0a152a17a Doc: more details on the syntax of the numbers, strings and boolean v0.10.1 camoroso 2024-05-16 07:11:20 +02:00
  • ca89931ca9 Doc: more details on the syntax of the numbers camoroso 2024-05-15 22:06:26 +02:00
  • d2e8aed4f7 parser_test.go: test on divisopn by-zero camoroso 2024-05-15 22:05:49 +02:00
  • 8138cd2a80 operand-func.go: commented the errors moved to common-errors..go camoroso 2024-05-15 22:04:38 +02:00
  • 6786666cf4 funcs_test.go: added some tests camoroso 2024-05-15 22:03:41 +02:00
  • 35e794701a func-string.go: commented out the param count check camoroso 2024-05-15 22:03:03 +02:00
  • 52ef134be6 func-base.go: commented out the param count check camoroso 2024-05-15 22:02:07 +02:00
  • 624318d84e common-errors.go: moved here some errors camoroso 2024-05-15 22:01:13 +02:00
  • aa1338cd51 Fixed special convertion case from decimal 'x.y()' to fraction camoroso 2024-05-15 06:45:40 +02:00
  • c9db4b84e3 funcs_test.go: added some tests v0.10.0 camoroso 2024-05-14 05:41:53 +02:00
  • e7e9330b71 scanner: Fixed decimal number parser; it didn't save parenthesis around period part camoroso 2024-05-14 05:41:10 +02:00
  • 8eb25bbc86 operand-const.go -> operand-literal.go camoroso 2024-05-14 04:59:55 +02:00
  • efc92d434b the sum operation now supports dicts too camoroso 2024-05-14 04:56:24 +02:00
  • 4151f3f5e2 literals of rational number, e.g. 1.2(3), are now supported and are evaluated as fractions camoroso 2024-05-14 04:55:16 +02:00
  • f028485caa added functions to get the fenerating fraction of a decimal number v0.9.0 camoroso 2024-05-13 14:24:37 +02:00
  • ab07405cda common-errors.go: added errDivisionByZero() camoroso 2024-05-13 14:23:21 +02:00
  • 47be0c66cf Doc: some typo and better examples camoroso 2024-05-11 20:14:54 +02:00
  • 50e7168214 Since now builtin functions are registared in a new global context. This reduces the effort to copy the whole set of builtin functions in the context of a function call; only the called function will be copied, if it is global. camoroso 2024-05-11 10:45:38 +02:00
  • 0a9543543d Remove the unused 'parent' param from the function newTerm(). camoroso 2024-05-11 06:41:06 +02:00
  • 775751c67b Doc: string examples camoroso 2024-05-11 06:35:32 +02:00
  • 4aaffd6c44 dict: implemented length of dict v0.8.0 camoroso 2024-05-10 09:25:18 +02:00
  • 924051fbcd extended funcs and list tests camoroso 2024-05-10 09:18:32 +02:00
  • 5a9b6525a2 new function isRational() that return true is the passed value is integere or fraction camoroso 2024-05-10 09:17:51 +02:00
  • 8c66d90532 operator-length.go: fixed length of list camoroso 2024-05-10 09:16:31 +02:00
  • 4aa0113c6a new string test file v0.7.1 camoroso 2024-05-10 07:33:59 +02:00
  • d035fa0d5e operator-dot.go: fixed string index camoroso 2024-05-10 07:32:45 +02:00
  • cf73b5c98d Doc: add link to dev-expr download page camoroso 2024-05-10 06:39:48 +02:00
  • 8346e28340 Doc: fixed some typo and added some list details v0.7.0 camoroso 2024-05-10 04:49:03 +02:00
  • 9c2eca40d7 utils.go: added IsBool() and IsFract() camoroso 2024-05-10 04:48:13 +02:00
  • c3198e4c79 parser_test.go: did not show the correct section name camoroso 2024-05-10 04:47:34 +02:00
  • 99e0190b9c operator-dot.go: fixed the index range checking camoroso 2024-05-10 04:45:51 +02:00
  • d4f63a3837 funcs_test.go: fixed and extended camoroso 2024-05-10 04:44:08 +02:00
  • 389d48b646 func-base.go: added functions to check data-type of a value camoroso 2024-05-10 04:43:14 +02:00
  • 1f7b9131fc The 'last' variable now also receives the value of the final expression camoroso 2024-05-10 04:41:26 +02:00
  • dce49fd2b7 Doc: fractions and dictionaries camoroso 2024-05-09 07:20:22 +02:00
  • 8ee0bb5701 Some data-type check functions (e.g. IsInteger()) exported v0.6.0 camoroso 2024-05-08 07:53:01 +02:00
  • b2b0bb04c5 formatter.go: number base options added camoroso 2024-05-08 07:51:38 +02:00
  • f3abf5e77c Doc: dev-expr description updated camoroso 2024-05-08 07:51:01 +02:00
  • 34b7799177 parser_test.go: test added (mixed number types) camoroso 2024-05-07 07:23:38 +02:00
  • 8c3c54913a Doc: dev-expr introduction camoroso 2024-05-07 07:22:32 +02:00
  • 5910345c08 operator-{sum,prod}.go: Fixed sum and prod operation with a fraction and a float camoroso 2024-05-06 17:32:39 +02:00
  • 8b4dad1381 utils.go: new function isNumOrFract(x); it returns true if x is a float, an integer, ora a fraction camoroso 2024-05-06 17:31:12 +02:00
  • 6ef468408c operator-sum.go: Fixed sum of fraction and float camoroso 2024-05-06 17:16:30 +02:00
  • 3a30d890c6 operator-assign.go: improvements that allow to define function aliases (TODO: maybe *funcDefFunctor else-if section can be removed camoroso 2024-05-06 16:01:50 +02:00
  • 71ab417a56 funcs_test.go: added many new tests camoroso 2024-05-06 15:32:44 +02:00
  • 7cfb89c25c parser_test.go: removed commented code camoroso 2024-05-06 15:32:00 +02:00
  • 569dbfda9d expr_test.go: removed temporary test camoroso 2024-05-06 15:31:28 +02:00
  • f342dfe9f3 operand-list.go: ListType constructor functions newList() and newListA() camoroso 2024-05-06 15:30:23 +02:00
  • 5378952394 func-string.go: added three new functions (splitStr, startsWithStr, endsWithString) to the 'string' builtin module camoroso 2024-05-06 15:29:13 +02:00
  • a9d6a82011 operand-func.go: improved error report when functions reveive less params than expected camoroso 2024-05-06 15:26:45 +02:00
  • 43b74131fb dict_test.go: first draft camoroso 2024-05-06 10:41:08 +02:00
  • cb0eac54b2 list_test.go: new tests on member access camoroso 2024-05-06 10:40:19 +02:00
  • b219b55878 parser_test.go: refactored camoroso 2024-05-06 10:39:21 +02:00
  • 56c86f917e funcs_test.go: Added Setenv("EXPR_PATH",".") camoroso 2024-05-06 10:38:45 +02:00
  • 539a4b44e9 new test files and some refactorings camoroso 2024-05-06 05:52:25 +02:00
  • 74df927179 func-import.go: renamed include() as importAll() camoroso 2024-05-06 05:50:36 +02:00
  • 510966c497 operator-insert.go: replaced []any with ListType camoroso 2024-05-06 04:43:29 +02:00
  • c977e82d9e doc/Expr.adoc: description of the selector operator; added operators to the priority table camoroso 2024-05-06 04:24:17 +02:00
  • 903f1ae1ce adjusted some error messages and added the section name in logs camoroso 2024-05-06 04:21:50 +02:00
  • 9c66056c18 func-math.go: improved error messages reporting wrong datatype of items camoroso 2024-05-06 04:18:04 +02:00
  • f55a48aa26 operator-dot.go: replaced []any with *ListType camoroso 2024-05-06 04:15:46 +02:00
  • 434ddee733 operator-context.go: changed priPrePost with priIncDec camoroso 2024-05-06 04:14:54 +02:00
  • fcced6149f operator-post-inc.go: changed priPrePost with priIncDec camoroso 2024-05-06 04:14:03 +02:00
  • 1f0f9cae22 term.go: priPrePost renamed as priIncDec camoroso 2024-05-06 04:11:43 +02:00
  • 1d8569d3a9 the function call procedure now check the number of actual parameters against the numer of formal parameters camoroso 2024-05-04 22:35:03 +02:00
  • 0fdd51049d parser.go: simplified the parser of the function parameters camoroso 2024-05-04 19:10:02 +02:00
  • f9ed5776cd token.go: function IsSymbol() camoroso 2024-05-04 19:08:02 +02:00
  • a2c0a24494 added symbol '..' and '...'; improved some error reports in parser.go camoroso 2024-05-04 18:47:00 +02:00
  • 2c5f02cc69 list iterators now support start, stop e step camoroso 2024-05-04 08:07:49 +02:00
  • d9fbe6f36d data-cursor.go: now supports the 'index' command camoroso 2024-05-04 01:24:13 +02:00
  • e6174aca82 operator-length.go: now returns index+1 when used with iterators; that is the number of iterations camoroso 2024-05-04 01:23:32 +02:00
  • a736bba2c7 iter-list.go: now supports the 'index' command camoroso 2024-05-04 01:21:36 +02:00
  • 7724cabdcc removed commented code camoroso 2024-05-04 00:57:21 +02:00
  • 16557d70de the iterator operator now can be defined providing values or a list of values directly camoroso 2024-05-04 00:51:15 +02:00
  • 04e71a1b3f operator-iter-value.go: now operates on Iterator instead of *dataCursor camoroso 2024-05-04 00:47:20 +02:00
  • e463bd61d8 operator-post-inc.go: now operates on Iterator instead of *dataCursor camoroso 2024-05-04 00:39:22 +02:00
  • 419af7bfea data-cursor.go: reset and clean operations return (bool,error) camoroso 2024-05-04 00:37:31 +02:00
  • 6c604812ee iter-list.go: implemntation of the ExtInterface and coperation reset camoroso 2024-05-04 00:35:27 +02:00
  • 5cf0bfbad4 func-math.go: use of ExtIterator to perform clean operation camoroso 2024-05-04 00:33:38 +02:00
  • a838361ea8 operator-dot.go: specific *dataCursor case replaced by general ExtIterator camoroso 2024-05-04 00:30:35 +02:00
  • 0dbb0ba515 iterator.go: new interface ExtIterator derived from Iterator camoroso 2024-05-04 00:28:17 +02:00
  • 7a0ba26aa3 some expression and data files used by tests camoroso 2024-05-03 08:48:29 +02:00
  • 0bca3333aa parser_test.go: added tests from 143 to 159 (global coverage is 74.4%) camoroso 2024-05-03 06:38:30 +02:00
  • 02b7a6df6c improved the string representation of the content camoroso 2024-05-03 06:33:47 +02:00
  • 8d9963207e operator-context.go: now supports contextes that implement the Formatter interface camoroso 2024-05-03 06:31:36 +02:00
  • f9486fa1bd operand-list.go: adding of String() function camoroso 2024-05-03 06:29:18 +02:00
  • 360ebce015 improved usability of the list iterator camoroso 2024-05-03 06:26:17 +02:00
  • dc9eca83e8 operator-builtin.go: Fixed a problem with the list of forms due to changing []any in ListType camoroso 2024-05-03 05:30:58 +02:00
  • 2c55167dd0 operator-fraction.go: the constructor newFraction() does call simplifyIntegers() on the num e den camoroso 2024-05-02 11:04:20 +02:00
  • c124e880c4 operator-context.go: now it returns function keys too camoroso 2024-05-02 11:02:01 +02:00
  • 4db015e4b1 func-math.go: Fixed mul() error: the previous version recursively called doAdd() instead of doMul() camoroso 2024-05-02 10:58:05 +02:00
  • 5809de419f func-math.go: mul() and add() now support fractions camoroso 2024-05-01 21:53:54 +02:00
  • 7c748f0e31 formatter.go: format options added camoroso 2024-05-01 21:53:03 +02:00
  • cd6b7982ee sum and prod now support fraction too camoroso 2024-05-01 21:51:43 +02:00