Lines Matching refs:Registration
285 // SAFETY: `ptr` is non-null and was set via `into_foreign()` in `Registration::new()`;
296 // `Registration::drop()` calls `from_foreign()`.
312 /// [`Registration::new()`].
337 /// [`Registration::new()`].
361 // SAFETY: `adev` points to the memory that has been allocated in `Registration::new`, via
445 pub struct Registration<'a, F: ForLt + 'static> {
450 impl<'a, F: ForLt> Registration<'a, F>
461 /// The caller must not `mem::forget()` the returned [`Registration`] or otherwise prevent its
465 /// If the registration data is `'static`, use the safe [`Registration::new()`] instead.
484 // SAFETY: `'a` is invariant (via `Registration`'s `PhantomData`). Lifetimes do not
543 /// Safe variant of [`Registration::new_with_lt()`] for registration data that does not contain
557 // so forgetting the `Registration` cannot cause use-after-free.
562 impl<F: ForLt> Drop for Registration<'_, F> {
583 // SAFETY: A `Registration` of a `struct auxiliary_device` can be released from any thread.
584 unsafe impl<F: ForLt> Send for Registration<'_, F> where for<'a> F::Of<'a>: Send {}
586 // SAFETY: `Registration` does not expose any methods or fields that need synchronization.
587 unsafe impl<F: ForLt> Sync for Registration<'_, F> where for<'a> F::Of<'a>: Send {}