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