pub struct Plugin {
pub spec: PluginSpec,
pub key: String,
}
Expand description
插件实例结构体 表示一个具体的插件实例
Fields§
§spec: PluginSpec
§key: String
Implementations§
Source§impl Plugin
impl Plugin
Sourcepub fn new(spec: PluginSpec) -> Self
pub fn new(spec: PluginSpec) -> Self
创建新的插件实例
Sourcepub fn get_state(&self, state: &State) -> Option<PluginState>
pub fn get_state(&self, state: &State) -> Option<PluginState>
从全局状态中获取插件状态
Sourcepub async fn apply_filter_transaction(
&self,
tr: &Transaction,
state: &State,
) -> bool
pub async fn apply_filter_transaction( &self, tr: &Transaction, state: &State, ) -> bool
应用事务过滤逻辑
Sourcepub async fn before_apply_transaction(
&self,
tr: &mut Transaction,
state: &State,
) -> Result<(), Box<dyn Error>>
pub async fn before_apply_transaction( &self, tr: &mut Transaction, state: &State, ) -> Result<(), Box<dyn Error>>
事务应用前的处理
Sourcepub async fn after_apply_transaction(
&self,
new_state: &State,
tr: &mut Transaction,
old_state: &State,
) -> Result<(), Box<dyn Error>>
pub async fn after_apply_transaction( &self, new_state: &State, tr: &mut Transaction, old_state: &State, ) -> Result<(), Box<dyn Error>>
事务应用后的处理
Sourcepub async fn apply_append_transaction(
&self,
trs: &Transaction,
old_state: &State,
new_state: &State,
) -> Option<Transaction>
pub async fn apply_append_transaction( &self, trs: &Transaction, old_state: &State, new_state: &State, ) -> Option<Transaction>
应用事务追加逻辑
Trait Implementations§
Auto Trait Implementations§
impl Freeze for Plugin
impl !RefUnwindSafe for Plugin
impl Send for Plugin
impl Sync for Plugin
impl Unpin for Plugin
impl !UnwindSafe for Plugin
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