1use crate::extensions::RustPluginExtension;
4use crate::rustup::configure_rustup_tasks;
5use assemble_core::plugins::extensions::ExtensionAware;
6use assemble_core::plugins::Plugin;
7use assemble_core::project::error::ProjectResult;
8use assemble_core::Project;
9
10#[derive(Debug, Default)]
12pub struct RustBasePlugin;
13
14impl RustBasePlugin {
15 pub const INSTALL_DEFAULT_TOOLCHAIN: &'static str = "install-default-toolchain";
16}
17
18impl Plugin<Project> for RustBasePlugin {
19 fn apply_to(&self, project: &mut Project) -> ProjectResult {
20 project
21 .extensions_mut()
22 .add("rust", RustPluginExtension::new())?;
23 configure_rustup_tasks(project)
24 }
25}