Skip to content

bloqade.qasm3.emit.base.EmitQASM3Base

← Module overview

classEmitQASM3Basesource

bloqade.qasm3.emit.base.EmitQASM3Base

Bases: EmitABC[EmitQASM3Frame, str | None], ABC

Base emitter for QASM3 string output via abstract interpretation.

class EmitQASM3Base(*, prefix: str = '', prefix_if_none: str = 'var_')

Parameters

NameTypeDefaultDescription
prefixstr''
prefix_if_nonestr'var_'

Attributes

NameTypeDefaultDescription
void—None
prefixstrfield(default='', kw_only=True)
prefix_if_nonestrfield(default='var_', kw_only=True)
outputstr | Nonefield(init=False, default=None)
ssa_ididtable.IdTable[ir.SSAValue]field(init=False)

methodinitializesource

bloqade.qasm3.emit.base.EmitQASM3Base.initialize

def initialize() -> Self

Returns

Self

source

methodinitialize_framesource

bloqade.qasm3.emit.base.EmitQASM3Base.initialize_frame

Signature
def initialize_frame(node: ir.Statement, *, has_parent_access: bool = False) -> EmitQASM3Frame

Parameters

NameTypeDefaultDescription
nodeir.Statementrequired
has_parent_accessboolFalse

Returns

EmitQASM3Frame

source

methodemit_blocksource

bloqade.qasm3.emit.base.EmitQASM3Base.emit_block

def emit_block(frame: EmitQASM3Frame, block: ir.Block) -> str | None

Parameters

NameTypeDescription
frameEmitQASM3Frame
blockir.Block

Returns

str | None

source

methodresetsource

bloqade.qasm3.emit.base.EmitQASM3Base.reset

def reset()
source

methodeval_fallbacksource

bloqade.qasm3.emit.base.EmitQASM3Base.eval_fallback

def eval_fallback(frame: EmitQASM3Frame, node: ir.Statement)

Parameters

NameTypeDescription
frameEmitQASM3Frame
nodeir.Statement
source

methodformat_floatsource

bloqade.qasm3.emit.base.EmitQASM3Base.format_float

def format_float(value: float) -> str

Format a float for QASM3 output, using ‘pi’ for common values.

Parameters

NameTypeDescription
valuefloat

Returns

str

source