kindlich
2a5f279c6e
Fix missing assertions in tests
4 anni fa
kindlich
f6a3872faf
Added StdLibs as submodule
4 anni fa
Stan Hebben
6945ba67be
WIP fixing stdlibs and compilation on the new version
Added functional interface types (Java)
4 anni fa
Stan Hebben
417e99aab0
WIP removing stored types
4 anni fa
kindlich
f4639923f8
Check and escape more special Characters
This should fix https://github.com/CraftTweaker/CraftTweaker/issues/999
4 anni fa
kindlich
cfbaaf9f9b
Tests: Make ScriptBuilder use a LinkedHashMap to preserve file orde
4 anni fa
kindlich
5ab2f6bf08
Adds tests to check that functions in the same package can be read by each other
4 anni fa
kindlich
6b718fa47e
Two more tests
4 anni fa
kindlich
af2ca1e45a
Added a test for generic expansions and a more sophisticated one that uses that Game of life code
4 anni fa
kindlich
eb48f35453
Fixed function definitions not generating properly
4 anni fa
kindlich
457cb2dbec
Some more tests for basic class members
4 anni fa
kindlich
4eb8d63929
Removed unused scripts, added Example script for Conway's game of life
4 anni fa
kindlich
1bf0933315
Change some logging for tests
4 anni fa
kindlich
9c5aaeb2a8
Pushed relevant changes of ScriptingExample.Main
4 anni fa
kindlich
6a77f27c9f
Started with Unit tests
4 anni fa
kindlich
b30bfeb61d
Fixed List Foreach
Changes how Classes from Stdlibs are found in the NativeModule so that their Java type parameters properly match the ones from the Stdlibs files
4 anni fa
kindlich
1b737430f9
Started working on propagating a logger object instead of having to resort to Sysout
Mwahaha, Jared you will have to review this :manic_laugther:
4 anni fa
kindlich
cd038e6f9b
Made ScriptingExample read from subdirectories
.. Unless they have 'nope' in their name
4 anni fa
kindlich
59f5cb9a0a
Made ScriptingExample log to Console
4 anni fa
kindlich
4915d51d3f
Added event stub to scripting example
4 anni fa
kindlich
10fc19cc9f
WIP: Saving so that it is safe :smile:
5 anni fa
kindlich
f387449a4e
Interpolation in BEPs
5 anni fa
Jared
033581a709
Added StdLibs to the scripting example, updated gitignore to block out/
5 anni fa
Stan Hebben
c3b948d8fe
Fixed support for optional parameters. Also implemented java integration for them.
5 anni fa
kindlich
dcebf0edbe
Test script changes
5 anni fa
Stan Hebben
d151b5ef99
Fix nullable types.
5 anni fa
kindlich
9494ef212e
Functional Wrappers, Bridge Methods, Type descriptor fix
Functional interface wrappers should work now
Implementing a method with a signature differing from the actual one (e.g. when dealing with generics) now creates a proper bridge method
The Java Bytecde compiler used an incorrect method in checkCast
We now no longer use hardcoded 'accept's as method names but whatever the context tells us to.
5 anni fa
kindlich
da4c6eb005
WIP Functional Wrapper
Currently only supports 'accepts' methods, until we can get a way to get the actual method signature/name from the class
5 anni fa
Stan Hebben
70bd868af4
Added support for functional interfaces.
5 anni fa
Stan Hebben
9c650d0f5b
- Added correct type variable resolution
- 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)
5 anni fa
Stan Hebben
3f29d8bf0c
- Refactored usage of live objects in the IDE
- Save collapse state of the project browser tree
5 anni fa
Stan Hebben
54f53f79c1
- Improved interface validation: allow definition members to be used as implementation
- Added support for INTERFACE calls in java source code generation
- Minor source code generation quality improvements
5 anni fa
Stan Hebben
aab7cc69f1
- Continued implementation of interfaces in the bytecode compiler.
- Added support to have a native method both as operator and named method
5 anni fa
Stan Hebben
c19e68376b
- Fix arithmetic rules for floats
- Fix float suffixes on integers
5 anni fa
Stan Hebben
ae81e5966e
Added loadMethod utility method for loading in a Method and retrieving its reference.
5 anni fa
Stan Hebben
6fa2a38b30
Fix recursion when methods return or accept a value of their defining class. Fixed bracket expressions with a postfix expression.
5 anni fa
Stan Hebben
045d7f4cea
Fix array support for native java integration
5 anni fa
Stan Hebben
b434566f11
- 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
5 anni fa
Stan Hebben
d9f32182f1
Fixed null comparison.
6 anni fa
Stan Hebben
0d31f0cd9a
Added script parameter system. Also refactored SourceFile info, it's no longer a tag but available as field in ScriptBlock.
6 anni fa
Stan Hebben
e038d2e192
Implement increment & decrement compilation in the bytecode compiler.
6 anni fa
kindlich
05460bdf50
WIP Array initializers pt. II
6 anni fa
kindlich
82a22a3d4f
WIP array initializers
6 anni fa
kindlich
4eaf29c967
Array initializers with and without default value
6 anni fa
Stan Hebben
dd11f65c31
- 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
6 anni fa
Stan Hebben
2f7f3f415d
- Fixed crash when classes doesn't exist + don't output debug classes if not in debug mode
- Fixed constructor support for native classes
- Added project for maven build
- Added missing StdLibs.zip
6 anni fa
Stan Hebben
3094e93529
Simplified dependencies and the build tree with some minor refactoring.
6 anni fa
Stan Hebben
67ee99945e
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.
6 anni fa
Stan Hebben
e0118ed3c2
- Added support for zipped packages
- Simplified compilation process somewhat; removed CompilationUnit class and work more module-oriented instead
6 anni fa
Stan Hebben
cf2a752723
- Fix various bugs in the new system
- Slightly improved the way modules are compiled
6 anni fa