kindlich
8f96b3b2a8
Merge remote-tracking branch 'Stan/development' into development
5 years ago
Stan Hebben
c3b948d8fe
Fixed support for optional parameters. Also implemented java integration for them.
5 years ago
kindlich
b34bdf376a
Enums now are registered to their class package, fields use the correct modifiers
TODO: Verify that the access check is correct
5 years ago
kindlich
5374b6f716
WIP: Loggers, added parsing logger
5 years ago
kindlich
96b6386d79
JavaCompiler: Use LinkedHashMap to preserve execution order
5 years ago
kindlich
2255428bd9
Created ScriptingEngine#createScriptedModule overload that accepts loggers
5 years ago
kindlich
f6516d5246
Set file and line meta info
5 years ago
kindlich
dcebf0edbe
Test script changes
5 years ago
kindlich
8dc22bcfeb
Java Bytecode Array Constructor: Implemented projection with indices
5 years ago
kindlich
6f95dd3ff9
Java Bytecode Array Constructor: Finished Projection function invocation
5 years ago
kindlich
d062ad0149
Fixed Bridge methods invoking in the incorrect class
5 years ago
kindlich
a4d4176e7f
JavaNativeLoader: removed unneccessary Field
5 years ago
kindlich
608baebce8
Added modules getter to the ScriptingEngine and allow empty base base package names in JavaNativeModule
5 years ago
Stan Hebben
a86086cdec
Added native loader to resolve dependencies between native modules.
5 years ago
Stan Hebben
d151b5ef99
Fix nullable types.
5 years ago
Stan Hebben
5ea804b3d3
Fix method signatures containing only the short name instead of full class name.
5 years ago
Stan Hebben
7844dea790
Removed unused files.
5 years ago
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 years ago
kindlich
177b59341d
Merge remote-tracking branch 'Stan/development' into development
5 years ago
Stan Hebben
00e09fc358
Fix modifiers on functional interfaces
5 years ago
kindlich
b8be41d1a2
Formatted Functional Interface Wrapper creations
5 years ago
kindlich
82eb1d61eb
Merge remote-tracking branch 'Stan/development' into WIP/functionalInterfaces
5 years ago
Stan Hebben
5f9aac70c8
Added missing update to JavaNativeModule
5 years ago
kindlich
c69b92718a
Merge remote-tracking branch 'Stan/development' into WIP/functionalInterfaces
5 years ago
Stan Hebben
e909486bf3
Added utility method to retrieve the functional interface method from a type.
5 years ago
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 years ago
kindlich
33f3e6406a
Use IdentityHashMap for parameter Info
5 years ago
kindlich
476e1b350a
Functional Interfaces Bytecode Step I
Directly using the lambda where the functional interface is requested works.
The lambda class will then directly implement the functionalInterface and not use a wrapper class
5 years ago
Stan Hebben
70bd868af4
Added support for functional interfaces.
5 years ago
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 years ago
Stan Hebben
3f29d8bf0c
- Refactored usage of live objects in the IDE
- Save collapse state of the project browser tree
5 years ago
Stan Hebben
da051f56ce
Update generated code
5 years ago
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 years ago
Stan Hebben
6d84156dfd
Merge remote-tracking branch 'kindlich/development' into development
5 years ago
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 years ago
kindlich
75785f413f
Minor code reformat
5 years ago
kindlich
8f019d721d
Now actually apply the typeParameters
5 years ago
kindlich
d0e5b835c0
Now correctly check against Interface methods
5 years ago
Stan Hebben
c19e68376b
- Fix arithmetic rules for floats
- Fix float suffixes on integers
5 years ago
Stan Hebben
ae81e5966e
Added loadMethod utility method for loading in a Method and retrieving its reference.
5 years ago
Stan Hebben
6fa2a38b30
Fix recursion when methods return or accept a value of their defining class. Fixed bracket expressions with a postfix expression.
5 years ago
Stan Hebben
045d7f4cea
Fix array support for native java integration
5 years ago
kindlich
f66a072428
Fix classloader call to super instead of parent
5 years ago
kindlich
dfbc769f02
Added missing break statements to ASSOC_EQUALS
5 years ago
kindlich
222c198437
Revert 4d5fc47bcb
5 years ago
kindlich
26fae95605
Merge remote-tracking branch 'Stan/development' into development
5 years ago
Stan Hebben
533bd04700
Fix field names for globals
5 years ago
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 years ago
kindlich
4d5fc47bcb
Diry hack to use findLoadedClass on the parent loader
Lokking at you ForgeModLoader that needs to reinitialize about every class it comes across
6 years ago
kindlich
94a48a0942
Added ScriptLoader parameter to ScriptingEngine#run
6 years ago