Re-organize into submodules.#15
Conversation
The following commits organize the `qiskit-rs` crate into different submodules. We understand that with the expansion of the C API we will have further additions into the API and we need to think about how we organize the many features as they will be included. Since we currently only have circuit feaures, the only module exposed will be the `circuit`.
Mimicking what was done in the main qiskit repository, this commit separates the `Observable`, `BitTerm` and `BitTermList` into its own crate called `quantum_info`.
emilkovacev
left a comment
There was a problem hiding this comment.
Thanks for the PR! I put a few comments/suggestions, but I think this is almost ready to merge.
| @@ -10,7 +10,7 @@ | |||
| // copyright notice, and modified files need to carry a notice indicating | |||
| // that they have been altered from the originals. | |||
|
|
|||
| use qiskit_rs::{ClassicalRegister, QuantumCircuit, QuantumRegister}; | |||
There was a problem hiding this comment.
Is there any way to move the files while keeping the imports? In python, QuantumCircuit, ClassicalRegister, and QuantumRegister are importable from Qiskit alone, so this would be consistent with the main interface.
There was a problem hiding this comment.
Yeah, we can have a pub use that keeps the imports up. That said, we don't have to follow that import logic to a tee as this is a different environment. It is fair for Circuit and Registers to be like that as they're very important structs, but we don't have to do the same for the rest.
There was a problem hiding this comment.
Makes sense! I agree for the time being that Circuits and Registers should follow that pattern.
| // copyright notice, and modified files need to carry a notice indicating | ||
| // that they have been altered from the originals. | ||
|
|
||
| mod observable; |
There was a problem hiding this comment.
Can you add module-level docs for the observable module? Something about what belongs in this module would be great.
Fixes #11
The following commits organize the
qiskit-rscrate into different submodules. We understand that with the expansion of the C API we will have further additions into the API and we need to think about how we organize the many features as they will be included. Since we currently only have circuit feaures, the only module exposed will be thecircuit.