Struct JPanicException

Source
pub struct JPanicException<'a: 'b, 'b> { /* private fields */ }
Expand description

Wrapper for JObjects that implement io.github.gedgygedgy.rust.panic.PanicException. Provides methods to get and take the associated Any.

Looks up the class and method IDs on creation rather than for every method call.

Implementations§

Source§

impl<'a: 'b, 'b> JPanicException<'a, 'b>

Source

pub fn from_env(env: &'b JNIEnv<'a>, obj: JThrowable<'a>) -> Result<Self, Error>

Create a JPanicException from the environment and an object. This looks up the necessary class and method IDs to call all of the methods on it so that extra work doesn’t need to be done on every method call.

§Arguments
  • env - Java environment to use.
  • obj - Object to wrap.
Source

pub fn new( env: &'b JNIEnv<'a>, any: Box<dyn Any + Send + 'static>, ) -> Result<Self, Error>

Create a new PanicException from the given Any.

§Arguments
  • env - Java environment to use.
  • any - Any to put in the PanicException.
Source

pub fn get( &self, ) -> Result<MutexGuard<'_, Box<dyn Any + Send + 'static>>, Error>

Borrows the Any associated with the exception.

Source

pub fn take(&self) -> Result<Box<dyn Any + Send + 'static>, Error>

Takes the Any associated with the exception.

Source

pub fn resume_unwind(&self) -> Result<(), Error>

Resumes unwinding using the Any associated with the exception.

Trait Implementations§

Source§

impl<'a: 'b, 'b> Deref for JPanicException<'a, 'b>

Source§

type Target = JThrowable<'a>

The resulting type after dereferencing.
Source§

fn deref(&self) -> &Self::Target

Dereferences the value.
Source§

impl<'a: 'b, 'b> From<JPanicException<'a, 'b>> for JThrowable<'a>

Source§

fn from(ex: JPanicException<'a, 'b>) -> Self

Converts to this type from the input type.
Source§

impl<'a: 'b, 'b> TryFrom<JPanicException<'a, 'b>> for Box<dyn Any + Send + 'static>

Source§

type Error = Error

The type returned in the event of a conversion error.
Source§

fn try_from(ex: JPanicException<'a, 'b>) -> Result<Self, Error>

Performs the conversion.

Auto Trait Implementations§

§

impl<'a, 'b> Freeze for JPanicException<'a, 'b>

§

impl<'a, 'b> RefUnwindSafe for JPanicException<'a, 'b>

§

impl<'a, 'b> !Send for JPanicException<'a, 'b>

§

impl<'a, 'b> !Sync for JPanicException<'a, 'b>

§

impl<'a, 'b> Unpin for JPanicException<'a, 'b>

§

impl<'a, 'b> UnwindSafe for JPanicException<'a, 'b>

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<'a, T> Desc<'a, T> for T

Source§

fn lookup(self, _: &JNIEnv<'a>) -> Result<T, Error>

Look up the concrete type from the JVM.
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<P, T> Receiver for P
where P: Deref<Target = T> + ?Sized, T: ?Sized,

Source§

type Target = T

🔬This is a nightly-only experimental API. (arbitrary_self_types)
The target type on which the method may be called.
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.