Struct glib::closure::RustClosure
source · [−]pub struct RustClosure(_);
Implementations
Creates a new closure around a Rust closure.
See [glib::closure!
] for a way to create a closure with concrete types.
Panics
Invoking the closure with wrong argument types or returning the wrong return value type will panic.
Example
use glib::prelude::*;
let closure = glib::RustClosure::new(|values| {
let x = values[0].get::<i32>().unwrap();
Some((x + 1).to_value())
});
assert_eq!(
closure.invoke::<i32>(&[&1i32]),
2,
);
Creates a new closure around a Rust closure.
See [glib::closure_local!
] for a way to create a closure with concrete types.
Panics
Invoking the closure with wrong argument types or returning the wrong return value type will panic.
Invoking the closure from a different thread than this one will panic.
Invokes the closure with the given arguments.
For invalidated closures this returns the “default” value of the return type. For nullable
types this is None
, which means that e.g. requesting R = String
will panic will R = Option<String>
will return None
.
Panics
The argument types and return value type must match the ones expected by the closure or otherwise this function panics.
Invokes the closure with the given arguments.
For invalidated closures this returns the “default” value of the return type.
Panics
The argument types and return value type must match the ones expected by the closure or otherwise this function panics.
Invalidates the closure.
Invoking an invalidated closure has no effect.
Trait Implementations
Performs the conversion.
This method tests for self
and other
values to be equal, and is used
by ==
. Read more
This method tests for !=
.
This method returns an ordering between self
and other
values if one exists. Read more
This method tests less than (for self
and other
) and is used by the <
operator. Read more
This method tests less than or equal to (for self
and other
) and is used by the <=
operator. Read more
This method tests greater than (for self
and other
) and is used by the >
operator. Read more
Auto Trait Implementations
impl RefUnwindSafe for RustClosure
impl Send for RustClosure
impl Sync for RustClosure
impl Unpin for RustClosure
impl UnwindSafe for RustClosure
Blanket Implementations
Mutably borrows from an owned value. Read more