Commit Graph

60 Commits

Author SHA1 Message Date
Deukhoofd fab2c9eabd
Require explicit inequality as well as equality operators on evalvalues 2019-09-07 13:28:25 +02:00
Deukhoofd d8c67f2dde
Even better exception handling when we can't index an evalvalue 2019-09-07 13:21:35 +02:00
Deukhoofd 2e1bdcf3a4
Better error handling when unable to index an eval value
continuous-integration/drone/push Build is passing Details
2019-09-07 13:04:42 +02:00
Deukhoofd acc687f213
Cleanup of main script type class 2019-09-07 11:16:12 +02:00
Deukhoofd 5d700aa0e9
Greatly simplify handling numerical eval values, using std::variant
continuous-integration/drone/push Build is passing Details
2019-09-07 10:57:09 +02:00
Deukhoofd f5bfd9c710
Extern C support for creating NilEvalValue
continuous-integration/drone/push Build is passing Details
2019-08-25 12:38:36 +02:00
Deukhoofd 1d72e2eccd
Better handling of casting
continuous-integration/drone/push Build is passing Details
2019-08-18 13:17:53 +02:00
Deukhoofd 2d4d3d8856
Apparently Windows does not handle 'long' the same as Unix.
continuous-integration/drone/push Build is passing Details
2019-08-18 10:30:58 +02:00
Deukhoofd 7675af62de
Fully implements math library
continuous-integration/drone/push Build is failing Details
2019-08-17 18:29:02 +02:00
Deukhoofd 13b382def2
Implements most of the remaining core standard functions
continuous-integration/drone/push Build is passing Details
2019-08-15 18:12:29 +02:00
Deukhoofd bbcebffefd
Moved ScriptType classes into separate directory
continuous-integration/drone/push Build is passing Details
2019-07-28 12:58:38 +02:00
Deukhoofd 3b344d6d72
Improve performance of cloning StringEvalValue
continuous-integration/drone/push Build is passing Details
2019-07-28 12:33:14 +02:00
Deukhoofd 586dd994e2
Fix annoying build warnings
continuous-integration/drone/push Build is passing Details
2019-07-27 18:47:29 +02:00
Deukhoofd 82c82ae93d
Fixed memory issue when assigning new method options
continuous-integration/drone/push Build is passing Details
2019-07-27 18:30:05 +02:00
Deukhoofd ccc6e297f2
Rework of memory handling in Evaluation
continuous-integration/drone/push Build is failing Details
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 d5e16c3826
Removed memory leaks in function classes
continuous-integration/drone/push Build was killed Details
2019-07-25 17:30:42 +02:00
Deukhoofd e2a0c35992
Large cleanup
continuous-integration/drone/push Build was killed Details
2019-07-25 17:23:54 +02:00
Deukhoofd bb6c7edcf2
Add capacity parameter to the extern C evaluate string function for EvalValues
continuous-integration/drone/push Build is passing Details
2019-07-21 11:49:45 +02:00
Deukhoofd 32836c6c58
Make a lot of one-liner functions inline
continuous-integration/drone/push Build is failing Details
2019-07-04 19:08:13 +02:00
Deukhoofd bb0a6aba19
General cleanup
continuous-integration/drone/push Build is passing Details
2019-07-04 18:24:49 +02:00
Deukhoofd 5e02b6b389
Cleans up basic library handling, implements print function
continuous-integration/drone/push Build is passing Details
2019-07-04 15:56:42 +02:00
Deukhoofd db2d731b06
Implements support for functions with the same name, but different parameters
continuous-integration/drone/push Build is passing Details
2019-06-29 19:59:42 +02:00
Deukhoofd 24c560b52d
Initial work on standard library
continuous-integration/drone/push Build is passing Details
2019-06-29 16:18:59 +02:00
Deukhoofd eda15e501d
Better handling of creating EvalValues in UserData templates
continuous-integration/drone/push Build is passing Details
2019-06-28 18:31:24 +02:00
Deukhoofd 9727c9365e
Reworked handling of numerical key tables to make iteration over keys actual numerics, instead of strings
continuous-integration/drone/push Build is passing Details
2019-06-27 14:02:31 +02:00
Deukhoofd d86e9ba8ae
Implemented generic for loops
continuous-integration/drone/push Build is passing Details
2019-06-26 16:19:34 +02:00
Deukhoofd 48224afe45
Reduce amount of copies for HashedString for improved performance
continuous-integration/drone/push Build is passing Details
Signed-off-by: Deukhoofd <deukhoofd@gmail.com>
2019-06-25 15:18:36 +02:00
Deukhoofd 907e444389 More valgrind fixes
continuous-integration/drone/push Build is failing Details
Signed-off-by: Deukhoofd <deukhoofd@gmail.com>
2019-06-24 15:09:00 +02:00
Deukhoofd 021750a135 Fix all valgrind leak issues in tests
continuous-integration/drone/push Build is failing Details
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
continuous-integration/drone/push Build is failing Details
2019-06-23 15:58:14 +02:00
Deukhoofd 694b0ac0c0
Work on extern support for userdata functions
continuous-integration/drone/push Build is passing Details
2019-06-21 23:07:17 +02:00
Deukhoofd 95c322ed2c
Implements userdata function support
continuous-integration/drone/push Build is failing Details
2019-06-21 17:03:13 +02:00
Deukhoofd fde102d954
Added namespaces to most classes, general cleanup
continuous-integration/drone/push Build is failing Details
2019-06-17 18:35:12 +02:00
Deukhoofd 21d3329c55
Mark evalValues as const
continuous-integration/drone/push Build is passing Details
2019-06-17 17:43:54 +02:00
Deukhoofd d91caa7f32
Implements indexing with period identifier style (``foo.bar``)
continuous-integration/drone/push Build is passing Details
2019-06-17 15:45:33 +02:00
Deukhoofd 3dc67ec8a0
Move Lexer to u16string handling, for unicode support
continuous-integration/drone/push Build is passing Details
2019-06-15 17:20:27 +02:00
Deukhoofd 7c345d85e8
Work on making userdata work through extern C entry points
continuous-integration/drone/push Build is passing Details
2019-06-14 22:21:33 +02:00
Deukhoofd a9def6c539
Implements setting table values
continuous-integration/drone/push Build is failing Details
2019-06-14 17:12:27 +02:00
Deukhoofd 10a2535c96
Handle bound classes as constants during evaluation
continuous-integration/drone/push Build is passing Details
2019-06-13 17:12:46 +02:00
Deukhoofd 1cb65f17c9
Work on performance improvements
continuous-integration/drone/push Build is passing Details
2019-06-13 16:26:10 +02:00
Deukhoofd 3477ddd18c
Rework function evaluation scope to handle tables
continuous-integration/drone/push Build is passing Details
2019-06-12 17:56:47 +02:00
Deukhoofd c022c91777
Implements complex tables
continuous-integration/drone/push Build is passing Details
2019-06-12 15:19:28 +02:00
Deukhoofd 081def0be0
Implements basic numerical tables
continuous-integration/drone/push Build is passing Details
2019-06-09 20:15:09 +02:00
Deukhoofd 7d75131822
Implemented comparison equality operators 2019-06-08 15:38:08 +02:00
Deukhoofd f143e526ab
Added support for calling script functions from extern C hooks
continuous-integration/drone/push Build is passing Details
2019-06-07 13:51:49 +02:00
Deukhoofd bffa133a3a
Renamed import to include 2019-06-06 19:03:28 +02:00
Deukhoofd cb5d9e2f62
Implements indexing, currently can only be used with strings 2019-06-06 17:35:51 +02:00
Deukhoofd 43dede9ae2
Work to add C style entry points to library that allow most functionality 2019-06-05 17:46:46 +02:00
Deukhoofd 6206fef4c5
Rework evaluation to use shared pointers, fix bugs 2019-06-01 21:38:39 +02:00