Compiler module

Metaprogram_Plugin

structSource

A plugin for a metaprogram. Fill in the procedures you care about and the compiler calls them: init once, message for every compiler message, finish at the end. workspace is the build it works on.

Example↗
plugin: Metaprogram_Plugin;
plugin.message = (p: *Metaprogram_Plugin, message: *Message) {};
assert(plugin.init == null);

Fields

workspace: Workspace
init: (p: *Metaprogram_Plugin, options: [] string) -> bool
before_intercept: (p: *Metaprogram_Plugin, flags: *Intercept_Flags)
add_source: (p: *Metaprogram_Plugin)
message: (p: *Metaprogram_Plugin, message: *Message)
finish: (p: *Metaprogram_Plugin)
shutdown: (p: *Metaprogram_Plugin)
log_help: (p: *Metaprogram_Plugin)
communication_proc: (p: *Metaprogram_Plugin, key: string, value: string) -> bool

See also