pub struct Checked<T: UeClass> { /* private fields */ }Expand description
A pre-validated handle to a UObject. Proves that the object was alive at the time of validation. Used as the receiver for codegen extension trait methods, which can then skip per-call validity checks.
Obtain via UObjectRef::checked() or Pinned::as_checked().
Implementations§
Source§impl<T: UeClass> Checked<T>
impl<T: UeClass> Checked<T>
Sourcepub fn raw(&self) -> UObjectHandle
pub fn raw(&self) -> UObjectHandle
Get the underlying raw handle.
Sourcepub fn as_ref(&self) -> UObjectRef<T>
pub fn as_ref(&self) -> UObjectRef<T>
Downgrade back to a UObjectRef<T>.
Sourcepub fn is_a<U: UeClass>(&self) -> bool
pub fn is_a<U: UeClass>(&self) -> bool
Check whether this object is an instance of U (or a subclass of U).
No validity check needed — already validated at Checked construction.
Sourcepub fn cast<U: UeClass>(self) -> RustealResult<Checked<U>>
pub fn cast<U: UeClass>(self) -> RustealResult<Checked<U>>
Cast to a different UClass type. Fails if not an instance of U.
Trait Implementations§
impl<T: Copy + UeClass> Copy for Checked<T>
Source§impl<T: HasParent> Deref for Checked<T>
Blanket Deref: Checked<Child> auto-derefs to Checked<Parent>.
Safe because Checked<T> is #[repr(transparent)] over UObjectHandle.
impl<T: HasParent> Deref for Checked<T>
Blanket Deref: Checked<Child> auto-derefs to Checked<Parent>.
Safe because Checked<T> is #[repr(transparent)] over UObjectHandle.
impl<T: Eq + UeClass> Eq for Checked<T>
impl<T: UeClass> Send for Checked<T>
impl<T: PartialEq + UeClass> StructuralPartialEq for Checked<T>
Source§impl<T: UeClass> ValidHandle for Checked<T>
impl<T: UeClass> ValidHandle for Checked<T>
Source§fn handle(&self) -> UObjectHandle
fn handle(&self) -> UObjectHandle
Return the raw handle. The implementor guarantees (or debug-asserts)
that the handle is valid.
Auto Trait Implementations§
impl<T> !Sync for Checked<T>
impl<T> Freeze for Checked<T>
impl<T> RefUnwindSafe for Checked<T>
impl<T> Unpin for Checked<T>
impl<T> UnsafeUnpin for Checked<T>
impl<T> UnwindSafe for Checked<T>
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more