hit_data/plugins/
mod.rs

1mod model_type_indexer;
2mod plugin;
3
4pub use model_type_indexer::ModelTypeIndexer;
5pub use plugin::{AfterImportPlugin, DeletePlugin, InitEntryPlugin, Plugin, ReferencePlugin};
6use std::cell::RefCell;
7use std::clone::Clone;
8use std::rc::Rc;
9
10#[derive(Clone)]
11pub struct Plugins {
12    pub init_plugins: Vec<Rc<RefCell<dyn InitEntryPlugin>>>,
13    pub after_import_plugins: Vec<Rc<RefCell<dyn AfterImportPlugin>>>,
14    pub plugins: Vec<Rc<RefCell<dyn Plugin>>>,
15    pub delete_plugins: Vec<Rc<RefCell<dyn DeletePlugin>>>,
16    pub reference_plugins: Vec<Rc<RefCell<dyn ReferencePlugin>>>,
17}
18
19impl Plugins {
20    pub fn new() -> Self {
21        Plugins {
22            init_plugins: vec![],
23            after_import_plugins: vec![],
24            plugins: vec![],
25            delete_plugins: vec![],
26            reference_plugins: vec![],
27        }
28    }
29}