Commit Graph

111 Commits

Author SHA1 Message Date
Deukhoofd 256244eabb
Fixes for setting to tables not working properly 2019-09-22 15:20:22 +02:00
Deukhoofd 2cd787c536
Support "next" statement, skipping the remainder of the loop block. 2019-09-22 13:49:37 +02:00
Deukhoofd 24923deed0
Fixes and improvements for new table system 2019-09-19 11:28:00 +02:00
Deukhoofd 458274f370
Large rework of tables 2019-09-15 13:08:11 +02:00
Deukhoofd b462c1b873
Fixes empty script returning segmentation fault 2019-09-14 10:35:32 +02:00
Deukhoofd 3a9f1f976a
Fix modules without return type throwing segmentation fault 2019-09-12 21:50:48 +02:00
Deukhoofd 8f078e580e
Include type in BoundVariableKey for debugging purposes 2019-09-07 15:33:26 +02:00
Deukhoofd 629adafeaf
Include Userdata string key in userdata object for debugging 2019-09-07 15:22:24 +02:00
Deukhoofd 2e1bdcf3a4
Better error handling when unable to index an eval value 2019-09-07 13:04:42 +02:00
Deukhoofd da4258506e
Support for retrieving bound tree string from script objecsts 2019-09-07 12:12:37 +02:00
Deukhoofd 5d700aa0e9
Greatly simplify handling numerical eval values, using std::variant 2019-09-07 10:57:09 +02:00
Deukhoofd 7b5d03ed74
Tests for debug strings for many expressions 2019-09-05 17:55:00 +02:00
Deukhoofd f547715842
Fixes and tests for function declaration to string 2019-09-05 16:41:12 +02:00
Deukhoofd 256969e912
Some fixes for statements to string, added more tests 2019-09-05 12:22:10 +02:00
Deukhoofd 8bdc1ccfc7
Fixed memory leak in test cases 2019-09-02 20:49:45 +02:00
Deukhoofd d21cfeaac8
Added support for creating a string outline of a bound script for debugging purposes 2019-09-02 20:48:52 +02:00
Deukhoofd 0e9c9abf7c
Implements unknown types 2019-09-01 20:07:09 +02:00
Deukhoofd 5b7da77027
Improvements for extern C scriptoptions calling 2019-08-24 18:52:11 +02:00
Deukhoofd 18ffe00bc4
Fix SIGSEV with malformed functions 2019-08-24 13:54:01 +02:00
Deukhoofd faa3000d95
Fixed issue where an indexer followed by a binary operator would ignore the binary 2019-08-18 15:44:55 +02:00
Deukhoofd e9a3a6b391
Tweak approx of math.log test to handle different architectures 2019-08-17 18:54:38 +02:00
Deukhoofd 7675af62de
Fully implements math library 2019-08-17 18:29:02 +02:00
Deukhoofd 5e96250d96
Implements initial math library, several reworks for Userdata memory management 2019-08-17 14:42:48 +02:00
Deukhoofd 13b382def2
Implements most of the remaining core standard functions 2019-08-15 18:12:29 +02:00
Deukhoofd 5b3bc26bdb
Fixed tests not passing due to 1-indexed system vs 0-indexed thinking 2019-08-15 11:53:40 +02:00
Deukhoofd 471dbac3b9
Implements iterator for user data collection 2019-08-15 11:43:08 +02:00
Deukhoofd 641b6784c7
Support for loading variables from module with require 2019-08-11 12:32:18 +02:00
Deukhoofd c39f3a0884
Initial support for require statements 2019-08-10 16:45:15 +02:00
Deukhoofd 2f912afe92
Setup for making script options non global if desired 2019-08-10 11:55:45 +02:00
Deukhoofd 4b5672e3f5
Implements handling of userdata collection items 2019-07-28 19:01:07 +02:00
Deukhoofd ccc6e297f2
Rework of memory handling in Evaluation 2019-07-27 17:59:42 +02:00
Deukhoofd 268f6b59fb
Removed LastValue variable, as it can be better emulated with basic return values 2019-07-27 10:51:24 +02:00
Deukhoofd e2a0c35992
Large cleanup 2019-07-25 17:23:54 +02:00
Deukhoofd 40e45b0112
Fixed infinite loop in diagnostics 2019-07-21 12:03:56 +02:00
Deukhoofd 32836c6c58
Make a lot of one-liner functions inline 2019-07-04 19:08:13 +02:00
Deukhoofd 0446c1098b
Implements toint function 2019-07-04 17:18:07 +02:00
Deukhoofd 5e02b6b389
Cleans up basic library handling, implements print function 2019-07-04 15:56:42 +02:00
Deukhoofd db2d731b06
Implements support for functions with the same name, but different parameters 2019-06-29 19:59:42 +02:00
Deukhoofd 24c560b52d
Initial work on standard library 2019-06-29 16:18:59 +02:00
Deukhoofd ecfc1ae3b7
Cleaner way to define userdata templates 2019-06-28 23:38:47 +02:00
Deukhoofd eda15e501d
Better handling of creating EvalValues in UserData templates 2019-06-28 18:31:24 +02:00
Deukhoofd 70f2dea0ce
Some tweaks to the userdata templates 2019-06-28 17:53:37 +02:00
Deukhoofd 88ea4ed8cd
Template helpers to help define UserData types 2019-06-28 17:02:38 +02:00
Deukhoofd df79489d4d
Implements while loop 2019-06-28 13:28:39 +02:00
Deukhoofd 3367e60ae5
Support break statements 2019-06-27 15:55:46 +02:00
Deukhoofd 9727c9365e
Reworked handling of numerical key tables to make iteration over keys actual numerics, instead of strings 2019-06-27 14:02:31 +02:00
Deukhoofd d86e9ba8ae
Implemented generic for loops 2019-06-26 16:19:34 +02:00
Deukhoofd 48224afe45
Reduce amount of copies for HashedString for improved performance
Signed-off-by: Deukhoofd <deukhoofd@gmail.com>
2019-06-25 15:18:36 +02:00
Deukhoofd 021750a135 Fix all valgrind leak issues in tests
Signed-off-by: Deukhoofd <deukhoofd@gmail.com>
2019-06-24 13:38:41 +02:00
Deukhoofd 76b8ba3ebc
Initial work on iterators, rework of variable handling by including actual string 2019-06-23 15:58:14 +02:00