kindlich
6b718fa47e
Two more tests
před 4 roky
kindlich
af2ca1e45a
Added a test for generic expansions and a more sophisticated one that uses that Game of life code
před 4 roky
kindlich
eb48f35453
Fixed function definitions not generating properly
před 4 roky
kindlich
1d0289c19f
Fix matchesExact check only comparing minimum amount of parametters
před 4 roky
kindlich
457cb2dbec
Some more tests for basic class members
před 4 roky
kindlich
4eb8d63929
Removed unused scripts, added Example script for Conway's game of life
před 4 roky
kindlich
1bf0933315
Change some logging for tests
před 4 roky
kindlich
e9ab512059
Added char to JavaNativeModule
před 4 roky
kindlich
9c5aaeb2a8
Pushed relevant changes of ScriptingExample.Main
před 4 roky
kindlich
6a77f27c9f
Started with Unit tests
před 4 roky
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
před 4 roky
kindlich
9c4f0081f5
First minor cleanups
před 4 roky
kindlich
6d5f6599ac
Log some suppressed error messages
před 4 roky
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
před 4 roky
kindlich
96f81433ef
Oops I forgot these for the logging and some cleanup
před 4 roky
kindlich
8173105c2b
Added checkcast in function interface wrapping's result
před 4 roky
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:
před 4 roky
kindlich
c4be2b92fa
Fix varargs for no argument and in static methods
před 4 roky
kindlich
f1fcb91619
Fix Expression Visitor using wrong typeParameter list
před 4 roky
kindlich
85386a9112
Merge remote-tracking branch 'kindlich/development' into development
před 4 roky
kindlich
ed7b56a39b
allow comparison of functionalStorage tags
před 4 roky
kindlich
370c2af1e9
Enums won't have superclasses
před 4 roky
kindlich
8ff353bcd1
Allow generic types in Java Signatures
Provide them as class parameters
před 4 roky
kindlich
d02abd30c3
Fix generic call arguments being overridden by the generic mapper's selfmapping
před 4 roky
kindlich
bc7f15b8ca
Match vararg types implicitly
před 4 roky
kindlich
4a05c341f0
More Matching moved to .equals
před 4 roky
kindlich
06b0859ce2
Some method matching stuff with equals
před 4 roky
kindlich
0880bc8dc2
JavaNativeModule: Added some suppress statements for raw use of types
It's unavoidable at times
před 4 roky
kindlich
916a4dd121
Scripting Engine: Moved Creaton of JavaByteCodeRunUnit to own method to make it accessible from the outside
před 4 roky
kindlich
6e70f7453e
JavaNativeModule: LoadStatic now uses already existing method(s) if present
před 4 roky
kindlich
959618f7fb
JavaNativeModule: CompiledModules now retrieve all compiled information from parent modules
před 4 roky
kindlich
5d07a9331d
JavaNativeModule: Allow ZenMethod annotation to be used alongside the others
před 4 roky
kindlich
7134ba06b3
JavaNativeModule: Allow getters in Expansions
před 4 roky
kindlich
7cd318a1ce
JavaBytecode: Fixed Contains check being inversed
před 4 roky
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?
před 4 roky
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
před 4 roky
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
před 4 roky
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?
před 4 roky
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
před 4 roky
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
před 4 roky
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
před 4 roky
kindlich
fb280d54ed
CheckCast after MapGet if not primitive
Required for Type assertion, else a 'Object is not assignable to X' will follow
před 4 roky
kindlich
e11d51a9a9
Allow empty ()
Required for lambdas
před 4 roky
kindlich
d04d5d57b6
JavaCompiler: Fix class names
před 4 roky
kindlich
cd038e6f9b
Made ScriptingExample read from subdirectories
.. Unless they have 'nope' in their name
před 4 roky
kindlich
66ec3e003b
Box Map keys when indexGetting
před 4 roky
kindlich
59f5cb9a0a
Made ScriptingExample log to Console
před 4 roky
kindlich
5cba6fc7b0
Checkcast may not work that well with primitives ^^'
před 4 roky
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
před 4 roky
kindlich
4ad3331928
Added Signature to JavaField constructor
Was an instance field all along, but always set to null
před 4 roky