hir

Trait SyntaxContextExt

pub trait SyntaxContextExt {
    // Required methods
    fn normalize_to_macro_rules(self, db: &dyn ExpandDatabase) -> Self;
    fn normalize_to_macros_2_0(self, db: &dyn ExpandDatabase) -> Self;
    fn parent_ctxt(self, db: &dyn ExpandDatabase) -> Self;
    fn remove_mark(
        &mut self,
        db: &dyn ExpandDatabase,
    ) -> (Option<MacroCallId>, Transparency);
    fn outer_mark(
        self,
        db: &dyn ExpandDatabase,
    ) -> (Option<MacroCallId>, Transparency);
    fn marks(self, db: &dyn ExpandDatabase) -> Vec<(MacroCallId, Transparency)>;
    fn is_opaque(self, db: &dyn ExpandDatabase) -> bool;
}

Required Methods§

fn normalize_to_macro_rules(self, db: &dyn ExpandDatabase) -> Self

fn normalize_to_macros_2_0(self, db: &dyn ExpandDatabase) -> Self

fn parent_ctxt(self, db: &dyn ExpandDatabase) -> Self

fn remove_mark( &mut self, db: &dyn ExpandDatabase, ) -> (Option<MacroCallId>, Transparency)

fn outer_mark( self, db: &dyn ExpandDatabase, ) -> (Option<MacroCallId>, Transparency)

fn marks(self, db: &dyn ExpandDatabase) -> Vec<(MacroCallId, Transparency)>

fn is_opaque(self, db: &dyn ExpandDatabase) -> bool

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementations on Foreign Types§

§

impl SyntaxContextExt for SyntaxContextId

§

fn normalize_to_macro_rules(self, db: &dyn ExpandDatabase) -> SyntaxContextId

§

fn normalize_to_macros_2_0(self, db: &dyn ExpandDatabase) -> SyntaxContextId

§

fn parent_ctxt(self, db: &dyn ExpandDatabase) -> SyntaxContextId

§

fn outer_mark( self, db: &dyn ExpandDatabase, ) -> (Option<MacroCallId>, Transparency)

§

fn remove_mark( &mut self, db: &dyn ExpandDatabase, ) -> (Option<MacroCallId>, Transparency)

§

fn marks(self, db: &dyn ExpandDatabase) -> Vec<(MacroCallId, Transparency)>

§

fn is_opaque(self, db: &dyn ExpandDatabase) -> bool

Implementors§