Struct metatensor::ArrayRefMut
source · pub struct ArrayRefMut<'a> { /* private fields */ }Expand description
Mutable reference to a data array in metatensor-core
The data array can come from any origin, this struct provides facilities to
access data that was created through the Array trait, and in particular
as ndarray::ArrayD instances.
Implementations§
source§impl<'a> ArrayRefMut<'a>
impl<'a> ArrayRefMut<'a>
sourcepub unsafe fn new(array: mts_array_t) -> ArrayRefMut<'a>
pub unsafe fn new(array: mts_array_t) -> ArrayRefMut<'a>
Create a new ArrayRefMut from the given raw mts_array_t
This is a VERY unsafe function, creating a lifetime out of thin air,
and allowing mutable access to the mts_array_t. Make sure the lifetime
is actually constrained by the lifetime of the owner of this
mts_array_t; and that the owner is mutably borrowed by this
ArrayRefMut.
sourcepub fn as_any(&self) -> &dyn Any
pub fn as_any(&self) -> &dyn Any
Get the underlying array as an &dyn Any instance.
This function panics if the array was not created though this crate and
the Array trait.
sourcepub fn to_any(&self) -> &'a dyn Any
pub fn to_any(&self) -> &'a dyn Any
Get the underlying array as an &dyn Any instance,
re-using the same lifetime as the ArrayRefMut.
This function panics if the array was not created though this crate and
the Array trait.
sourcepub fn as_any_mut(&mut self) -> &mut dyn Any
pub fn as_any_mut(&mut self) -> &mut dyn Any
Get the underlying array as an &mut dyn Any instance.
This function panics if the array was not created though this crate and
the Array trait.
sourcepub fn to_any_mut(self) -> &'a mut dyn Any
pub fn to_any_mut(self) -> &'a mut dyn Any
Get the underlying array as an &mut dyn Any instance, re-using the
same lifetime as the ArrayRefMut.
This function panics if the array was not created though this crate and
the Array trait.
sourcepub fn as_array(&self) -> &ArrayD<f64>
pub fn as_array(&self) -> &ArrayD<f64>
Get the data in this ArrayRef as a ndarray::ArrayD. This function
will panic if the data in this mts_array_t is not a ndarray::ArrayD.
sourcepub fn to_array(&self) -> &ArrayD<f64>
pub fn to_array(&self) -> &ArrayD<f64>
Transform this ArrayRefMut into a reference to an ndarray::ArrayD,
keeping the lifetime of the ArrayRefMut.
This function will panic if the data in this mts_array_t is not a
ndarray::ArrayD.
sourcepub fn as_array_mut(&mut self) -> &mut ArrayD<f64>
pub fn as_array_mut(&mut self) -> &mut ArrayD<f64>
Get the data in this ArrayRef as a mutable reference to an
ndarray::ArrayD. This function will panic if the data in this
mts_array_t is not a ndarray::ArrayD.
sourcepub fn to_array_mut(self) -> &'a mut ArrayD<f64>
pub fn to_array_mut(self) -> &'a mut ArrayD<f64>
Transform this ArrayRefMut into a mutable reference to an
ndarray::ArrayD, keeping the lifetime of the ArrayRefMut.
This function will panic if the data in this mts_array_t is not a
ndarray::ArrayD.
sourcepub fn as_raw(&self) -> &mts_array_t
pub fn as_raw(&self) -> &mts_array_t
Get the raw underlying mts_array_t
sourcepub fn as_raw_mut(&mut self) -> &mut mts_array_t
pub fn as_raw_mut(&mut self) -> &mut mts_array_t
Get a mutable reference to the raw underlying mts_array_t