Struct simics_api_sys::spr_interface
source · #[repr(C)]pub struct spr_interface {
pub register_user_handlers: Option<unsafe extern "C" fn(cpu: *mut conf_object_t, spr_number: int64, getter: gen_spr_user_getter_func_t, user_getter_data: *mut lang_void, setter: gen_spr_user_setter_func_t, user_setter_data: *mut lang_void, privilege_checks: c_int)>,
pub unregister_user_handlers: Option<unsafe extern "C" fn(cpu: *mut conf_object_t, spr_number: int64)>,
pub set_target_value: Option<unsafe extern "C" fn(cpu: *mut conf_object_t, value: uint64)>,
pub stash_value: Option<unsafe extern "C" fn(cpu: *mut conf_object_t, spr_number: int64, value: uint64)>,
pub fetch_value: Option<unsafe extern "C" fn(cpu: *mut conf_object_t, spr_number: int64) -> uint64>,
pub default_getter: Option<unsafe extern "C" fn(cpu: *mut conf_object_t, spr_number: int64, type_: gen_spr_access_type_t) -> gen_spr_ret_t>,
pub default_setter: Option<unsafe extern "C" fn(cpu: *mut conf_object_t, spr_number: int64, value: uint64, type_: gen_spr_access_type_t) -> gen_spr_ret_t>,
pub get_name: Option<unsafe extern "C" fn(cpu: *mut conf_object_t, spr_number: int64) -> *const c_char>,
pub get_number: Option<unsafe extern "C" fn(cpu: *mut conf_object_t, spr_name: *const c_char) -> int64>,
}
Fields§
§register_user_handlers: Option<unsafe extern "C" fn(cpu: *mut conf_object_t, spr_number: int64, getter: gen_spr_user_getter_func_t, user_getter_data: *mut lang_void, setter: gen_spr_user_setter_func_t, user_setter_data: *mut lang_void, privilege_checks: c_int)>
§unregister_user_handlers: Option<unsafe extern "C" fn(cpu: *mut conf_object_t, spr_number: int64)>
§set_target_value: Option<unsafe extern "C" fn(cpu: *mut conf_object_t, value: uint64)>
§stash_value: Option<unsafe extern "C" fn(cpu: *mut conf_object_t, spr_number: int64, value: uint64)>
§fetch_value: Option<unsafe extern "C" fn(cpu: *mut conf_object_t, spr_number: int64) -> uint64>
§default_getter: Option<unsafe extern "C" fn(cpu: *mut conf_object_t, spr_number: int64, type_: gen_spr_access_type_t) -> gen_spr_ret_t>
§default_setter: Option<unsafe extern "C" fn(cpu: *mut conf_object_t, spr_number: int64, value: uint64, type_: gen_spr_access_type_t) -> gen_spr_ret_t>
§get_name: Option<unsafe extern "C" fn(cpu: *mut conf_object_t, spr_number: int64) -> *const c_char>
§get_number: Option<unsafe extern "C" fn(cpu: *mut conf_object_t, spr_name: *const c_char) -> int64>
Trait Implementations§
source§impl Clone for spr_interface
impl Clone for spr_interface
source§fn clone(&self) -> spr_interface
fn clone(&self) -> spr_interface
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresource§impl Debug for spr_interface
impl Debug for spr_interface
source§impl Default for spr_interface
impl Default for spr_interface
source§fn default() -> spr_interface
fn default() -> spr_interface
Returns the “default value” for a type. Read more
source§impl Hash for spr_interface
impl Hash for spr_interface
source§impl Ord for spr_interface
impl Ord for spr_interface
source§fn cmp(&self, other: &spr_interface) -> Ordering
fn cmp(&self, other: &spr_interface) -> Ordering
1.21.0 · source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
Compares and returns the maximum of two values. Read more
source§impl PartialEq for spr_interface
impl PartialEq for spr_interface
source§impl PartialOrd for spr_interface
impl PartialOrd for spr_interface
impl Copy for spr_interface
impl Eq for spr_interface
impl StructuralPartialEq for spr_interface
Auto Trait Implementations§
impl Freeze for spr_interface
impl RefUnwindSafe for spr_interface
impl Send for spr_interface
impl Sync for spr_interface
impl Unpin for spr_interface
impl UnwindSafe for spr_interface
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
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)