pub trait RemoteGitEngine {
// Required methods
fn connect(&self, owner: &str, repo: &str) -> Result<()>;
fn get_tags(&self, owner: &str, repo: &str) -> Result<Vec<Tag>>;
fn get_commits_since(
&self,
owner: &str,
repo: &str,
since_sha: Option<&str>,
branch: &str,
) -> Result<Vec<Commit>>;
fn get_pull_request(&self, owner: &str, repo: &str) -> Result<Option<usize>>;
fn create_pull_request(
&self,
owner: &str,
repo: &str,
version: &str,
body: &str,
base: &str,
) -> Result<usize>;
fn update_pull_request(
&self,
owner: &str,
repo: &str,
version: &str,
body: &str,
index: usize,
) -> Result<usize>;
fn create_release(
&self,
owner: &str,
repo: &str,
version: &str,
body: &str,
prerelease: bool,
) -> Result<Release>;
}Required Methods§
fn connect(&self, owner: &str, repo: &str) -> Result<()>
fn get_commits_since( &self, owner: &str, repo: &str, since_sha: Option<&str>, branch: &str, ) -> Result<Vec<Commit>>
fn get_pull_request(&self, owner: &str, repo: &str) -> Result<Option<usize>>
fn create_pull_request( &self, owner: &str, repo: &str, version: &str, body: &str, base: &str, ) -> Result<usize>
fn update_pull_request( &self, owner: &str, repo: &str, version: &str, body: &str, index: usize, ) -> Result<usize>
fn create_release( &self, owner: &str, repo: &str, version: &str, body: &str, prerelease: bool, ) -> Result<Release>
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".