Commit Graph
100 Commits
Author SHA1 Message Date
Deukhoofd b743759146 Lock Variables while adding to it to prevent threading issues 2019-01-22 20:35:23 +01:00
Deukhoofd 4062d2f140 Fixes for types sometimes choosing type they inherit from instead of themselves 2019-01-22 18:32:29 +01:00
Deukhoofd 8bd5f7d0af Lock evaluation scope when not created to prevent threading issues 2019-01-22 16:53:22 +01:00
Deukhoofd 750d5dab8d Fix bound types not considering interfaces inheriting from other interfaces 2019-01-22 14:39:29 +01:00
Deukhoofd 613e9dcb09 Fix parameters complaining they're not valid when they are valid 2019-01-22 13:39:57 +01:00
Deukhoofd 284ba2cf54 Better error handling 2019-01-22 12:28:21 +01:00
Deukhoofd cd6384614b Handle generic inheritance for checking if type is valid for function parameter 2019-01-22 11:51:12 +01:00
Deukhoofd a413c5ecd4 Show better error position if table assignment statement is a bad statement 2019-01-21 18:56:32 +01:00
Deukhoofd e5f08d5859 Fix function calls in fullstop index expressions not binding properly 2019-01-21 18:45:02 +01:00
Deukhoofd a9f6b682dc Fix unknown parameters in userdata functions not allowing types 2019-01-21 16:22:22 +01:00
Deukhoofd 224db6f237 Remove weird requirement that table indexing should always be a string or number 2019-01-21 16:13:18 +01:00
Deukhoofd bb51fb3853 Hack to allow binary operators on userdata 2019-01-21 16:07:24 +01:00
Deukhoofd 97f3a4d879 Fix binding functions when no access to direct types 2019-01-21 15:09:43 +01:00
Deukhoofd 30c3223cb4 Fix binding of calling C# methods not working 2019-01-21 14:38:15 +01:00
Deukhoofd 7f58db1955 Handle when C# calls a script function with null as parameter 2019-01-21 14:38:01 +01:00
Deukhoofd b73982237c Fix wrong error message 2019-01-21 14:37:43 +01:00
Deukhoofd 47a80d2153 Fixed ListUserData type being unknown 2019-01-21 14:03:11 +01:00
Deukhoofd e74d061177 Adds remove functions for table to list helper standard library 2019-01-21 13:52:02 +01:00
Deukhoofd 44bfc90fe3 Better handling of getting composite script types 2019-01-21 13:37:51 +01:00
Deukhoofd 86f47ae002 Fix binding issue on evaluation 2019-01-21 12:57:30 +01:00
Deukhoofd ca9361cd0f Handle bound types when they ar enot yet set 2019-01-21 11:34:44 +01:00
Deukhoofd 1955515f22 Override function if function with exact same parameters was already defined 2019-01-20 23:34:46 +01:00
Deukhoofd 9aea17c445 tostring for ListUserData 2019-01-20 23:09:08 +01:00
Deukhoofd 01d408e5fd Fixes for modules and function binding 2019-01-20 22:57:18 +01:00
Deukhoofd 3737ac826c Adds basics of new list helper library 2019-01-20 22:28:02 +01:00
Deukhoofd b9183be4e7 Fixes for script binding not working 2019-01-20 22:27:47 +01:00
Deukhoofd 20dfcf6ec6 Support ScriptBoolean returns from bound C# functions 2019-01-20 22:27:19 +01:00
Deukhoofd 898cabb237 Better support for method overloading 2019-01-20 21:00:01 +01:00
Deukhoofd 921abce011 Fixes for function execution when parameter is not bound 2019-01-20 15:17:06 +01:00
Deukhoofd 3c0e5f5b13 Allow parameter overloading script functions 2019-01-20 15:01:18 +01:00
Deukhoofd 43da2b3d19 Properly handle full composite key binding in for loops 2019-01-19 18:05:55 +01:00
Deukhoofd 246aba3e95 Fixed issue with userdata type on evaluation 2019-01-19 17:50:54 +01:00
Deukhoofd cf023af50d Minor fixes 2019-01-19 17:27:56 +01:00
Deukhoofd fd8f7bf9f8 Support for casting to other types 2019-01-19 17:13:53 +01:00
Deukhoofd 96b0959bd6 Reworked type handling to handle userdata more easily 2019-01-19 16:38:33 +01:00
Deukhoofd 6552e153d0 Add TypeContainer toString overrides 2019-01-19 14:21:36 +01:00
Deukhoofd fcd26f4cc0 Remove test exception 2019-01-19 14:18:43 +01:00
Deukhoofd d2d7b985b2 We need access to FunctionParameters at binding in other libraries 2019-01-19 14:15:17 +01:00
Deukhoofd e44116b2cd Don't allow using indexing to access local variables 2019-01-19 14:12:16 +01:00
Deukhoofd bee6fad947 Fix complex table/function variable handling 2019-01-18 16:41:03 +01:00
Deukhoofd f55e6d314d Rework type binding to allow for type awareness in iterators 2019-01-18 16:09:36 +01:00
Deukhoofd 64aedceb85 Fix finding bottom node when two nodes are on the same line not working 2019-01-17 19:24:00 +01:00
Deukhoofd c1fd6081fd Better handling of finding bottom node 2019-01-17 18:34:58 +01:00
Deukhoofd f903a3ca58 Better error reporter 2019-01-17 17:48:10 +01:00
Deukhoofd d341318989 Fix issues with identifier spans 2019-01-17 17:33:53 +01:00
Deukhoofd 1e7fc7629e Adds GetChildren method for boundNodes 2019-01-17 13:56:53 +01:00
Deukhoofd 1d6b5673d6 Reworked diagnostics, saves line positions in memory, instead of calculating later. 2019-01-16 23:57:42 +01:00
Deukhoofd b5bfb7997b Better handling of C# function parameter type checking 2019-01-16 12:07:40 +01:00
Deukhoofd 2ef06b3fd7 Make enums be considered userdata, and not numbers. Allow C# functions that consume enums to use both numbers and userdata 2019-01-16 10:50:22 +01:00
Deukhoofd 0a034013ea Add Userdata equality operators 2019-01-14 14:44:31 +01:00
Deukhoofd 0a8648ce80 Better handling of unknown indexing 2019-01-14 14:40:16 +01:00
Deukhoofd cd140603dd Don't try and index a variable we don't know the type of 2019-01-14 14:30:56 +01:00
Deukhoofd 11092c11ff Save module dependencies in script, so we can easily read these 2018-12-14 18:48:53 +01:00
Deukhoofd e78ad21d0e Allow for clearing a module from cache 2018-12-14 17:54:35 +01:00
Deukhoofd 9ca70e8346 Show full path of module directory when module is missing 2018-12-14 17:51:57 +01:00
Deukhoofd b2f31490bc Better support for enums 2018-12-13 21:18:12 +01:00
Deukhoofd 07043e1ab4 Fixes for binding 2018-12-13 19:04:23 +01:00
Deukhoofd 599c535ddd Fixed internal function not binding variables properly 2018-12-12 22:23:01 +01:00
Deukhoofd 4b93302c86 Allow setting boundscope 2018-12-12 20:43:12 +01:00
Deukhoofd 2bdb469b6f Resolve issue where code wouldnt fully execute 2018-12-12 17:58:35 +01:00
Deukhoofd 898a18a60a Bind User Data methods 2018-12-12 17:28:12 +01:00
Deukhoofd e741e9c355 Made resolvevariable in binder public static so VS Code extension can use it 2018-12-12 16:34:47 +01:00
Deukhoofd a4cdaa5b05 Some initial work for debugging 2018-12-11 18:31:54 +01:00
Deukhoofd 590614c34d Handle float --> int conversions more like we'd expect 2018-12-11 16:10:08 +01:00
Deukhoofd e57129e116 Work on calling CSharp methods 2018-12-11 15:50:24 +01:00
Deukhoofd efea92d32a Make Script conversion at end of execution use Type Binder, general Type Binder fixes 2018-12-10 17:52:15 +01:00
Deukhoofd f1d8904ec9 Dont throw an exception if a variable can't be found in a table, instead just return nil 2018-12-10 17:15:25 +01:00
Deukhoofd 88e4b92b6a Fixed while/for loops not returning from function 2018-12-10 17:03:04 +01:00
Deukhoofd 5646ff1da1 Fixes to the Type Binder and static method handling 2018-12-09 22:12:03 +01:00
Deukhoofd 3d9b7a53e9 Changes and tweaks for the binder 2018-12-09 20:53:07 +01:00
Deukhoofd 796f82e823 Add binary operators for bool and nil during binding 2018-12-09 20:05:47 +01:00
Deukhoofd 1e1fa06d12 Make setting a script variable to nil remove that variable 2018-12-09 19:02:35 +01:00
Deukhoofd 0843c9b624 Fix enumerator issue with numerically keyed script tables 2018-12-09 18:42:41 +01:00
Deukhoofd ff9eac888f Reworked script enumerator to not be overriden by generic enumerator 2018-12-09 18:23:06 +01:00
Deukhoofd 50f06f389a Fix passing nil to CSharp functions not returning function 2018-12-09 18:13:19 +01:00
Deukhoofd beac043995 Don't reset scope when function is executed 2018-12-09 17:50:09 +01:00
Deukhoofd 875525b6be Handle unnamed functions better 2018-12-09 17:49:54 +01:00
Deukhoofd 5d7f155550 Handle conversion for enumerables 2018-12-09 15:51:16 +01:00
Deukhoofd 74bc57bb1a Fix while loops not breaking 2018-12-09 14:33:04 +01:00
Deukhoofd 00cc59dfbd Reworked compatible external function parameters handling 2018-12-09 14:14:43 +01:00
Deukhoofd 2e0ac29878 Implements setting to CSHarp lists 2018-12-09 14:05:17 +01:00
Deukhoofd b63e8d37b5 Even better equality checking 2018-12-09 13:47:13 +01:00
Deukhoofd 6e960e38ff Split script tables in numerically keyed and generically keyed 2018-12-09 13:23:09 +01:00
Deukhoofd 2d6e3335aa Adds print basic command 2018-12-09 13:01:03 +01:00
Deukhoofd fb2af879c9 Fixes for binder not being able to get proper method 2018-12-09 12:25:29 +01:00
Deukhoofd 92586e4939 Fixes for equality 2018-12-09 11:45:38 +01:00
Deukhoofd e1b9bb2002 Reworked evaluating of and and or 2018-12-09 11:29:11 +01:00
Deukhoofd 422de5d4eb Rework of function calling to handle generics better 2018-12-09 11:28:27 +01:00
Deukhoofd 43d9360145 Various changes and tweaks to run better 2018-12-08 16:18:38 +01:00
Deukhoofd f6947194b9 Support for easy loading assemblies, and instantly creating enums in the static scope 2018-12-08 11:30:22 +01:00
Deukhoofd 986d00b1a0 Handle chained function call expressions 2018-12-07 20:15:39 +01:00
Deukhoofd 77be6fd996 Support single quote strings 2018-12-07 20:15:27 +01:00
Deukhoofd 2327e18f77 Fixed exception on adding variable to table of which we dont know the context 2018-12-07 20:07:24 +01:00
Deukhoofd 229fe3bffa Fixed wrong error location reporting 2018-12-07 19:29:09 +01:00
Deukhoofd eb1eb81c1b Implements while loops 2018-12-07 19:17:49 +01:00
Deukhoofd fa967383d6 Fix for exception when userdata method call does not exist 2018-12-07 18:53:56 +01:00
Deukhoofd e8369bb672 Implements math library 2018-12-07 18:51:37 +01:00
Deukhoofd f638c25483 Fixes for binding table contents when binder can't be aware of table contents, such as with CSharp calls 2018-12-07 18:23:50 +01:00
Deukhoofd bbab802f2d Fixes for binding userdata method types 2018-12-07 18:15:17 +01:00
Deukhoofd 99ac02924b Handle overloads better 2018-12-07 16:51:17 +01:00