565acaf
//! log Operation method trait for the module.
use crate::commit::types::Commit;
use crate::log::types::{CommitGraph, LogList, LogOptions};
/// Operation trait for the commit log module.
pub trait LogOps {
/// List commits (cursor pagination).
fn log_list(&self, opts: &LogOptions) -> Result<LogList, crate::Error>;
/// Commits between two commits.
fn log_commits_between(
&self,
after: &str,
before: &str,
limit: u64,
) -> Result<LogList, crate::Error>;
/// Commit graph.
fn log_graph(&self, opts: &LogOptions) -> Result<CommitGraph, crate::Error>;
/// Last commit on a branch.
fn log_last_commit(&self, branch_name: String) -> Result<Commit, crate::Error>;
}