[WIP] implemented getReturnTyp() for some Statements
WIP: Not really tested and contains RuntimeExceptions that I used for testing
WIP: Not all possible return types covered
WIP: Not really clear which order/priority some statement contents should be checked
WIP: Not dealing with type mismatches or one branch returning something a subclass of the other branch's return type
- Fixed a number of bugs
- Upgrading build system to a more uniform system
- Improving error output (for IDE)
- Changed parser to generate line offsets differently (easier for IDE to process)
- Fix auto getters & setters for static fields not being static
- Fix getters for globals not having their corresponding fields registered correctly in the native implementation
- Added java sources for JavaScripting
- Fix crash when performing access checks between script and class
- Fix default constructor not working properly
- Fix integration classes without exposed constructor being instantiable if they have a default (non-exposed) constructor
- Fix extern methods failing validation
Revamped the compilation system; it now works fully modular. Also, a new ScriptingEngine class has been created to make it very easy to create a scripting environment.
- Fix missing shift operators in some integer types
- Fix some problems when comparing a long with an int or ulong with uint
- Add signed-unsigned implicit array conversion (sbyte[] <-> byte[], short[] <-> ushort[], int[] <-> uint[], long[] <-> ulong[])
- Fix bug when copying multiple lines from the source editor
- Added string <-> byte[] conversion operations
- Fix unsigned arrays, use compact representations
- Added suffixes & custom suffixes
- Added 0x 0b 0o for hex, binary and octal notation
- Ranges now only have a single base type; from and to must be the same type
- Adjusted builtins and stdlib to use usize where applicable
- Moved building a SemanticModule from ParsedFile to the parser; reduces dependencies
Fixed results from generic methods not being cast to the right type. Also fixed some bugs related to variants and added the variant value creation syntax VariantName.Option(arguments).
- Fixed ranges, all range types should be supported now
- Cleaned up unused code
- Refactored the JavaMethodInfo class to the shared JavaMethod one
- Use valueOf for boxing instead of the boxed type constructors