Skip to main content

Matcher

Struct Matcher 

Source
pub struct Matcher<'a> { /* private fields */ }
Expand description

Matcher for determining if references share the same primary contributors.

Uses the style’s substitution configuration to determine which contributor (author, editor, translator) should be used for comparison.

Implementations§

Source§

impl<'a> Matcher<'a>

Source

pub fn new(style: &'a Style, config: &'a Config, locale: &'a Locale) -> Self

Build a matcher from the active style, effective configuration, and locale.

Source

pub fn contributors_match(&self, prev: &Reference, current: &Reference) -> bool

Check if primary contributors (authors/editors) match between two references.

Delegates to the shared effective-primary resolver ([crate::values::contributor::substitute::effective_primary_names]) so matching honors type overrides and merged-role candidates identically to rendering, sorting, and disambiguation. Two references match only when both resolve non-empty, equal name lists; a title-substitute result (empty names) never matches.

Auto Trait Implementations§

§

impl<'a> !RefUnwindSafe for Matcher<'a>

§

impl<'a> !UnwindSafe for Matcher<'a>

§

impl<'a> Freeze for Matcher<'a>

§

impl<'a> Send for Matcher<'a>

§

impl<'a> Sync for Matcher<'a>

§

impl<'a> Unpin for Matcher<'a>

§

impl<'a> UnsafeUnpin for Matcher<'a>

Blanket Implementations§

Source§

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

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

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

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

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

Source§

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

Mutably borrows from an owned value. Read more
Source§

impl<T> ErasedDestructor for T
where T: 'static,

Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where 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> Same for T

Source§

type Output = T

Should always be Self
Source§

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

Source§

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 T
where U: TryFrom<T>,

Source§

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.