Struct metatensor::ArrayRef
source · pub struct ArrayRef<'a> { /* private fields */ }
Expand description
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> ArrayRef<'a>
impl<'a> ArrayRef<'a>
sourcepub unsafe fn from_raw(array: mts_array_t) -> ArrayRef<'a>
pub unsafe fn from_raw(array: mts_array_t) -> ArrayRef<'a>
Create a new ArrayRef
from the given raw mts_array_t
This is a VERY unsafe function, creating a lifetime out of thin air.
Make sure the lifetime is actually constrained by the lifetime of the
owner of this mts_array_t
.
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 a reference to the underlying array as an &dyn Any
instance,
re-using the same lifetime as the ArrayRef
.
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) -> &'a ArrayD<f64>
pub fn to_array(self) -> &'a ArrayD<f64>
Transform this ArrayRef
into a reference to an ndarray::ArrayD
,
keeping the lifetime of the ArrayRef
.
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