tortilla icon indicating copy to clipboard operation
tortilla copied to clipboard

A thin Clojure wrapper for Java APIs providing efficient and idiomatic interop.

Results 10 tortilla issues
Sort by recently updated
recently updated
newest added

Should verify that this doesn't add significant runtime overhead over manually type hinting, and especially that it is always faster than letting Clojure do runtime reflection. Performance will vary depending...

Function coercion to Functional Interfaces could be improved: - Add support for Functional Interfaces as they are seen during wrapper generation instead of having a hard coded list. This should...

Use a clj-kondo hook to rewrite calls to `defwrapper` so that clj-kondo understands them

Add a simple DSL for matching (groups of) members, something like: `foo` - any member named "foo" `[foo 2]` - any member named "foo" taking 2 args `[foo String Long]`...

There seem to be some cases where a method callable from Java cannot be called with interop from Clojure (a public method from a package private base class). See https://clojure.atlassian.net/browse/CLJ-1243...

If instead of generating functions in `defwrapper` we generated macros, these could then inspect the arguments at compile time. If any arguments are literals (e.g. `1`, `"foo"`, `nil`...), or have...

Type hinting/interop with primitive types (and arrays of primitives) is probably not optimal. Once the main functionality is in place, should spend a bit of time looking into it (possibly...

If a method argument is annotated with @NonNull or similar (or optionally not annotated with @Nullable?) we should exclude it from being called with `nil`.

Provide an option to wrap returned values in a wrapper type. For example, Spark Datasets could be wrapped in a type that handles keyword lookup to return columns from the...