Skip to content

Commit 988e3e6

Browse files
committed
Fix interface for non-QuantikzOp sub-classes.
1 parent 4a38f17 commit 988e3e6

File tree

1 file changed

+5
-4
lines changed

1 file changed

+5
-4
lines changed

src/Quantikz.jl

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,7 @@ function tryrun(cmd)
3939
end
4040

4141
abstract type QuantikzOp end
42+
QuantikzOp(q::QuantikzOp) = q
4243

4344
struct QuantikzTable
4445
table::Matrix{String}
@@ -317,10 +318,10 @@ conservative_maximum(a::AbstractVector)= isempty(a) ? 1 : maximum(a)
317318
conservative_maximum(a) = 1 # This captures EndpointRanges and other things... TODO might be a bit too conservative
318319
moreconservative_maximum(a::AbstractVector)= isempty(a) ? 0 : maximum(a)
319320
moreconservative_maximum(a) = 1
320-
circuitwidth(op::QuantikzOp) = conservative_maximum(affectedqubits(op))
321-
circuitwidth(circuit) = maximum(circuitwidth.(circuit))
322-
circuitwidthbits(op::QuantikzOp) = moreconservative_maximum(affectedbits(op))
323-
circuitwidthbits(circuit) = maximum(circuitwidthbits.(circuit))
321+
circuitwidth(op) = conservative_maximum(affectedqubits(op))
322+
circuitwidth(circuit::AbstractArray) = maximum(circuitwidth.(circuit))
323+
circuitwidthbits(op) = moreconservative_maximum(affectedbits(op))
324+
circuitwidthbits(circuit::AbstractArray) = maximum(circuitwidthbits.(circuit))
324325

325326
function QuantikzTable(circuit::AbstractVector, qubits::Integer)
326327
steps = sum(map(nsteps, circuit))

0 commit comments

Comments
 (0)