Struct ra_ap_syntax::ast::UseTree
source · pub struct UseTree { /* private fields */ }
Implementations§
source§impl UseTree
impl UseTree
sourcepub fn remove_recursive(self)
pub fn remove_recursive(self)
Deletes the usetree node represented by the input. Recursively removes parents, including use nodes that become empty.
pub fn get_or_create_use_tree_list(&self) -> UseTreeList
sourcepub fn split_prefix(&self, prefix: &Path)
pub fn split_prefix(&self, prefix: &Path)
Splits off the given prefix, making it the path component of the use tree, appending the rest of the path to all UseTreeList items.
§Examples
prefix$0::suffix
-> prefix::{suffix}
prefix$0
-> prefix::{self}
prefix$0::*
-> prefix::{*}
sourcepub fn wrap_in_tree_list(&self) -> Option<()>
pub fn wrap_in_tree_list(&self) -> Option<()>
Wraps the use tree in use tree list with no top level path (if it isn’t already).
§Examples
foo::bar
-> {foo::bar}
{foo::bar}
-> {foo::bar}
source§impl UseTree
impl UseTree
pub fn path(&self) -> Option<Path>
pub fn rename(&self) -> Option<Rename>
pub fn use_tree_list(&self) -> Option<UseTreeList>
pub fn star_token(&self) -> Option<SyntaxToken>
pub fn coloncolon_token(&self) -> Option<SyntaxToken>
source§impl UseTree
impl UseTree
pub fn is_simple_path(&self) -> bool
pub fn parent_use_tree_list(&self) -> Option<UseTreeList>
pub fn top_use_tree(&self) -> UseTree
Trait Implementations§
source§impl AstNode for UseTree
impl AstNode for UseTree
fn can_cast(kind: SyntaxKind) -> bool
fn cast(syntax: SyntaxNode) -> Option<Self>
fn syntax(&self) -> &SyntaxNode
fn clone_for_update(&self) -> Selfwhere
Self: Sized,
fn clone_subtree(&self) -> Selfwhere
Self: Sized,
source§impl PartialEq for UseTree
impl PartialEq for UseTree
impl Eq for UseTree
impl StructuralPartialEq for UseTree
Auto Trait Implementations§
impl Freeze for UseTree
impl !RefUnwindSafe for UseTree
impl !Send for UseTree
impl !Sync for UseTree
impl Unpin for UseTree
impl !UnwindSafe for UseTree
Blanket Implementations§
source§impl<N> AstNodeEdit for N
impl<N> AstNodeEdit for N
fn indent_level(&self) -> IndentLevel
fn indent(&self, level: IndentLevel) -> Self
fn dedent(&self, level: IndentLevel) -> Self
fn reset_indent(&self) -> Self
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<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key
and return true
if they are equal.