Crate duchess

source
Expand description

Experiments with Java-Rust interop.

Re-exports§

Modules§

  • Contains reusable declarations for classes distributed by the JDK under the java.* packages.
  • Contains traits with methods expected to be invoked by end-users.

Macros§

Structs§

  • An owned reference to a non-null Java object of type T.
  • Represents a handle to a running JVM. You rarely access this explicitly as a duchess user.
  • An owned local reference to a non-null Java object of type T. The reference will be freed when dropped. Cannot be shared across threads or [Jvm::with] invocations.
  • Marker type used to indicate an attempt to dereference a null java reference. See TryJDeref trait.

Enums§

Traits§

  • Possibly null reference to a Java object.
  • Types that are able to be converted back into a Rust T, either because they will produce a Rust primitive T or or because we can convert into them via a JNI call.
  • Reference to a Java object that cannot be null (e.g., Java<java::lang::Object>).
  • A trait for zero-sized dummy types that represent Java object types.
  • Reference to a Java object that may or may not be null. Implemented both by non-null references like Java<java::lang::Object> or &java::lang::Object and by maybe-null references like Option<Java<java::lang::Object>>.

Type Aliases§

  • Result returned by most Java operations that may contain a local reference to a thrown exception.
  • Result returned by crate::Jvm::with() that will store any uncaught exception as a global reference.

Attribute Macros§

Derive Macros§