use std::fmt::{Display, Formatter}; use std::ops::Add; use git2::{Commit, ObjectType, Oid, Reference, Repository, Tree}; use crate::gitdir::GitDir; use crate::gitfile::GitFile; #[derive(Debug)] pub enum GitBrowseEntry<'a> { EGitFile(GitFile), EGitDir(GitDir<'a>) } impl Display for GitBrowseEntry<'_> { fn fmt(&self, f: &mut Formatter<'_>) -> std::fmt::Result { match self { GitBrowseEntry::EGitFile(file) => {write!(f, "{}", file)} GitBrowseEntry::EGitDir(dir) => {write!(f, "{}", dir)} } } }