kindlich
e9ab512059
Added char to JavaNativeModule
4 anni fa
kindlich
9c5aaeb2a8
Pushed relevant changes of ScriptingExample.Main
4 anni fa
kindlich
6a77f27c9f
Started with Unit tests
4 anni fa
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 anni fa
kindlich
9c4f0081f5
First minor cleanups
4 anni fa
kindlich
6d5f6599ac
Log some suppressed error messages
4 anni fa
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 anni fa
kindlich
96f81433ef
Oops I forgot these for the logging and some cleanup
4 anni fa
kindlich
8173105c2b
Added checkcast in function interface wrapping's result
4 anni fa
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 anni fa
kindlich
c4be2b92fa
Fix varargs for no argument and in static methods
4 anni fa
kindlich
f1fcb91619
Fix Expression Visitor using wrong typeParameter list
4 anni fa
kindlich
85386a9112
Merge remote-tracking branch 'kindlich/development' into development
4 anni fa
kindlich
ed7b56a39b
allow comparison of functionalStorage tags
4 anni fa
kindlich
370c2af1e9
Enums won't have superclasses
4 anni fa
kindlich
8ff353bcd1
Allow generic types in Java Signatures
Provide them as class parameters
4 anni fa
kindlich
d02abd30c3
Fix generic call arguments being overridden by the generic mapper's selfmapping
4 anni fa
kindlich
bc7f15b8ca
Match vararg types implicitly
4 anni fa
kindlich
4a05c341f0
More Matching moved to .equals
4 anni fa
kindlich
06b0859ce2
Some method matching stuff with equals
4 anni fa
kindlich
0880bc8dc2
JavaNativeModule: Added some suppress statements for raw use of types
It's unavoidable at times
4 anni fa
kindlich
916a4dd121
Scripting Engine: Moved Creaton of JavaByteCodeRunUnit to own method to make it accessible from the outside
4 anni fa
kindlich
6e70f7453e
JavaNativeModule: LoadStatic now uses already existing method(s) if present
4 anni fa
kindlich
959618f7fb
JavaNativeModule: CompiledModules now retrieve all compiled information from parent modules
4 anni fa
kindlich
5d07a9331d
JavaNativeModule: Allow ZenMethod annotation to be used alongside the others
4 anni fa
kindlich
7134ba06b3
JavaNativeModule: Allow getters in Expansions
4 anni fa
kindlich
7cd318a1ce
JavaBytecode: Fixed Contains check being inversed
4 anni fa
kindlich
8624e28045
Make Optional type validation use Equals instead of reference equals
Background: Not every storedType int is the same if they come from different modules or so?
4 anni fa
kindlich
a7a7f84159
JavaNativeModule: Add type parameter infos from dependend modules
Background: Otherwise they will throw Exceptions because the class definitions are there but not the type infos
4 anni fa
kindlich
710d29a45a
JavaNativeModule: Fixed Method selection for Functional interfaces
Background: We only checked public nondefault, that matched for public statics as well.
Now checks for public nodefault abstract
Also TODO: Functional Type may not be part of functional Method's signature
4 anni fa
kindlich
ee949a7bd1
JavaNative: Moved loading of method return type to a latter time
Background: If the return type was a generic parameter, that early it wouldn't have been populated yet, and why load the return type as first thing in a method anyways?
4 anni fa
kindlich
73cccd9a35
Fix approximate member choosing when Inherited methods are involved
Background: Approximate member choosing is based only on the types, so an overridden method would match twice, but with different priority. Fixes this by including a priority check before deciding whether or not to throw an error
4 anni fa
kindlich
8bc801385c
Fix using parent's members in TypeMembers
Background: For some classes the TypeId does not have the super class but the definition has. Now checking both
4 anni fa
kindlich
8773d157ac
JavaNativeModule: Don't add methods whose signature was overriden to child class
Background: Javac creates an ACC_BRIDGE method to deal with the signature change (either a covariant parameter or contravariant return type change).
Hence there are two declared methods, one that is the old one, one that is new. For Signatures where only the return type changed this caused both to be registered and an ambiguity later where ZC could not determine which to choose
4 anni fa
kindlich
fb280d54ed
CheckCast after MapGet if not primitive
Required for Type assertion, else a 'Object is not assignable to X' will follow
4 anni fa
kindlich
e11d51a9a9
Allow empty ()
Required for lambdas
4 anni fa
kindlich
d04d5d57b6
JavaCompiler: Fix class names
4 anni fa
kindlich
cd038e6f9b
Made ScriptingExample read from subdirectories
.. Unless they have 'nope' in their name
4 anni fa
kindlich
66ec3e003b
Box Map keys when indexGetting
4 anni fa
kindlich
59f5cb9a0a
Made ScriptingExample log to Console
4 anni fa
kindlich
5cba6fc7b0
Checkcast may not work that well with primitives ^^'
4 anni fa
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 anni fa
kindlich
4ad3331928
Added Signature to JavaField constructor
Was an instance field all along, but always set to null
4 anni fa
kindlich
1a3075532c
WIP: More work on Generics in Expansions
4 anni fa
kindlich
8f1960209a
WIP: More work on generic parameters in expansions
4 anni fa
kindlich
45029d5e80
Fixed compilation with generic arguments
4 anni fa
kindlich
a96a0f41c0
Fixed JNM#getFunctionalInterfaceMethod
Now it doesn't select the first nondefault method but the first public nondefault method
4 anni fa
kindlich
5a9962b07a
[WIP] Skip member evaluation if class should not be loaded in the first place
Reason behind this is to prevent NoClassDefFoundErrors for working with Sided classes in MCF
4 anni fa
kindlich
5abd2b5b01
[WIP] Compile default values in functions
4 anni fa
kindlich
ab219cfc98
Merge remote-tracking branch 'jared/development' into genericParams
4 anni fa