Trait syntax::ext::base::Resolver   [−][src]
pub trait Resolver {
    fn next_node_id(&mut self) -> NodeId;
    fn get_module_scope(&mut self, id: NodeId) -> Mark;
    fn eliminate_crate_var(&mut self, item: P<Item>) -> P<Item>;
    fn is_whitelisted_legacy_custom_derive(&self, name: Name) -> bool;
    fn visit_ast_fragment_with_placeholders(
        &mut self, 
        mark: Mark, 
        fragment: &AstFragment, 
        derives: &[Mark]
    );
    fn add_builtin(&mut self, ident: Ident, ext: Lrc<SyntaxExtension>);
    fn resolve_imports(&mut self);
    fn find_legacy_attr_invoc(
        &mut self, 
        attrs: &mut Vec<Attribute>, 
        allow_derive: bool
    ) -> Option<Attribute>;
    fn resolve_invoc(
        &mut self, 
        invoc: &mut Invocation, 
        scope: Mark, 
        force: bool
    ) -> Result<Option<Lrc<SyntaxExtension>>, Determinacy>;
    fn resolve_macro(
        &mut self, 
        scope: Mark, 
        path: &Path, 
        kind: MacroKind, 
        force: bool
    ) -> Result<Lrc<SyntaxExtension>, Determinacy>;
    fn check_unused_macros(&self);
}Required Methods
fn next_node_id(&mut self) -> NodeId
fn get_module_scope(&mut self, id: NodeId) -> Mark
fn eliminate_crate_var(&mut self, item: P<Item>) -> P<Item>
fn is_whitelisted_legacy_custom_derive(&self, name: Name) -> bool
fn visit_ast_fragment_with_placeholders(
    &mut self, 
    mark: Mark, 
    fragment: &AstFragment, 
    derives: &[Mark]
)
&mut self,
mark: Mark,
fragment: &AstFragment,
derives: &[Mark]
)
fn add_builtin(&mut self, ident: Ident, ext: Lrc<SyntaxExtension>)
fn resolve_imports(&mut self)
fn find_legacy_attr_invoc(
    &mut self, 
    attrs: &mut Vec<Attribute>, 
    allow_derive: bool
) -> Option<Attribute>
&mut self,
attrs: &mut Vec<Attribute>,
allow_derive: bool
) -> Option<Attribute>
fn resolve_invoc(
    &mut self, 
    invoc: &mut Invocation, 
    scope: Mark, 
    force: bool
) -> Result<Option<Lrc<SyntaxExtension>>, Determinacy>
&mut self,
invoc: &mut Invocation,
scope: Mark,
force: bool
) -> Result<Option<Lrc<SyntaxExtension>>, Determinacy>
fn resolve_macro(
    &mut self, 
    scope: Mark, 
    path: &Path, 
    kind: MacroKind, 
    force: bool
) -> Result<Lrc<SyntaxExtension>, Determinacy>
&mut self,
scope: Mark,
path: &Path,
kind: MacroKind,
force: bool
) -> Result<Lrc<SyntaxExtension>, Determinacy>
fn check_unused_macros(&self)
Implementors
- impl Resolver for DummyResolver