Skip to content

Don't use enums for synth strategies #61

@Ectras

Description

@Ectras

Enums represent a closed set of options and prevents users from using their own synthesizers. Instead, the synthesizers should be passed as generic arguments. For instance,

pub struct PauliExponentialSynthesizer {
    pauli_strategy: PauliPolynomialSynthStrategy,
    clifford_strategy: CliffordTableauSynthStrategy,
}

should probably be

pub struct PauliExponentialSynthesizer<PS, CS> {
    pauli_synthesizer: PS,
    clifford_synthesizer: CS,
}

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions