Struct rustc_resolve::Segment
source · pub(crate) struct Segment {
pub(crate) ident: Ident,
pub(crate) id: Option<NodeId>,
pub(crate) has_generic_args: bool,
pub(crate) has_lifetime_args: bool,
pub(crate) args_span: Span,
}
Expand description
A minimal representation of a path segment. We use this in resolve because we synthesize ‘path
segments’ which don’t have the rest of an AST or HIR PathSegment
.
Fields§
§ident: Ident
§id: Option<NodeId>
§has_generic_args: bool
Signals whether this PathSegment
has generic arguments. Used to avoid providing
nonsensical suggestions.
has_lifetime_args: bool
Signals whether this PathSegment
has lifetime arguments.
args_span: Span
Implementations§
Trait Implementations§
source§impl<'a> From<&'a PathSegment> for Segment
impl<'a> From<&'a PathSegment> for Segment
source§fn from(seg: &'a PathSegment) -> Segment
fn from(seg: &'a PathSegment) -> Segment
Converts to this type from the input type.
impl Copy for Segment
Auto Trait Implementations§
impl RefUnwindSafe for Segment
impl !Send for Segment
impl !Sync for Segment
impl Unpin for Segment
impl UnwindSafe for Segment
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
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: 28 bytes