pub trait Named {
    // Required methods
    fn name() -> &'static str;
    fn description() -> &'static str;

    // Provided method
    fn opts() -> &'static [(&'static str, &'static str)] { ... }
}
Expand description

Trait that describes named things. Calling do_pass and do_pass_default. require this to be implemented.

This has to be a separate trait from Visitor because these methods don’t recieve self which means that it is impossible to create dynamic trait objects.

Required Methods§

source

fn name() -> &'static str

The name of a pass. Is used for identifying passes.

source

fn description() -> &'static str

A short description of the pass.

Provided Methods§

source

fn opts() -> &'static [(&'static str, &'static str)]

Set of options that can be passed to the pass. The options contains a tuple of the option name and a description.

Implementors§

source§

impl Named for AttributePromotion

source§

impl Named for Canonicalize

source§

impl Named for CellShare

source§

impl Named for ClkInsertion

source§

impl Named for CollapseControl

source§

impl Named for CombProp

source§

impl Named for CompileEmpty

source§

impl Named for CompileInvoke

source§

impl Named for CompileRef

source§

impl Named for CompileStatic

source§

impl Named for CompileSync

source§

impl Named for CompileSyncWithoutSyncReg

source§

impl Named for ComponentInliner

source§

impl Named for DataPathInfer

source§

impl Named for DeadAssignmentRemoval

source§

impl Named for DeadCellRemoval

source§

impl Named for DeadGroupRemoval

source§

impl Named for DiscoverExternal

source§

impl Named for Externalize

source§

impl Named for GoInsertion

source§

impl Named for GroupToInvoke

source§

impl Named for GroupToSeq

source§

impl Named for HoleInliner

source§

impl Named for InferShare

source§

impl Named for LowerGuards

source§

impl Named for MergeAssign

source§

impl Named for MergeStaticPar

source§

impl Named for Papercut

source§

impl Named for ParToSeq

source§

impl Named for RegisterUnsharing

source§

impl Named for RemoveIds

source§

impl Named for ResetInsertion

source§

impl Named for SimplifyStaticGuards

source§

impl Named for SimplifyWithControl

source§

impl Named for StaticInliner

source§

impl Named for StaticParConv

source§

impl Named for StaticPromotion

source§

impl Named for SynthesisPapercut

source§

impl Named for TopDownCompileControl

source§

impl Named for TopDownStaticTiming

source§

impl Named for UnrollBounded

source§

impl Named for WellFormed

source§

impl Named for WireInliner