pub trait Project: Any {
// Required methods
fn get_root(&self) -> &PathBuf;
fn get_name(&self) -> &str;
fn get_component_graph(&self) -> &ComponentRegistry;
fn get_component_graph_mut(&mut self) -> &mut ComponentRegistry;
fn get_dependencies(&self) -> Option<HashSet<String>>;
fn find_dependency(&self, name: &str) -> Option<String>;
fn traverse(&mut self, exclude: &Vec<String>, include: &Vec<String>);
fn as_any(&self) -> &dyn Any;
}Expand description
Trait defining common functionality for all project types
Required Methods§
Sourcefn get_component_graph(&self) -> &ComponentRegistry
fn get_component_graph(&self) -> &ComponentRegistry
Gets the component graph of the project
Sourcefn get_component_graph_mut(&mut self) -> &mut ComponentRegistry
fn get_component_graph_mut(&mut self) -> &mut ComponentRegistry
Gets mutable access to the component graph
Sourcefn get_dependencies(&self) -> Option<HashSet<String>>
fn get_dependencies(&self) -> Option<HashSet<String>>
Gets all dependencies of the project
Sourcefn find_dependency(&self, name: &str) -> Option<String>
fn find_dependency(&self, name: &str) -> Option<String>
Finds a specific dependency by name