pub struct IBMQuantumClient { /* private fields */ }Expand description
Client for interacting with IBM Quantum
Implementations§
Source§impl IBMQuantumClient
impl IBMQuantumClient
Sourcepub fn new(token: &str) -> DeviceResult<Self>
pub fn new(token: &str) -> DeviceResult<Self>
Create a new IBM Quantum client with the given token
Sourcepub async fn list_backends(&self) -> DeviceResult<Vec<IBMBackend>>
pub async fn list_backends(&self) -> DeviceResult<Vec<IBMBackend>>
List all available backends
Sourcepub async fn get_backend(&self, backend_name: &str) -> DeviceResult<IBMBackend>
pub async fn get_backend(&self, backend_name: &str) -> DeviceResult<IBMBackend>
Get details about a specific backend
Sourcepub async fn submit_circuit(
&self,
backend_name: &str,
config: IBMCircuitConfig,
) -> DeviceResult<String>
pub async fn submit_circuit( &self, backend_name: &str, config: IBMCircuitConfig, ) -> DeviceResult<String>
Submit a circuit to be executed on an IBM Quantum backend
Sourcepub async fn get_job_status(&self, job_id: &str) -> DeviceResult<IBMJobStatus>
pub async fn get_job_status(&self, job_id: &str) -> DeviceResult<IBMJobStatus>
Get the status of a job
Sourcepub async fn get_job_result(&self, job_id: &str) -> DeviceResult<IBMJobResult>
pub async fn get_job_result(&self, job_id: &str) -> DeviceResult<IBMJobResult>
Get the results of a completed job
Sourcepub async fn wait_for_job(
&self,
job_id: &str,
timeout_secs: Option<u64>,
) -> DeviceResult<IBMJobResult>
pub async fn wait_for_job( &self, job_id: &str, timeout_secs: Option<u64>, ) -> DeviceResult<IBMJobResult>
Wait for a job to complete with timeout
Sourcepub async fn submit_circuits_parallel(
&self,
backend_name: &str,
configs: Vec<IBMCircuitConfig>,
) -> DeviceResult<Vec<String>>
pub async fn submit_circuits_parallel( &self, backend_name: &str, configs: Vec<IBMCircuitConfig>, ) -> DeviceResult<Vec<String>>
Submit multiple circuits in parallel
Sourcepub fn circuit_to_qasm<const N: usize>(
_circuit: &Circuit<N>,
_initial_layout: Option<HashMap<String, usize>>,
) -> DeviceResult<String>
pub fn circuit_to_qasm<const N: usize>( _circuit: &Circuit<N>, _initial_layout: Option<HashMap<String, usize>>, ) -> DeviceResult<String>
Convert a Quantrs circuit to QASM
Trait Implementations§
Source§impl Clone for IBMQuantumClient
impl Clone for IBMQuantumClient
Source§fn clone(&self) -> IBMQuantumClient
fn clone(&self) -> IBMQuantumClient
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for IBMQuantumClient
impl !RefUnwindSafe for IBMQuantumClient
impl Send for IBMQuantumClient
impl Sync for IBMQuantumClient
impl Unpin for IBMQuantumClient
impl !UnwindSafe for IBMQuantumClient
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
The inverse inclusion map: attempts to construct
self from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if
self is actually part of its subset T (and can be converted to it).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
Use with care! Same as
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
self to the equivalent element of its superset.Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
The inverse inclusion map: attempts to construct
self from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if
self is actually part of its subset T (and can be converted to it).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
Use with care! Same as
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
self to the equivalent element of its superset.