Crate ra_ap_proc_macro_api

Crate ra_ap_proc_macro_api 

Source
Expand description

Client-side Proc-Macro crate

We separate proc-macro expanding logic to an extern program to allow different implementations (e.g. wasm or dylib loading). And this crate is used to provide basic infrastructure for communication between two processes: Client (RA itself), Server (the external program)

Modules§

legacy_protocol
The initial proc-macro-srv protocol, soon to be deprecated.
version
The versions of the server protocol

Structs§

MacroDylib
Represents a dynamically loaded library containing procedural macros.
ProcMacro
A handle to a specific proc-macro (a #[proc_macro] annotated function).
ProcMacroClient
A handle to an external process which load dylibs with macros (.so or .dll) and runs actual macro expansion functions.
ServerError
Represents errors encountered when communicating with the proc-macro server.

Enums§

ProcMacroKind
Represents different kinds of procedural macros that can be expanded by the external server.