Trait Project

Source
pub trait Project {
    // Required methods
    fn get_version(&self) -> Result<Version>;
    fn update_version(&self, version: &Version) -> Result<()>;
    fn dry_run_update(&self, version: &Version) -> Result<String>;
    fn get_file_path(&self) -> &Path;
    fn get_files_to_commit(&self) -> Vec<PathBuf>;

    // Provided method
    fn get_package_manager_update_command(&self) -> Option<String> { ... }
}

Required Methods§

Source

fn get_version(&self) -> Result<Version>

Source

fn update_version(&self, version: &Version) -> Result<()>

Update the version in the project file

Source

fn dry_run_update(&self, version: &Version) -> Result<String>

Preview what would be updated without making changes

Source

fn get_file_path(&self) -> &Path

Get the path to the main project file

Source

fn get_files_to_commit(&self) -> Vec<PathBuf>

Get all files that should be committed

Provided Methods§

Source

fn get_package_manager_update_command(&self) -> Option<String>

Get the package manager update command for this project

Implementors§