#[non_exhaustive]pub struct GitHubCapabilities {
pub version: GitHubVersion,
}Expand description
What the installed gh binary supports, probed via
GitHubApi::capabilities. A value type — the client holds no state, so
probe once and keep the result (callers cache it). Mirrors
vcs_git::GitCapabilities /
vcs_jj::JjCapabilities.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.version: GitHubVersionThe binary’s parsed version.
Implementations§
Source§impl GitHubCapabilities
impl GitHubCapabilities
Sourcepub fn is_supported(&self) -> bool
pub fn is_supported(&self) -> bool
Whether the binary meets the supported floor (gh ≥ 2.0). Every typed
operation on GitHubApi is guaranteed against this minimum.
Sourcepub fn ensure_supported(&self) -> Result<()>
pub fn ensure_supported(&self) -> Result<()>
Error unless is_supported — a clear “needs gh ≥ 2.0,
found 1.14.0” instead of a cryptic unknown command/unknown flag failure
once an operation reaches a command the old binary lacks. The pre-flight
check a caller runs before driving operations against an untrusted gh.
Trait Implementations§
Source§impl Clone for GitHubCapabilities
impl Clone for GitHubCapabilities
Source§fn clone(&self) -> GitHubCapabilities
fn clone(&self) -> GitHubCapabilities
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreimpl Copy for GitHubCapabilities
Source§impl Debug for GitHubCapabilities
impl Debug for GitHubCapabilities
impl Eq for GitHubCapabilities
Source§impl PartialEq for GitHubCapabilities
impl PartialEq for GitHubCapabilities
impl StructuralPartialEq for GitHubCapabilities
Auto Trait Implementations§
impl Freeze for GitHubCapabilities
impl RefUnwindSafe for GitHubCapabilities
impl Send for GitHubCapabilities
impl Sync for GitHubCapabilities
impl Unpin for GitHubCapabilities
impl UnsafeUnpin for GitHubCapabilities
impl UnwindSafe for GitHubCapabilities
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more