Skip to main content

Plugin

Trait Plugin 

Source
pub trait Plugin: Send + Sync {
    // Required methods
    fn language(&self) -> Language;
    fn extensions(&self) -> &[&str];
    fn parse(&self, req: &ParseRequest) -> ParseResponse;

    // Provided methods
    fn supports_phase_b(&self) -> bool { ... }
    fn invoke_phase_b(&self, _req: &InvokeRequest) -> InvokeResponse { ... }
}
Expand description

Implemented once per language. Stateless and Send+Sync so a single instance is shared across walker threads (in-process) or drives one child process (sidecar).

Required Methods§

Source

fn language(&self) -> Language

Source

fn extensions(&self) -> &[&str]

Source

fn parse(&self, req: &ParseRequest) -> ParseResponse

Provided Methods§

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§