Module conductor::plugins [] [src]

Plugin support for conductor.

Modules

transform

Plugins which transform dc::File objects.

Structs

Context

The context in which a plugin is being applied.

Manager

A collection of plugins, normally associated with a project.

Enums

Operation

What kind of transform operation are we performing? (Adding new kinds of operations will be a breaking API change for plugins.)

Traits

Plugin

The "super-trait" of all our specific plugin traits. This needs to be usable as a trait object, so it may not contain any static "class" methods or methods with type parameters. Those can be found in PluginNew instead. This trait needs to be usable as a trait object so that we can create a Vec containing multiple different plugin implementations. Trait objects are as close as Rust comes to object orientation.

PluginGenerate

A plugin which can generate source code.

PluginNew

Initialization for Plugin. These methods can't be part of Plugin itself, because they would prevent us from using Plugin as a trait object.

PluginTransform

A plugin which transforms a dc::File object.