• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

Qiskit / qiskit / 7046498240
87%
main: 88%

Build:
Build:
LAST BUILD BRANCH: add-pauli-lindblad-map-generators-15228
DEFAULT BRANCH: main
Ran 30 Nov 2023 12:53PM UTC
Jobs 1
Files 988
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

30 Nov 2023 12:31PM UTC coverage: 87.466% (+0.03%) from 87.438%
7046498240

push

github

web-flow
Ensure `QuantumCircuit.append` validates captures in control-flow (#10974)

* Add definition of `Store` instruction

This does not yet add the implementation of `QuantumCircuit.store`,
which will come later as part of expanding the full API of
`QuantumCircuit` to be able to support these runtime variables.

The `is_lvalue` helper is added generally to the `classical.expr` module
because it's generally useful, while `types.cast_kind` is moved from
being a private method in `expr` to a public-API function so `Store` can
use it.  These now come with associated unit tests.

* Add variable-handling methods to `QuantumCircuit`

This adds all the new `QuantumCircuit` methods discussed in the
variable-declaration RFC[^1], and threads the support for them through
the methods that are called in turn, such as `QuantumCircuit.append`.
It does yet not add support to methods such as `copy` or `compose`,
which will be done in a follow-up.

The APIs discussed in the RFC necessitated making `Var` nodes hashable.
This is done in this commit, as it is logically connected.  These nodes
now have enforced immutability, which is technically a minor breaking
change, but in practice required for the properties of such expressions
to be tracked correctly through circuits.

A helper attribute `Var.standalone` is added to unify the handling of
whether a variable is an old-style existing-memory wrapper, or a new
"proper" variable with its own memory.

[^1]: https://github.com/Qiskit/RFCs/pull/50

* Support manual variables `QuantumCircuit` copy methods

This commit adds support to the `QuantumCircuit` methods `copy` and
`copy_empty_like` for manual variables.  This involves the non-trivial
extension to the original RFC[^1] that variables can now be
uninitialised; this is somewhat required for the logic of how the
`Store` instruction works and the existence of
`QuantumCircuit.copy_empty_like`; a variable could be initialised with
the result of a `measure` that no longer exists, th... (continued)

245 of 267 new or added lines in 17 files covered. (91.76%)

5 existing lines in 1 file now uncovered.

59965 of 68558 relevant lines covered (87.47%)

271800.64 hits per line

Jobs
ID Job ID Ran Files Coverage
1 7046498240.1 30 Nov 2023 12:52PM UTC 0
87.47
GitHub Action Run
Source Files on build 7046498240
Detailed source file information is not available for this build.
  • Back to Repo
  • ba161e92 on github
  • Prev Build on main (#7039950767)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc