pub enum MalformedGenerics {
UnbalancedAngleBrackets,
MissingType,
HasFullyQualifiedSyntax,
InvalidPathSeparator,
TooManyAngleBrackets,
EmptyAngleBrackets,
}
Variants§
UnbalancedAngleBrackets
This link has unbalanced angle brackets.
For example, Vec<T
should trigger this, as should Vec<T>>
.
MissingType
The generics are not attached to a type.
For example, <T>
should trigger this.
This is detected by checking if the path is empty after the generics are stripped.
HasFullyQualifiedSyntax
The link uses fully-qualified syntax, which is currently unsupported.
For example, <Vec as IntoIterator>::into_iter
should trigger this.
This is detected by checking if as
(the keyword as
with spaces around it) is inside
angle brackets.
InvalidPathSeparator
The link has an invalid path separator.
For example, Vec:<T>:new()
should trigger this. Note that Vec:new()
will not
trigger this because it has no generics and thus strip_generics_from_path
will not be
called.
Note that this will also not be triggered if the invalid path separator is inside angle
brackets because rustdoc mostly ignores what’s inside angle brackets (except for
HasFullyQualifiedSyntax
).
This is detected by checking if there is a colon followed by a non-colon in the link.
TooManyAngleBrackets
The link has too many angle brackets.
For example, Vec<<T>>
should trigger this.
EmptyAngleBrackets
The link has empty angle brackets.
For example, Vec<>
should trigger this.
Trait Implementations§
source§impl Clone for MalformedGenerics
impl Clone for MalformedGenerics
source§fn clone(&self) -> MalformedGenerics
fn clone(&self) -> MalformedGenerics
source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for MalformedGenerics
impl Debug for MalformedGenerics
impl Copy for MalformedGenerics
Auto Trait Implementations§
impl Freeze for MalformedGenerics
impl RefUnwindSafe for MalformedGenerics
impl Send for MalformedGenerics
impl Sync for MalformedGenerics
impl Unpin for MalformedGenerics
impl UnwindSafe for MalformedGenerics
Blanket Implementations§
source§impl<'tcx, T> ArenaAllocatable<'tcx, IsCopy> for Twhere
T: Copy,
impl<'tcx, T> ArenaAllocatable<'tcx, IsCopy> for Twhere
T: Copy,
fn allocate_on(self, arena: &'tcx Arena<'tcx>) -> &'tcx mut T
fn allocate_from_iter( arena: &'tcx Arena<'tcx>, iter: impl IntoIterator<Item = T>, ) -> &'tcx mut [T]
source§impl<'tcx, T> ArenaAllocatable<'tcx, IsCopy> for Twhere
T: Copy,
impl<'tcx, T> ArenaAllocatable<'tcx, IsCopy> for Twhere
T: Copy,
fn allocate_on(self, arena: &'tcx Arena<'tcx>) -> &'tcx mut T
fn allocate_from_iter( arena: &'tcx Arena<'tcx>, iter: impl IntoIterator<Item = T>, ) -> &'tcx mut [T]
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
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)source§impl<T, R> CollectAndApply<T, R> for T
impl<T, R> CollectAndApply<T, R> for T
source§impl<T> Filterable for T
impl<T> Filterable for T
source§fn filterable(
self,
filter_name: &'static str,
) -> RequestFilterDataProvider<T, fn(_: DataRequest<'_>) -> bool>
fn filterable( self, filter_name: &'static str, ) -> RequestFilterDataProvider<T, fn(_: DataRequest<'_>) -> bool>
source§impl<T> Instrument for T
impl<T> Instrument for T
source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T> IntoEither for T
impl<T> IntoEither for T
source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§impl<P> IntoQueryParam<P> for P
impl<P> IntoQueryParam<P> for P
fn into_query_param(self) -> P
source§impl<T> MaybeResult<T> for T
impl<T> MaybeResult<T> for T
source§impl<I, T, U> Upcast<I, U> for Twhere
U: UpcastFrom<I, T>,
impl<I, T, U> Upcast<I, U> for Twhere
U: UpcastFrom<I, T>,
source§impl<I, T> UpcastFrom<I, T> for T
impl<I, T> UpcastFrom<I, T> for T
fn upcast_from(from: T, _tcx: I) -> T
source§impl<Tcx, T> Value<Tcx> for Twhere
Tcx: DepContext,
impl<Tcx, T> Value<Tcx> for Twhere
Tcx: DepContext,
default fn from_cycle_error( tcx: Tcx, cycle_error: &CycleError, _guar: ErrorGuaranteed, ) -> T
source§impl<T> WithSubscriber for T
impl<T> WithSubscriber for T
source§fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
source§fn with_current_subscriber(self) -> WithDispatch<Self>
fn with_current_subscriber(self) -> WithDispatch<Self>
impl<'a, T> Captures<'a> for Twhere
T: ?Sized,
impl<T> ErasedDestructor for Twhere
T: 'static,
impl<T> MaybeSendSync for T
Layout§
Note: Most layout information is completely unstable and may even differ between compilations. The only exception is types with certain repr(...)
attributes. Please see the Rust Reference's “Type Layout” chapter for details on type layout guarantees.
Size: 1 byte
Size for each variant:
UnbalancedAngleBrackets
: 0 bytesMissingType
: 0 bytesHasFullyQualifiedSyntax
: 0 bytesInvalidPathSeparator
: 0 bytesTooManyAngleBrackets
: 0 bytesEmptyAngleBrackets
: 0 bytes