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.
hace 5 años
kindlich
b8be41d1a2
Formatted Functional Interface Wrapper creations
hace 5 años
Stan Hebben
e909486bf3
Added utility method to retrieve the functional interface method from a type.
hace 5 años
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
hace 5 años
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
hace 5 años
Stan Hebben
aab7cc69f1
- Continued implementation of interfaces in the bytecode compiler.
- Added support to have a native method both as operator and named method
hace 5 años
kindlich
d0e5b835c0
Now correctly check against Interface methods
hace 5 años
kindlich
f66a072428
Fix classloader call to super instead of parent
hace 5 años
kindlich
dfbc769f02
Added missing break statements to ASSOC_EQUALS
hace 5 años
kindlich
222c198437
Revert 4d5fc47bcb
hace 5 años
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
hace 6 años
kindlich
bfb0a33b27
Added classLoader parameter to JavaBytecodeRunUnit#run
hace 6 años
kindlich
d630af4178
ASSOC_[NOT]EQUALS
hace 6 años
Stan Hebben
b0895350cb
- Starting work on improving type parameter usage in generic methods
hace 6 años
Stan Hebben
ad57dc2d83
Added type parameters to method descriptors.
hace 6 años
kindlich
9708c58f69
Map.put with class, maybe
hace 6 años
kindlich
1c6c2bcf77
WIP: Possibly TryRethrow and panic Expressions
hace 6 años
kindlich
28c635f584
Expansion Getters/Setters, expansion static fields and Array contains
hace 6 años
Stan Hebben
7102642419
Fix float parsing.
hace 6 años
Stan Hebben
d9f32182f1
Fixed null comparison.
hace 6 años
Stan Hebben
6f2b5931dd
Added missing class.
hace 6 años
Stan Hebben
0d31f0cd9a
Added script parameter system. Also refactored SourceFile info, it's no longer a tag but available as field in ScriptBlock.
hace 6 años
kindlich
07fa6e2ccb
Optional is and isNot null
hace 6 años
kindlich
10bc657ff2
Constructor super calls
hace 6 años
Stan Hebben
131ede5818
Fixed compiled dependencies not being registered properly. Also fixed accidental recursion in visitGetField.
hace 6 años
kindlich
c01d584edb
WIP Array initializers, pt. III
hace 6 años
Stan Hebben
3633ce97d7
Properly implement expressions without return value. Also fixed some bugs in expressions that do return a values. Also added a position to the JavaWriter for easier debugging.
hace 6 años
Stan Hebben
e038d2e192
Implement increment & decrement compilation in the bytecode compiler.
hace 6 años
Stan Hebben
c2737ac7b1
A couple minor changes..
hace 6 años
kindlich
05460bdf50
WIP Array initializers pt. II
hace 6 años
kindlich
280df6c5c0
WIP Array initializers; moved size variable naming to multiArray function
hace 6 años
kindlich
82a22a3d4f
WIP array initializers
hace 6 años
kindlich
4eaf29c967
Array initializers with and without default value
hace 6 años
kindlich
812211e240
WIP - Expansion methods
hace 6 años
Stan Hebben
06e3a0c203
Adding support for builtin constructors
hace 6 años
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
hace 6 años
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
hace 6 años
Stan Hebben
3094e93529
Simplified dependencies and the build tree with some minor refactoring.
hace 6 años
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.
hace 6 años
kindlich
673f98028a
Started with expansions, why not
hace 6 años
Stan Hebben
e0118ed3c2
- Added support for zipped packages
- Simplified compilation process somewhat; removed CompilationUnit class and work more module-oriented instead
hace 6 años
Stan Hebben
cf2a752723
- Fix various bugs in the new system
- Slightly improved the way modules are compiled
hace 6 años
Stan Hebben
f1bb71b3a1
Moved Java compile-time tags to non-global state
hace 6 años
Stan Hebben
b6aa875e42
Fix access modifiers
hace 6 años
Stan Hebben
4ada6df10e
- Added access & static checks to validator
- Removed export access and added internal access support
hace 6 años
Stan Hebben
f11b965626
Fixed remaining critical bugs in the current implementation.
hace 6 años
Stan Hebben
92234bca0e
Removed TypeArgument and simplified type system a little
hace 6 años
Stan Hebben
f97c8450d9
Continue work on storage tags. WIP on compile plugins.
hace 6 años
Stan Hebben
cabd7bab44
Fixed more bugs in the new type system; fixed bugs in function calls; fixed normalization bugs.
hace 6 años
Stan Hebben
bd90cfe0be
- Made important modifications to error reporting so it provides meaningful info
- Fix various normalization bugs
- Fixed bugs with the new stored type system
hace 6 años