Jan-Willem Harmannij
Jan-Willem Harmannij
That'd be appreciated! The nullability annotations are currently only set on parameters, not return values. And array elements and generic types aren't annotated yet. The current code is very simple:...
@mrlem I have a rather large PR (#238) ready to merge into main, changing the packages and modules from `io.github.jwharm.javagi` to `org.javagi`. If you're working on a PR for JSpecify...
Hey @mrlem are you still looking into the JSpecify nullability annotations? Otherwise I'll probably give it a go by myself.
I'd love to replace the reflection code with an annotation processor 🙂 With early discovery, do you mean that it could be used to register Java classes as GTypes during...
Yes the "glue class" would call `GObjects.typeRegisterStaticSimple()`, `GObjects.typeAddInterfaceStatic()` etc with the correct names, types and properties from the annotated class. Using a ServiceLoader for this is really neat. I've been...
You're right, nobody should be on JDK 22 anymore. The lack of markdown support in Javapoet is the blocking issue for this. To be honest, the current markdown to javadoc...
Could this be the same issue as #295, that GstAudio hasn't been initialized? In other words, did you try calling `GstAudio.javagi$ensureInitialized();` before using the GstStreamVolume interface?
Yes that will work. But it’s a workaround and shouldn’t be necessary. I suspect that there’s a bug related to GstElement being an abstract class. I’ll have to investigate a...
OK I found the cause. The element that is returned by `pipeline.getByInterface(StreamVolume.getType())` is of a type that isn't publicly documented in the GObject-Introspection data; basically a "private class". Java-GI tries...
One other thing that complicates this issue: The return type of `getByInterface()` is `Element`. But the `StreamVolume` interface can be applied to any GObject-derived class. So I cannot change `getByInterface()`...