proc_macro

结构体 Diagnostic

pub struct Diagnostic { /* private fields */ }
🔬这是一个仅限 nightly 版本的实验性 API。(proc_macro_diagnostic #54140)
展开描述

一个表示诊断消息和相关子消息的结构体。

实现§

§

impl Diagnostic

pub fn new<T: Into<String>>(level: Level, message: T) -> Diagnostic

🔬这是一个仅限 nightly 版本的实验性 API。(proc_macro_diagnostic #54140)

创建一个新的诊断,使用给定的 levelmessage

pub fn spanned<S, T>(spans: S, level: Level, message: T) -> Diagnostic
where S: MultiSpan, T: Into<String>,

🔬这是一个仅限 nightly 版本的实验性 API。(proc_macro_diagnostic #54140)

创建一个新的诊断,使用给定的 levelmessage,并指向给定的 spans 集合。

pub fn span_error<S, T>(self, spans: S, message: T) -> Diagnostic
where S: MultiSpan, T: Into<String>,

🔬这是一个仅限 nightly 版本的实验性 API。(proc_macro_diagnostic #54140)

self 添加一个新的子诊断消息,级别为 Level::Error,并使用给定的 spansmessage

pub fn error<T: Into<String>>(self, message: T) -> Diagnostic

🔬这是一个仅限 nightly 版本的实验性 API。(proc_macro_diagnostic #54140)

self 添加一个新的子诊断消息,级别为 Level::Error,并使用给定的 message

pub fn span_warning<S, T>(self, spans: S, message: T) -> Diagnostic
where S: MultiSpan, T: Into<String>,

🔬这是一个仅限 nightly 版本的实验性 API。(proc_macro_diagnostic #54140)

self 添加一个新的子诊断消息,级别为 Level::Warning,并使用给定的 spansmessage

pub fn warning<T: Into<String>>(self, message: T) -> Diagnostic

🔬这是一个仅限 nightly 版本的实验性 API。(proc_macro_diagnostic #54140)

self 添加一个新的子诊断消息,级别为 Level::Warning,并使用给定的 message

pub fn span_note<S, T>(self, spans: S, message: T) -> Diagnostic
where S: MultiSpan, T: Into<String>,

🔬这是一个仅限 nightly 版本的实验性 API。(proc_macro_diagnostic #54140)

self 添加一个新的子诊断消息,级别为 Level::Note,并使用给定的 spansmessage

pub fn note<T: Into<String>>(self, message: T) -> Diagnostic

🔬这是一个仅限 nightly 版本的实验性 API。(proc_macro_diagnostic #54140)

self 添加一个新的子诊断消息,级别为 Level::Note,并使用给定的 message

pub fn span_help<S, T>(self, spans: S, message: T) -> Diagnostic
where S: MultiSpan, T: Into<String>,

🔬这是一个仅限 nightly 版本的实验性 API。(proc_macro_diagnostic #54140)

self 添加一个新的子诊断消息,级别为 Level::Help,并使用给定的 spansmessage

pub fn help<T: Into<String>>(self, message: T) -> Diagnostic

🔬这是一个仅限 nightly 版本的实验性 API。(proc_macro_diagnostic #54140)

self 添加一个新的子诊断消息,级别为 Level::Help,并使用给定的 message

pub fn level(&self) -> Level

🔬这是一个仅限 nightly 版本的实验性 API。(proc_macro_diagnostic #54140)

返回 self 的诊断 level

pub fn set_level(&mut self, level: Level)

🔬这是一个仅限 nightly 版本的实验性 API。(proc_macro_diagnostic #54140)

self 中的级别设置为 level

pub fn message(&self) -> &str

🔬这是一个仅限 nightly 版本的实验性 API。(proc_macro_diagnostic #54140)

返回 self 中的消息。

pub fn set_message<T: Into<String>>(&mut self, message: T)

🔬这是一个仅限 nightly 版本的实验性 API。(proc_macro_diagnostic #54140)

self 中的消息设置为 message

pub fn spans(&self) -> &[Span]

🔬这是一个仅限 nightly 版本的实验性 API。(proc_macro_diagnostic #54140)

返回 self 中的 Span

pub fn set_spans<S: MultiSpan>(&mut self, spans: S)

🔬这是一个仅限 nightly 版本的实验性 API。(proc_macro_diagnostic #54140)

self 中的 Span 设置为 spans

pub fn children(&self) -> Children<'_>

🔬这是一个仅限 nightly 版本的实验性 API。(proc_macro_diagnostic #54140)

返回一个迭代器,用于遍历 self 的子诊断。

pub fn emit(self)

🔬这是一个仅限 nightly 版本的实验性 API。(proc_macro_diagnostic #54140)

发出诊断。

Trait 实现§

§

impl Clone for Diagnostic

§

fn clone(&self) -> Diagnostic

返回值的副本。 阅读更多
1.0.0 · §

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

执行来自 source 的复制赋值。 阅读更多
§

impl Debug for Diagnostic

§

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

使用给定的格式化器格式化值。 阅读更多

自动 Trait 实现§

覆盖实现§

§

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

§

fn type_id(&self) -> TypeId

获取 selfTypeId阅读更多
§

impl<T> Borrow<T> for T
其中 T: ?Sized,

源代码§

fn borrow(&self) -> &T

从一个拥有的值不可变地借用。 阅读更多
源代码§

impl<T> BorrowMut<T> for T
其中 T: ?Sized,

源代码§

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

从一个拥有的值可变地借用。 阅读更多
源代码§

impl<T> CloneToUninit for T
其中 T: Clone,

源代码§

unsafe fn clone_to_uninit(&self, dst: *mut u8)

🔬这是一个仅限 nightly 版本的实验性 API。(clone_to_uninit #126799
执行从 selfdst 的复制赋值。 阅读更多
源代码§

impl<T> From<T> for T

源代码§

fn from(t: T) -> T

返回未更改的参数。

源代码§

impl<T, U> Into<U> for T
其中 U: From<T>,

源代码§

fn into(self) -> U

调用 U::from(self)

也就是说,这种转换取决于 From<T> for U 的实现选择做什么。

源代码§

impl<T> ToOwned for T
其中 T: Clone,

源代码§

type Owned = T

获得所有权后的结果类型。
源代码§

fn to_owned(&self) -> T

从借用的数据创建拥有的数据,通常通过克隆。 阅读更多
源代码§

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

使用借用的数据替换拥有的数据,通常通过克隆。 阅读更多
源代码§

impl<T, U> TryFrom<U> for T
其中 U: Into<T>,

源代码§

type Error = Infallible

转换错误时返回的类型。
源代码§

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

执行转换。
源代码§

impl<T, U> TryInto<U> for T
其中 U: TryFrom<T>,

源代码§

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

转换错误时返回的类型。
源代码§

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

执行转换。