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