Trait Server

Source
pub trait Server:
    Types
    + FreeFunctions
    + TokenStream
    + Span
    + Symbol {
    // Required methods
    fn globals(&mut self) -> ExpnGlobals<Self::Span>;
    fn intern_symbol(ident: &str) -> Self::Symbol;
    fn with_symbol_string(symbol: &Self::Symbol, f: impl FnOnce(&str));
}
🔬This is a nightly-only experimental API. (proc_macro_internals #27812)

Required Methods§

Source

fn globals(&mut self) -> ExpnGlobals<Self::Span>

🔬This is a nightly-only experimental API. (proc_macro_internals #27812)
Source

fn intern_symbol(ident: &str) -> Self::Symbol

🔬This is a nightly-only experimental API. (proc_macro_internals #27812)

Intern a symbol received from RPC

Source

fn with_symbol_string(symbol: &Self::Symbol, f: impl FnOnce(&str))

🔬This is a nightly-only experimental API. (proc_macro_internals #27812)

Recover the string value of a symbol, and invoke a callback with it.

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.

Implementors§