Lines Matching defs:Self
31 fn new(dev: &drm::Device<Self::Driver>, size: usize) -> impl PinInit<Self, Error>;
34 fn open(_obj: &<Self::Driver as drm::Driver>::Object, _file: &DriverFile<Self>) -> Result {
39 fn close(_obj: &<Self::Driver as drm::Driver>::Object, _file: &DriverFile<Self>) {}
48 /// Converts a pointer to a `struct drm_gem_object` into a reference to `Self`.
52 /// - `self_ptr` must be a valid pointer to `Self`.
55 unsafe fn from_raw<'a>(self_ptr: *mut bindings::drm_gem_object) -> &'a Self;
65 unsafe fn dec_ref(obj: NonNull<Self>) {
114 unsafe fn from_raw<'a>(self_ptr: *mut bindings::drm_gem_object) -> &'a Self {
133 Self: AllocImpl<Driver = D>,
134 D: drm::Driver<Object = Self, File = F>,
146 fn lookup_handle<D, F>(file: &drm::File<F>, handle: u32) -> Result<ARef<Self>>
148 Self: AllocImpl<Driver = D>,
149 D: drm::Driver<Object = Self, File = F>,
160 // - `file` uses the same `drm::Driver` as `Self`.
161 // - Therefore, we're guaranteed that `ptr` must be a gem object embedded within `Self`.
163 // valid pointer to an initialized `Self`.
164 let obj = unsafe { Self::from_raw(ptr) };
169 // `Self`.
202 free: Some(Self::free_callback),
220 pub fn new(dev: &drm::Device<T::Driver>, size: usize) -> Result<ARef<Self>> {
221 let obj: Pin<KBox<Self>> = KBox::pin_init(
222 try_pin_init!(Self {
233 unsafe { (*obj.as_raw()).funcs = &Self::OBJECT_FUNCS };
238 // SAFETY: We never move out of `Self`.
263 let this = unsafe { crate::container_of!(ptr, Self, obj) };
281 fn deref(&self) -> &Self::Target {