Hi again. I have detected a tricky edge case. I'm don't know Java very well, so bear with me if I get something wrong here:
public class TestBaseClass3{
public int trickyCase(int a, String b) {
return 6;
}
public int trickyCase(java.lang.Integer a, String b) {
return 7;
}
}
It is trickey to override the trickyCase that returns 6.
(proxy+ [] TestBaseClass3
;; Impossible: "Only long and double primitives are supported"
(trickyCase [this ^int a b] 8))
I propose that there should be an option to explicitly declare the type signatures independent of hints. I found something like (trickyCase [this a b] [int java.lang.String :=> int] ...) ergonomic (example: https://github.com/owenRiddy/proxy-plus-minus/blob/main/test/clj/proxy_plus_minus/core_test.clj#L276).
If you like the idea I can put together a PR for proxy-plus.
Hi again. I have detected a tricky edge case. I'm don't know Java very well, so bear with me if I get something wrong here:
It is trickey to override the trickyCase that returns 6.
I propose that there should be an option to explicitly declare the type signatures independent of hints. I found something like (trickyCase [this a b] [int java.lang.String :=> int] ...) ergonomic (example: https://github.com/owenRiddy/proxy-plus-minus/blob/main/test/clj/proxy_plus_minus/core_test.clj#L276).
If you like the idea I can put together a PR for
proxy-plus.