Commit Graph

303 Commits

Author SHA1 Message Date
Deukhoofd e02eb39753
Support for comments 2018-11-26 13:42:50 +01:00
Deukhoofd 2ee8170f74
Fix infinite loop with functions calls 2018-11-25 22:06:20 +01:00
Deukhoofd 2111f4080c
Fixes string not checking if it ends with a quotation mark 2018-11-25 22:05:01 +01:00
Deukhoofd 8f91b7f550
Fixes infinite loop in parsing blocks 2018-11-25 21:50:18 +01:00
Deukhoofd 55206f3807
Changed function variable declarations to BoundVariableSymbols 2018-11-25 21:44:03 +01:00
Deukhoofd d4fc24b389
Fixes Source Text length being off by the length of a newline 2018-11-25 21:18:58 +01:00
Deukhoofd 5f9c32874a
Diagnostic for invalid number of parameters 2018-11-25 20:55:36 +01:00
Deukhoofd 6bb8139f40
Break several while loop if tokens are not consumed 2018-11-25 19:45:10 +01:00
Deukhoofd cae3d7fb53
Lots of work for handling incomplete code and inspections better 2018-11-25 19:30:18 +01:00
Deukhoofd 0b6359f499
Fix broken reference 2018-11-24 15:58:34 +01:00
Deukhoofd cd04486d16
Adds Unary length operator 2018-11-24 15:11:33 +01:00
Deukhoofd 2dc59c5f8b
Adds tostring and type functions 2018-11-24 14:49:20 +01:00
Deukhoofd 194e7236c4
Unit tests for ipairs and pairs, as well as changing how they handle null. ipairs now breaks at first nil value, pairs skips it 2018-11-24 14:39:53 +01:00
Deukhoofd 13ac6f2754
Rework for loops to use iterators, requiring pairs or ipairs function to handle multi-assignment 2018-11-24 14:35:23 +01:00
Deukhoofd c63df3c941
Work on standard libraries.
- Allows Standard Libraries to work with actual luatypes, to prevent constant back and forth casting
- adds ipairs function, doesn't do anything except maintain compatibility with lua
- several tests
2018-11-24 13:35:40 +01:00
Deukhoofd 806b3d5689
Fix breaking of most complex expressions 2018-11-24 13:04:21 +01:00
Deukhoofd 9be1cfa1fc
Fixes issue where functions inside binary operators wouldnt work 2018-11-24 12:55:51 +01:00
Deukhoofd 62a18e22d4
Fixed Scoping issue 2018-11-24 12:42:54 +01:00
Deukhoofd 638394d25b
Generic For Loops 2018-11-23 18:18:07 +01:00
Deukhoofd 2db4d0607e
Implements break statement 2018-11-23 15:27:48 +01:00
Deukhoofd d2c14d213c
Add Numeric For Loops 2018-11-23 14:38:45 +01:00
Deukhoofd 1928979b40
More unit tests 2018-11-23 13:34:46 +01:00
Deukhoofd 8d6d6e45af
Handle lua -> C# function invocation exceptions more gracefully 2018-11-23 13:34:21 +01:00
Deukhoofd d6e18d9b0c
Better handling of Static Scope 2018-11-23 13:28:11 +01:00
Deukhoofd 95f76bc5e3
Minor performance tweak to handle LuaType casting better if type is already a LuaType 2018-11-23 13:24:41 +01:00
Deukhoofd ea24695128
Fixes binder assigning values to static read only scope 2018-11-23 13:18:49 +01:00
Deukhoofd aae16e8b62
General fixes for Tests 2018-11-23 12:55:28 +01:00
Deukhoofd 1e9b0e0166
Some initial work on standard libraries 2018-11-21 20:59:27 +01:00
Deukhoofd 68830a1676
Don't bind/evaluate variable value if the name is just an underscore 2018-11-21 17:25:12 +01:00
Deukhoofd 4ab755d0d2
Support for assigning multiple variables from a table 2018-11-21 17:18:35 +01:00
Deukhoofd 105c40bc05
Special UserData types for ILists(includes arrays) and IDictionaries 2018-11-21 14:49:59 +01:00
Deukhoofd 1d24be85d6
Better error handling of getting userdata members 2018-11-21 14:11:52 +01:00
Deukhoofd 8dd2be8c67
Better error handling for setting userdata values 2018-11-21 14:04:43 +01:00
Deukhoofd 605b98284d
Handle Unary operator overloading for UserData 2018-11-21 13:54:41 +01:00
Deukhoofd c627100e9c
Handle Binary operator overloading for UserData 2018-11-21 13:47:16 +01:00
Deukhoofd 0702b9f271
Allows for overloaded functions in CSharp to be used, initial work on handling CSHarp operators 2018-11-21 13:08:41 +01:00
Deukhoofd fe4a8d25ad
Message reporting if indexable value does not exist 2018-11-20 17:33:51 +01:00
Deukhoofd 2f8c295675
Allow identifiers to start with an underscore 2018-11-20 14:23:50 +01:00
Deukhoofd 8f6d2591f3
Make userdata fields/properties/methods case insensitive
While this can potentially cause collisions, this allows us to easily use Lua's style guide
2018-11-20 14:17:15 +01:00
Deukhoofd df8c7b99c9
Made indexable also work with full stop index 2018-11-20 14:05:34 +01:00
Deukhoofd 066af47b5b
Work on calling CSharp functions from Lua 2018-11-20 12:55:41 +01:00
Deukhoofd d1b1675bba
Added UserData support 2018-11-19 17:22:25 +01:00
Deukhoofd 7d551b6313
Adds assignment to tables 2018-11-19 16:22:13 +01:00
Deukhoofd f4ae57c550
Fix Binder not allowing setting variables due to parent scope 2018-11-19 14:45:20 +01:00
Deukhoofd c4962ac24c
Removed accidental syntax 2018-11-19 14:30:00 +01:00
Deukhoofd 2787d947b5
Better error message if type is not indexable with type 2018-11-19 14:29:35 +01:00
Deukhoofd 86447d0a36
Made strings indexable 2018-11-19 13:53:44 +01:00
Deukhoofd b3b26964cc
More fixes for scope 2018-11-19 12:49:48 +01:00
Deukhoofd 1f57eed3e7
Reworked scope again 2018-11-19 12:17:21 +01:00
Deukhoofd 860f2cc7e5
Lots of work on rewriting functions to allow more functionality 2018-11-18 22:22:30 +01:00