pub struct QualifiedIdentifier {
pub token: Token,
pub qualifier: Box<Identifier>,
pub intermediate: Option<Box<Vec<Identifier>>>,
pub name: Box<Identifier>,
}Expand description
Qualified identifier or an unresolved multi-part identifier path.
Two-component identifiers keep the historic qualifier.name shape. For
longer paths, intermediate owns every component between the root
qualifier and terminal name. The parser preserves each component as an
Identifier, including its source token and position; schema meaning is
deliberately assigned later by the binder.
Fields§
§token: Token§qualifier: Box<Identifier>§intermediate: Option<Box<Vec<Identifier>>>Allocated only for paths longer than qualifier.name, keeping the
common two-component AST node compact.
name: Box<Identifier>Implementations§
Source§impl QualifiedIdentifier
impl QualifiedIdentifier
pub fn component_count(&self) -> usize
pub fn is_multi_part_path(&self) -> bool
pub fn components(&self) -> impl Iterator<Item = &Identifier>
Trait Implementations§
Source§impl Clone for QualifiedIdentifier
impl Clone for QualifiedIdentifier
Source§fn clone(&self) -> QualifiedIdentifier
fn clone(&self) -> QualifiedIdentifier
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for QualifiedIdentifier
impl Debug for QualifiedIdentifier
Source§impl Display for QualifiedIdentifier
impl Display for QualifiedIdentifier
Source§impl PartialEq for QualifiedIdentifier
impl PartialEq for QualifiedIdentifier
impl StructuralPartialEq for QualifiedIdentifier
Auto Trait Implementations§
impl Freeze for QualifiedIdentifier
impl RefUnwindSafe for QualifiedIdentifier
impl Send for QualifiedIdentifier
impl Sync for QualifiedIdentifier
impl Unpin for QualifiedIdentifier
impl UnsafeUnpin for QualifiedIdentifier
impl UnwindSafe for QualifiedIdentifier
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