pub trait DriverObject:
Sync
+ Send
+ Sized {
type Driver: Driver;
type Args;
// Required method
fn new(
dev: &Device<Self::Driver>,
size: usize,
args: Self::Args,
) -> impl PinInit<Self, Error>;
// Provided methods
fn open(
_obj: &<Self::Driver as Driver>::Object,
_file: &DriverFile<Self>,
) -> Result { ... }
fn close(_obj: &<Self::Driver as Driver>::Object, _file: &DriverFile<Self>) { ... }
}Expand description
GEM object functions, which must be implemented by drivers.
Required Associated Types§
Sourcetype Args
type Args
The data type to use for passing arguments to DriverObject::new.
Required Methods§
Provided Methods§
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.