java:jinterface-implementation: multiple interfaces?

Steven Nunez steve_nunez at yahoo.com
Thu Jul 30 03:18:16 UTC 2020


Is there a way to implement multiple interfaces on a single Java proxy? This code almost works:

(java:jinterface-implementation
 "org.apache.spark.api.java.function.Function"

 "call" (lambda (s) (length s)))
except that the proxy also needs to implement Serializable. The jproxy code in java.lisp seems to suggest that multiple implementations are allowed:
(defgeneric jmake-proxy (interface implementation &optional lisp-this)  (:documentation "Returns a proxy Java object implementing the provided interface(s)...
but I can't see adding multiple implementations in the code. I see there's a few jmake-proxy methods in there though: are there any documentation or examples for their usage? Lsw2 doesn't use this at all and I can't find any other good examples of using ABCL.

Multiple interfaces from the jinterface-implementation function would be ideal, as the above code could then be wrapped with a macro to produce a 'spark-lambda' and be used nearly like the regular ABCL lambda.



-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mailman.common-lisp.net/pipermail/armedbear-devel/attachments/20200730/b58b7385/attachment.htm>


More information about the armedbear-devel mailing list