Lines Matching refs:T
10 pub trait NotifierBlock<T> {
12 fn notifier_call(&self, action: u64, data: Option<&T>) -> i32; in notifier_call()
19 struct NotifierChain<T>(Vec<Arc<dyn NotifierBlock<T>>>);
21 impl<T> NotifierChain<T> {
30 block: Arc<dyn NotifierBlock<T>>, in register() argument
64 pub fn unregister(&mut self, block: Arc<dyn NotifierBlock<T>>) -> Result<(), SystemError> { in unregister()
81 data: Option<&T>, in call_chain() argument
99 pub struct AtomicNotifierChain<T>(SpinLock<NotifierChain<T>>);
101 impl<T> AtomicNotifierChain<T> {
103 Self(SpinLock::new(NotifierChain::<T>::new())) in new()
106 pub fn register(&mut self, block: Arc<dyn NotifierBlock<T>>) -> Result<(), SystemError> { in register()
113 block: Arc<dyn NotifierBlock<T>>, in register_unique_prio() argument
119 pub fn unregister(&mut self, block: Arc<dyn NotifierBlock<T>>) -> Result<(), SystemError> { in unregister()
127 data: Option<&T>, in call_chain() argument
137 pub struct BlockingNotifierChain<T>(RwLock<NotifierChain<T>>);
139 impl<T> BlockingNotifierChain<T> {
141 Self(RwLock::new(NotifierChain::<T>::new())) in new()
144 pub fn register(&mut self, block: Arc<dyn NotifierBlock<T>>) -> Result<(), SystemError> { in register()
151 block: Arc<dyn NotifierBlock<T>>, in register_unique_prio() argument
157 pub fn unregister(&mut self, block: Arc<dyn NotifierBlock<T>>) -> Result<(), SystemError> { in unregister()
165 data: Option<&T>, in call_chain() argument
174 pub struct RawNotifierChain<T>(NotifierChain<T>);
176 impl<T> RawNotifierChain<T> {
178 Self(NotifierChain::<T>::new()) in new()
181 pub fn register(&mut self, block: Arc<dyn NotifierBlock<T>>) -> Result<(), SystemError> { in register()
185 pub fn unregister(&mut self, block: Arc<dyn NotifierBlock<T>>) -> Result<(), SystemError> { in unregister()
192 data: Option<&T>, in call_chain() argument