kindlich
756599a677
Fixed remaining Test failures
4 lat temu
Stan Hebben
417e99aab0
WIP removing stored types
4 lat temu
Stan Hebben
4d53b6cc85
Fixed something with iterables (but I forgot what)
4 lat temu
kindlich
f4639923f8
Check and escape more special Characters
This should fix https://github.com/CraftTweaker/CraftTweaker/issues/999
4 lat temu
kindlich
eb48f35453
Fixed function definitions not generating properly
4 lat temu
kindlich
457cb2dbec
Some more tests for basic class members
4 lat temu
kindlich
6aae26601c
Fix duplicate Class Warnings
Expansions classes now properly get a number suffix so that expansion classes and scripts no longer share the same name. Also fixes that scripts and expansions cant be in one file
4 lat temu
kindlich
9c4f0081f5
First minor cleanups
4 lat temu
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 lat temu
kindlich
8173105c2b
Added checkcast in function interface wrapping's result
4 lat temu
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 lat temu
kindlich
c4be2b92fa
Fix varargs for no argument and in static methods
4 lat temu
kindlich
f1fcb91619
Fix Expression Visitor using wrong typeParameter list
4 lat temu
kindlich
8ff353bcd1
Allow generic types in Java Signatures
Provide them as class parameters
4 lat temu
kindlich
7cd318a1ce
JavaBytecode: Fixed Contains check being inversed
4 lat temu
kindlich
fb280d54ed
CheckCast after MapGet if not primitive
Required for Type assertion, else a 'Object is not assignable to X' will follow
4 lat temu
kindlich
d04d5d57b6
JavaCompiler: Fix class names
4 lat temu
kindlich
66ec3e003b
Box Map keys when indexGetting
4 lat temu
kindlich
5cba6fc7b0
Checkcast may not work that well with primitives ^^'
4 lat temu
kindlich
c984531cc3
More work on generics
This time for nonexpansions.
The method signatures should be calculated correctly now, though they are still only filled with nulls
4 lat temu
kindlich
1a3075532c
WIP: More work on Generics in Expansions
4 lat temu
kindlich
8f1960209a
WIP: More work on generic parameters in expansions
4 lat temu
kindlich
45029d5e80
Fixed compilation with generic arguments
4 lat temu
Jared
1895fed5e5
update ASM to latest
4 lat temu
kindlich
48ccb11add
Output now creates missing folders
4 lat temu
kindlich
c4acf675e8
[WIP] Duplicate class names, pt. II
Fixed functions not working properly
4 lat temu
kindlich
6d51a81766
Fixed LocalVariableGet calls when inside a lambda
4 lat temu
kindlich
659dd13020
Fixed NPE if a return statement without expression was used
4 lat temu
kindlich
f9d96e18de
Fixed using signature instead of description when checking if a bridge methos is necessary
4 lat temu
kindlich
bf1ecfacd3
Fixed NPE in ScriptingExample due to nonpushing visitor not loaded
4 lat temu
kindlich
1d49da3a9c
Fixed incorrect method signature on lambda methods
They used the signature instead of the description, so there was an AIOOB when the compiler tried to cast a 'TT;' as that only exists in signatures, not in descriptions
5 lat temu
kindlich
9bd9528c43
Removed debug .class file dumps
5 lat temu
kindlich
20f966f47e
[WIP] Duplicated Class names
This commit at least fixes that some classes have the same name, e.g. the name of an expansion class and the name of the script block part within the file.
WIP since it still needs more doing and a way to properly store already generated names.
5 lat temu
kindlich
d4a722cd92
Fixed this call in primitive expansions
Who would've thought that a 'this' can be a non-object :thinking-face:
5 lat temu
kindlich
6ada4ffce1
Replaced hardcoded IntRange class name
Reason: Some iterators use the generated USizeRange which would throw a ClassCastException
5 lat temu
kindlich
d2fdb13730
Fix expansion method signature and call
Signature: Include the type in the signature if it is an expansion method
Call: Call invokeStatic if its an expansion method
5 lat temu
kindlich
341f8c23f5
Jdk classes no longer 'created', stopped 2nd registration of empty classes
- Apparently, ZC tried to create (empty) java.lang and java.util classes
- Script blocks and Module Highleveldefinitions create the same class and they aren't merged but the scripts blocks (which run later) try to replace the definitions. Workaround by preventing 2nd registrations and printing to System.err
5 lat temu
Jared
aaca0261f1
Removed some unneeded static fields
5 lat temu
kindlich
fb3382704d
Skip non-linear interface implementations for Native classes
Fixes an issue where Std::List would implement Iterable and therefore break the scripts.
5 lat temu
kindlich
4a5b508fbe
Pop method return type if ZC thinks a nonvoid method returns a void value
5 lat temu
Jared
82257b2a71
Made the bytecode run unit throw errors instead of eating them
5 lat temu
kindlich
94128e728d
Fixed Optional primitive casts -> String
Now instead uses Objects.toString(...) for them
5 lat temu
kindlich
8f71b442fc
Added unboxingTypeVisitor and fixed primitives in Iterators
5 lat temu
kindlich
07d6866fb2
Fixed Bridge methods IncompatibleClassChangeError
Reason was that it tried to invokeInterface whereas a bridge redirects to a local (virtual) method.
The local method was flagged incorrectly as the same type as the bridger which would be interface, hence the error
5 lat temu
kindlich
3fd8e37ec9
WIP: Rudimentary work on VarAargs
5 lat temu
kindlich
3bf515d8e8
Implemented SuperTypeCast for ExpressionVisitor
5 lat temu
Jared
e7bcbcffaf
Fix maps not working
5 lat temu
jared
8d01795f91
Update 'JavaBytecodeCompiler/src/main/java/org/openzen/zenscript/javabytecode/compiler/JavaExpressionVisitor.java'
5 lat temu
jared
7cb6202149
fixed Hashmap when it should be Map
5 lat temu
Jared
b09c1b6677
Fix maps expecting a class instead of an interface
5 lat temu