# Trait rustc_errors::diagnostic::Subdiagnostic

source ·

    pub trait Subdiagnosticwhere
        Self: Sized,{
        // Required method
        fn add_to_diag_with<G: EmissionGuarantee, F: SubdiagMessageOp<G>>(
            self,
            diag: &mut Diag<'_, G>,
            f: &F,
        );

        // Provided method
        fn add_to_diag<G: EmissionGuarantee>(self, diag: &mut Diag<'_, G>) { ... }
    }

Expand description

Trait implemented by error types. This should not be implemented manually. Instead, use `#[derive(Subdiagnostic)]` – see rustc_macros::Subdiagnostic.

## Required Methods§

source

#### fn add_to_diag_with<G: EmissionGuarantee, F: SubdiagMessageOp<G>>( self, diag: &mut Diag<'_, G>, f: &F, )

Add a subdiagnostic to an existing diagnostic where `f` is invoked on every message used (to optionally perform eager translation).

## Provided Methods§

source

#### fn add_to_diag<G: EmissionGuarantee>(self, diag: &mut Diag<'_, G>)

Add a subdiagnostic to an existing diagnostic.

## Object Safety§

This trait is not object safe.

## Implementors§

source§

### impl Subdiagnostic for ElidedLifetimeInPathSubdiag

source§

### impl Subdiagnostic for ExpectedLifetimeParameter

source§

### impl Subdiagnostic for IndicateAnonymousLifetime

source§

### impl Subdiagnostic for SingleLabelManySpans