Trait FreeFunctions

Source
pub trait FreeFunctions: Types {
    // Required methods
    fn injected_env_var(&mut self, var: &str) -> Option<String>;
    fn track_env_var(&mut self, var: &str, value: Option<&str>);
    fn track_path(&mut self, path: &str);
    fn literal_from_str(
        &mut self,
        s: &str,
    ) -> Result<Literal<Self::Span, Self::Symbol>, ()>;
    fn emit_diagnostic(&mut self, diagnostic: Diagnostic<Self::Span>);

    // Provided method
    fn drop(&mut self, self_: Self::FreeFunctions) { ... }
}
🔬This is a nightly-only experimental API. (proc_macro_internals #27812)

Required Methods§

Source

fn injected_env_var(&mut self, var: &str) -> Option<String>

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

fn track_env_var(&mut self, var: &str, value: Option<&str>)

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

fn track_path(&mut self, path: &str)

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

fn literal_from_str( &mut self, s: &str, ) -> Result<Literal<Self::Span, Self::Symbol>, ()>

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

fn emit_diagnostic(&mut self, diagnostic: Diagnostic<Self::Span>)

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

Provided Methods§

Source

fn drop(&mut self, self_: Self::FreeFunctions)

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

Implementors§