pub struct ImportStatement<N: TreeNode = SyntaxNode>(/* private fields */);Expand description
Represents an import statement.
Implementations§
Source§impl<N: TreeNode> ImportStatement<N>
impl<N: TreeNode> ImportStatement<N>
Sourcepub fn uri(&self) -> LiteralString<N>
pub fn uri(&self) -> LiteralString<N>
Gets the URI of the import statement.
Sourcepub fn keyword(&self) -> ImportKeyword<N::Token>
pub fn keyword(&self) -> ImportKeyword<N::Token>
Gets the import keyword of the import statement.
Sourcepub fn explicit_namespace(&self) -> Option<Ident<N::Token>>
pub fn explicit_namespace(&self) -> Option<Ident<N::Token>>
Gets the explicit namespace of the import statement (i.e. the as
clause).
Sourcepub fn aliases(&self) -> impl Iterator<Item = ImportAlias<N>> + use<'_, N>
pub fn aliases(&self) -> impl Iterator<Item = ImportAlias<N>> + use<'_, N>
Gets the aliased names of the import statement.
Sourcepub fn namespace(&self) -> Option<(String, Span)>
pub fn namespace(&self) -> Option<(String, Span)>
Gets the namespace of the import.
If an explicit namespace was not present, this will determine the namespace based on the URI.
Returns None if the namespace could not be derived; this may occur
when the URI contains an interpolation or if the file stem of the
URI is not a valid WDL identifier.
The returned span is either the span of the explicit namespace or the span of the URI.
Trait Implementations§
Source§impl<N: TreeNode> AstNode<N> for ImportStatement<N>
impl<N: TreeNode> AstNode<N> for ImportStatement<N>
Source§fn can_cast(kind: SyntaxKind) -> bool
fn can_cast(kind: SyntaxKind) -> bool
Determines if the kind can be cast to this representation.
Source§fn kind(&self) -> SyntaxKind
fn kind(&self) -> SyntaxKind
Gets the syntax kind of the node.
Source§fn tokens<'a, C>(&'a self) -> impl Iterator<Item = C>
fn tokens<'a, C>(&'a self) -> impl Iterator<Item = C>
Gets all the token children that can cast to an expected type.
Source§fn last_token<C>(&self) -> Option<C>
fn last_token<C>(&self) -> Option<C>
Gets the last token of the node and attempts to cast it to an expected
type. Read more
Source§fn child<C>(&self) -> Option<C>where
C: AstNode<N>,
fn child<C>(&self) -> Option<C>where
C: AstNode<N>,
Gets the first node child that can cast to an expected type.
Source§fn children<'a, C>(&'a self) -> impl Iterator<Item = C>where
C: AstNode<N>,
N: 'a,
fn children<'a, C>(&'a self) -> impl Iterator<Item = C>where
C: AstNode<N>,
N: 'a,
Gets all node children that can cast to an expected type.
Source§fn parent<'a, P>(&self) -> Option<P>where
P: AstNode<N>,
N: 'a,
fn parent<'a, P>(&self) -> Option<P>where
P: AstNode<N>,
N: 'a,
Gets the parent of the node if the underlying tree node has a parent. Read more
Source§fn scope_span<O, C>(&self) -> Option<Span>
fn scope_span<O, C>(&self) -> Option<Span>
Calculates the span of a scope given the node where the scope is
visible. Read more
Source§fn braced_scope_span(&self) -> Option<Span>
fn braced_scope_span(&self) -> Option<Span>
Gets the interior span of child opening and closing brace tokens for the
node. Read more
Source§fn heredoc_scope_span(&self) -> Option<Span>
fn heredoc_scope_span(&self) -> Option<Span>
Gets the interior span of child opening and closing heredoc tokens for
the node. Read more
Source§fn descendants<'a, D>(&'a self) -> impl Iterator<Item = D>where
D: AstNode<N>,
N: 'a,
fn descendants<'a, D>(&'a self) -> impl Iterator<Item = D>where
D: AstNode<N>,
N: 'a,
Gets the node descendants (including self) from this node that can be
cast to the expected type.
Source§impl<N: Clone + TreeNode> Clone for ImportStatement<N>
impl<N: Clone + TreeNode> Clone for ImportStatement<N>
Source§fn clone(&self) -> ImportStatement<N>
fn clone(&self) -> ImportStatement<N>
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreimpl<N: Eq + TreeNode> Eq for ImportStatement<N>
impl<N: TreeNode> StructuralPartialEq for ImportStatement<N>
Auto Trait Implementations§
impl<N> Freeze for ImportStatement<N>where
N: Freeze,
impl<N> RefUnwindSafe for ImportStatement<N>where
N: RefUnwindSafe,
impl<N> Send for ImportStatement<N>where
N: Send,
impl<N> Sync for ImportStatement<N>where
N: Sync,
impl<N> Unpin for ImportStatement<N>where
N: Unpin,
impl<N> UnwindSafe for ImportStatement<N>where
N: UnwindSafe,
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