kindlich
c38fabac00
Re-enable junit in ScriptingExample
4 jaren geleden
kindlich
2a5f279c6e
Fix missing assertions in tests
4 jaren geleden
kindlich
f6a3872faf
Added StdLibs as submodule
4 jaren geleden
Stan Hebben
6945ba67be
WIP fixing stdlibs and compilation on the new version
Added functional interface types (Java)
4 jaren geleden
Stan Hebben
417e99aab0
WIP removing stored types
4 jaren geleden
kindlich
f4639923f8
Check and escape more special Characters
This should fix https://github.com/CraftTweaker/CraftTweaker/issues/999
4 jaren geleden
kindlich
cfbaaf9f9b
Tests: Make ScriptBuilder use a LinkedHashMap to preserve file orde
4 jaren geleden
kindlich
5ab2f6bf08
Adds tests to check that functions in the same package can be read by each other
4 jaren geleden
kindlich
6b718fa47e
Two more tests
4 jaren geleden
kindlich
af2ca1e45a
Added a test for generic expansions and a more sophisticated one that uses that Game of life code
4 jaren geleden
kindlich
eb48f35453
Fixed function definitions not generating properly
4 jaren geleden
kindlich
457cb2dbec
Some more tests for basic class members
4 jaren geleden
kindlich
4eb8d63929
Removed unused scripts, added Example script for Conway's game of life
4 jaren geleden
kindlich
1bf0933315
Change some logging for tests
4 jaren geleden
kindlich
9c5aaeb2a8
Pushed relevant changes of ScriptingExample.Main
4 jaren geleden
kindlich
6a77f27c9f
Started with Unit tests
4 jaren geleden
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 jaren geleden
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 jaren geleden
kindlich
cd038e6f9b
Made ScriptingExample read from subdirectories
.. Unless they have 'nope' in their name
4 jaren geleden
kindlich
59f5cb9a0a
Made ScriptingExample log to Console
4 jaren geleden
kindlich
4915d51d3f
Added event stub to scripting example
4 jaren geleden
kindlich
10fc19cc9f
WIP: Saving so that it is safe :smile:
5 jaren geleden
kindlich
f387449a4e
Interpolation in BEPs
5 jaren geleden
Jared
033581a709
Added StdLibs to the scripting example, updated gitignore to block out/
5 jaren geleden
Stan Hebben
c3b948d8fe
Fixed support for optional parameters. Also implemented java integration for them.
5 jaren geleden
kindlich
dcebf0edbe
Test script changes
5 jaren geleden
Stan Hebben
d151b5ef99
Fix nullable types.
5 jaren geleden
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 jaren geleden
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 jaren geleden
Stan Hebben
70bd868af4
Added support for functional interfaces.
5 jaren geleden
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 jaren geleden
Stan Hebben
3f29d8bf0c
- Refactored usage of live objects in the IDE
- Save collapse state of the project browser tree
5 jaren geleden
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 jaren geleden
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 jaren geleden
Stan Hebben
c19e68376b
- Fix arithmetic rules for floats
- Fix float suffixes on integers
5 jaren geleden
Stan Hebben
ae81e5966e
Added loadMethod utility method for loading in a Method and retrieving its reference.
5 jaren geleden
Stan Hebben
6fa2a38b30
Fix recursion when methods return or accept a value of their defining class. Fixed bracket expressions with a postfix expression.
5 jaren geleden
Stan Hebben
045d7f4cea
Fix array support for native java integration
5 jaren geleden
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 jaren geleden
Stan Hebben
d9f32182f1
Fixed null comparison.
6 jaren geleden
Stan Hebben
0d31f0cd9a
Added script parameter system. Also refactored SourceFile info, it's no longer a tag but available as field in ScriptBlock.
6 jaren geleden
Stan Hebben
e038d2e192
Implement increment & decrement compilation in the bytecode compiler.
6 jaren geleden
kindlich
05460bdf50
WIP Array initializers pt. II
6 jaren geleden
kindlich
82a22a3d4f
WIP array initializers
6 jaren geleden
kindlich
4eaf29c967
Array initializers with and without default value
6 jaren geleden
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 jaren geleden
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 jaren geleden
Stan Hebben
3094e93529
Simplified dependencies and the build tree with some minor refactoring.
6 jaren geleden
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 jaren geleden
Stan Hebben
e0118ed3c2
- Added support for zipped packages
- Simplified compilation process somewhat; removed CompilationUnit class and work more module-oriented instead
6 jaren geleden