pub(crate) struct Span {
handle: NonZero<u32>,
_marker: PhantomData<*mut ()>,
}
🔬This is a nightly-only experimental API. (
proc_macro_internals
#27812)Fields§
§handle: NonZero<u32>
🔬This is a nightly-only experimental API. (
§proc_macro_internals
#27812)_marker: PhantomData<*mut ()>
🔬This is a nightly-only experimental API. (
proc_macro_internals
#27812)Implementations§
Source§impl Span
impl Span
pub(crate) fn def_site() -> Span
🔬This is a nightly-only experimental API. (
proc_macro_internals
#27812)pub(crate) fn call_site() -> Span
🔬This is a nightly-only experimental API. (
proc_macro_internals
#27812)pub(crate) fn mixed_site() -> Span
🔬This is a nightly-only experimental API. (
proc_macro_internals
#27812)Source§impl Span
impl Span
pub(crate) fn debug(self: Span) -> String
🔬This is a nightly-only experimental API. (
proc_macro_internals
#27812)pub(crate) fn parent(self: Span) -> Option<Span>
🔬This is a nightly-only experimental API. (
proc_macro_internals
#27812)pub(crate) fn source(self: Span) -> Span
🔬This is a nightly-only experimental API. (
proc_macro_internals
#27812)pub(crate) fn byte_range(self: Span) -> Range<usize>
🔬This is a nightly-only experimental API. (
proc_macro_internals
#27812)pub(crate) fn start(self: Span) -> Span
🔬This is a nightly-only experimental API. (
proc_macro_internals
#27812)pub(crate) fn end(self: Span) -> Span
🔬This is a nightly-only experimental API. (
proc_macro_internals
#27812)pub(crate) fn line(self: Span) -> usize
🔬This is a nightly-only experimental API. (
proc_macro_internals
#27812)pub(crate) fn column(self: Span) -> usize
🔬This is a nightly-only experimental API. (
proc_macro_internals
#27812)pub(crate) fn file(self: Span) -> String
🔬This is a nightly-only experimental API. (
proc_macro_internals
#27812)pub(crate) fn local_file(self: Span) -> Option<String>
🔬This is a nightly-only experimental API. (
proc_macro_internals
#27812)pub(crate) fn join(self: Span, other: Span) -> Option<Span>
🔬This is a nightly-only experimental API. (
proc_macro_internals
#27812)pub(crate) fn subspan( self: Span, start: Bound<usize>, end: Bound<usize>, ) -> Option<Span>
🔬This is a nightly-only experimental API. (
proc_macro_internals
#27812)pub(crate) fn resolved_at(self: Span, at: Span) -> Span
🔬This is a nightly-only experimental API. (
proc_macro_internals
#27812)pub(crate) fn source_text(self: Span) -> Option<String>
🔬This is a nightly-only experimental API. (
proc_macro_internals
#27812)pub(crate) fn save_span(self: Span) -> usize
🔬This is a nightly-only experimental API. (
proc_macro_internals
#27812)pub(crate) fn recover_proc_macro_span(id: usize) -> Span
🔬This is a nightly-only experimental API. (
proc_macro_internals
#27812)Trait Implementations§
impl Copy for Span
impl StructuralPartialEq for Span
Auto Trait Implementations§
impl Freeze for Span
impl RefUnwindSafe for Span
impl !Send for Span
impl !Sync for Span
impl Unpin for Span
impl UnwindSafe for Span
Blanket Implementations§
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
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> SizedTypeProperties for T
impl<T> SizedTypeProperties for T
Source§#[doc(hidden)] const IS_ZST: bool = _
#[doc(hidden)] const IS_ZST: bool = _
🔬This is a nightly-only experimental API. (
sized_type_properties
)Source§#[doc(hidden)] const LAYOUT: Layout = _
#[doc(hidden)] const LAYOUT: Layout = _
🔬This is a nightly-only experimental API. (
sized_type_properties
)Source§#[doc(hidden)] const MAX_SLICE_LEN: usize = _
#[doc(hidden)] const MAX_SLICE_LEN: usize = _
🔬This is a nightly-only experimental API. (
sized_type_properties
)The largest safe length for a
[Self]
. Read more