InstructionFilter
Extends:
The InstructionFilter is a compiler engine which changes the behavior of isAvailable according to a filter function. All commands are passed to this function, which then returns whether this command can be executed (true) or needs replacement (false).
Constructor Summary
Public Constructor | ||
public |
constructor(filterFunc: function) |
Member Summary
Private Members | ||
private |
_filterFunc: * |
Method Summary
Public Methods | ||
public |
isAvailable(cmd: Command): * Specialized implementation of BasicBackend.isAvailable: Forwards this call to the filter function given to the constructor. |
|
public |
Forward all commands to the next engine. |
Inherited Summary
From class BasicEngine | ||
public |
|
|
public |
allocateQubit(dirty: boolean): Qureg Return a new qubit as a list containing 1 qubit object (quantum register of size 1). |
|
public |
allocateQureg(n: number): Qureg Allocate n qubits and return them as a quantum register, which is a list of qubit objects. |
|
public |
deallocateQubit(qubit: BasicQubit) Deallocate a qubit (and sends the deallocation command down the pipeline). |
|
public |
isAvailable(cmd: Command): boolean Default implementation of isAvailable: Ask the next engine whether a command is available, i.e., whether it can be executed by the next engine(s). |
|
public |
isMetaTagSupported(metaTag: function): boolean Check if there is a compiler engine handling the meta tag |
|
public |
receive() |
|
public |
Forward the list of commands to the next engine in the pipeline. |
Public Constructors
public constructor(filterFunc: function) source
Override:
BasicEngine#constructorParams:
Name | Type | Attribute | Description |
filterFunc | function | Filter function which returns true for available commands, and false otherwise. filterfun will be called as filterfun(self, cmd). |
Private Members
private _filterFunc: * source
Public Methods
public isAvailable(cmd: Command): * source
Specialized implementation of BasicBackend.isAvailable: Forwards this call to the filter function given to the constructor.
Override:
BasicEngine#isAvailableParams:
Name | Type | Attribute | Description |
cmd | Command | Command for which to check availability. |
Return:
* |
public receive(commandList: Command[]) source
Forward all commands to the next engine.
Override:
BasicEngine#receiveParams:
Name | Type | Attribute | Description |
commandList | Command[] | List of commands to receive. |