Commit Graph

310 Commits

Author SHA1 Message Date
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
Deukhoofd ac05647d71
Reworked script function attribute, added initial math library 2018-12-07 16:11:52 +01:00
Deukhoofd 9bd82174f2
Implements remainder and exponent operators 2018-12-07 15:29:46 +01:00
Deukhoofd f504a8706e
Fix null reference error in evaluator 2018-12-07 15:17:24 +01:00