cli/lib/runners/
git_runner.rs1use super::{ProcessRunner, Runner, RunnerKind};
4
5#[derive(Clone, Debug, Eq, PartialEq)]
6pub struct GitRunner {
7 inner: ProcessRunner,
8}
9
10impl GitRunner {
11 pub fn new() -> Self {
12 Self {
13 inner: ProcessRunner::new(RunnerKind::Git),
14 }
15 }
16
17 pub fn inner(&self) -> &ProcessRunner {
18 &self.inner
19 }
20
21 pub fn into_inner(self) -> ProcessRunner {
22 self.inner
23 }
24}
25
26impl Default for GitRunner {
27 fn default() -> Self {
28 Self::new()
29 }
30}
31
32impl Runner for GitRunner {
33 fn kind(&self) -> RunnerKind {
34 self.inner.kind()
35 }
36
37 fn binary(&self) -> &str {
38 self.inner.binary()
39 }
40
41 fn prefix_args(&self) -> &[String] {
42 self.inner.prefix_args()
43 }
44}