Struct gix_refspec::MatchGroup

source ·
pub struct MatchGroup<'a> {
    pub specs: Vec<RefSpecRef<'a>>,
}
Expand description

A match group is able to match a list of ref specs in order while handling negation, conflicts and one to many mappings.

Fields§

§specs: Vec<RefSpecRef<'a>>

The specs that take part in item matching.

Implementations§

source§

impl<'a> MatchGroup<'a>

Initialization

source

pub fn from_fetch_specs(specs: impl IntoIterator<Item = RefSpecRef<'a>>) -> Self

Take all the fetch ref specs from specs get a match group ready.

source§

impl<'a> MatchGroup<'a>

Matching

source

pub fn match_remotes<'item>( self, items: impl Iterator<Item = Item<'item>> + Clone ) -> Outcome<'a, 'item>

Match all items against all fetch specs present in this group, returning deduplicated mappings from source to destination. Note that this method only makes sense if the specs are indeed fetch specs and may panic otherwise.

Note that negative matches are not part of the return value, so they are not observable but will be used to remove mappings.

Trait Implementations§

source§

impl<'a> Clone for MatchGroup<'a>

source§

fn clone(&self) -> MatchGroup<'a>

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl<'a> Debug for MatchGroup<'a>

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<'a> Default for MatchGroup<'a>

source§

fn default() -> MatchGroup<'a>

Returns the “default value” for a type. Read more

Auto Trait Implementations§

§

impl<'a> RefUnwindSafe for MatchGroup<'a>

§

impl<'a> Send for MatchGroup<'a>

§

impl<'a> Sync for MatchGroup<'a>

§

impl<'a> Unpin for MatchGroup<'a>

§

impl<'a> UnwindSafe for MatchGroup<'a>

Blanket Implementations§

source§

impl<T> Any for Twhere T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for Twhere U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> ToOwned for Twhere T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for Twhere U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for Twhere U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.