Skip to content

Commit

Permalink
Typing improvements.
Browse files Browse the repository at this point in the history
  • Loading branch information
cqc-alec committed Sep 11, 2024
1 parent 7d603b6 commit 6627b5e
Showing 1 changed file with 12 additions and 12 deletions.
24 changes: 12 additions & 12 deletions pytket/pytket/qasm/qasm.py
Original file line number Diff line number Diff line change
Expand Up @@ -1127,7 +1127,7 @@ def circuit_to_qasm_str(


def _retrieve_registers(
units: List[UnitID], reg_type: Type[TypeReg]
units: Sequence[UnitID], reg_type: Type[TypeReg]
) -> Dict[str, TypeReg]:
if any(len(unit.index) != 1 for unit in units):
raise NotImplementedError("OPENQASM registers must use a single index")
Expand Down Expand Up @@ -1290,7 +1290,7 @@ def make_params_str(params: Optional[List[Union[float, Expr]]]) -> str:
return s


def make_args_str(args: List[UnitID]) -> str:
def make_args_str(args: Sequence[UnitID]) -> str:
s = ""
for i in range(len(args)):
s += f"{args[i]}"
Expand Down Expand Up @@ -1423,7 +1423,7 @@ def write_params(self, params: Optional[List[Union[float, Expr]]]) -> None:
params_str = make_params_str(params)
self.strings.add_string(params_str)

def write_args(self, args: List[UnitID]) -> None:
def write_args(self, args: Sequence[UnitID]) -> None:
args_str = make_args_str(args)
self.strings.add_string(args_str)

Expand Down Expand Up @@ -1577,7 +1577,7 @@ def remove_unused_predicate(self, pred_label: int) -> bool:
self.strings.del_string(pred_label)
return True

def add_conditional(self, op: Conditional, args: List[UnitID]) -> None:
def add_conditional(self, op: Conditional, args: Sequence[UnitID]) -> None:
control_bits = args[: op.width]
if op.width == 1 and hqs_header(self.header):
variable = str(control_bits[0])
Expand Down Expand Up @@ -1728,11 +1728,11 @@ def add_wasm(self, op: WASMOp, args: List[Bit]) -> None:
for variable in outputs:
self.mark_as_written(label, variable)

def add_measure(self, args: List[UnitID]) -> None:
def add_measure(self, args: Sequence[UnitID]) -> None:
label = self.strings.add_string(f"measure {args[0]} -> {args[1]};\n")
self.mark_as_written(label, f"{args[1]}")

def add_zzphase(self, param: Union[float, Expr], args: List[UnitID]) -> None:
def add_zzphase(self, param: Union[float, Expr], args: Sequence[UnitID]) -> None:
# as op.params returns reduced parameters, we can assume
# that 0 <= param < 4
if param > 1:
Expand All @@ -1746,7 +1746,7 @@ def add_zzphase(self, param: Union[float, Expr], args: List[UnitID]) -> None:
self.write_params([param])
self.write_args(args)

def add_data(self, op: BarrierOp, args: List[UnitID]) -> None:
def add_data(self, op: BarrierOp, args: Sequence[UnitID]) -> None:
if op.data == "":
opstr = _tk_to_qasm_noparams[OpType.Barrier]
else:
Expand All @@ -1755,18 +1755,18 @@ def add_data(self, op: BarrierOp, args: List[UnitID]) -> None:
self.strings.add_string(" ")
self.write_args(args)

def add_gate_noparams(self, op: Op, args: List[UnitID]) -> None:
def add_gate_noparams(self, op: Op, args: Sequence[UnitID]) -> None:
self.strings.add_string(_tk_to_qasm_noparams[op.type])
self.strings.add_string(" ")
self.write_args(args)

def add_gate_params(self, op: Op, args: List[UnitID]) -> None:
def add_gate_params(self, op: Op, args: Sequence[UnitID]) -> None:
optype, params = _get_optype_and_params(op)
self.strings.add_string(_tk_to_qasm_params[optype])
self.write_params(params)
self.write_args(args)

def add_extra_noparams(self, op: Op, args: List[UnitID]) -> Tuple[str, str]:
def add_extra_noparams(self, op: Op, args: Sequence[UnitID]) -> Tuple[str, str]:
optype = op.type
opstr = _tk_to_qasm_extra_noparams[optype]
gatedefstr = ""
Expand All @@ -1776,7 +1776,7 @@ def add_extra_noparams(self, op: Op, args: List[UnitID]) -> Tuple[str, str]:
mainstr = opstr + " " + make_args_str(args)
return gatedefstr, mainstr

def add_extra_params(self, op: Op, args: List[UnitID]) -> Tuple[str, str]:
def add_extra_params(self, op: Op, args: Sequence[UnitID]) -> Tuple[str, str]:
optype, params = _get_optype_and_params(op)
assert params is not None
opstr = _tk_to_qasm_extra_params[optype]
Expand All @@ -1789,7 +1789,7 @@ def add_extra_params(self, op: Op, args: List[UnitID]) -> Tuple[str, str]:
mainstr = opstr + make_params_str(params) + make_args_str(args)
return gatedefstr, mainstr

def add_op(self, op: Op, args: List[UnitID]) -> None:
def add_op(self, op: Op, args: Sequence[UnitID]) -> None:
optype, _params = _get_optype_and_params(op)
if optype == OpType.RangePredicate:
assert isinstance(op, RangePredicateOp)
Expand Down

0 comments on commit 6627b5e

Please sign in to comment.