pub struct RustTestCustomData {
pub instrument_id: InstrumentId,
pub value: f64,
pub flag: bool,
pub ts_event: UnixNanos,
pub ts_init: UnixNanos,
}Expand description
A simple Rust custom data type for roundtrip testing.
Used in persistence integration tests (test_catalog.rs) and Python roundtrip tests.
Tests call ensure_custom_data_registered::<RustTestCustomData>() before using the catalog.
Fields§
§instrument_id: InstrumentId§value: f64§flag: bool§ts_event: UnixNanos§ts_init: UnixNanosImplementations§
Trait Implementations§
Source§impl CatalogPathPrefix for RustTestCustomData
impl CatalogPathPrefix for RustTestCustomData
Source§fn path_prefix() -> &'static str
fn path_prefix() -> &'static str
Returns the path prefix (directory name) for this data type.
Source§impl Clone for RustTestCustomData
impl Clone for RustTestCustomData
Source§fn clone(&self) -> RustTestCustomData
fn clone(&self) -> RustTestCustomData
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 moreSource§impl CustomDataSerialize for RustTestCustomData
impl CustomDataSerialize for RustTestCustomData
Source§fn schema(&self) -> Result<Schema>
fn schema(&self) -> Result<Schema>
Returns the Arrow schema for this custom data type. Read more
Source§fn encode_record_batch(
&self,
items: &[Arc<dyn CustomDataTrait>],
) -> Result<RecordBatch>
fn encode_record_batch( &self, items: &[Arc<dyn CustomDataTrait>], ) -> Result<RecordBatch>
Encodes a batch of custom data items to an Arrow RecordBatch. Read more
Source§impl CustomDataTrait for RustTestCustomData
impl CustomDataTrait for RustTestCustomData
Source§fn type_name_static() -> &'static str
fn type_name_static() -> &'static str
Returns the type name used in serialized form (e.g. in the
"type" field).Source§fn clone_arc(&self) -> Arc<dyn CustomDataTrait>
fn clone_arc(&self) -> Arc<dyn CustomDataTrait>
Returns a cloned Arc of the custom data.
Source§fn eq_arc(&self, other: &dyn CustomDataTrait) -> bool
fn eq_arc(&self, other: &dyn CustomDataTrait) -> bool
Returns whether the custom data is equal to another.
Source§fn from_json(value: Value) -> Result<Arc<dyn CustomDataTrait>>
fn from_json(value: Value) -> Result<Arc<dyn CustomDataTrait>>
Deserializes from a JSON value into an Arc’d trait object. Read more
Source§impl Debug for RustTestCustomData
impl Debug for RustTestCustomData
Source§impl DecodeDataFromRecordBatch for RustTestCustomData
impl DecodeDataFromRecordBatch for RustTestCustomData
Source§fn decode_data_batch(
_metadata: &HashMap<String, String>,
record_batch: RecordBatch,
) -> Result<Vec<Data>, EncodingError>
fn decode_data_batch( _metadata: &HashMap<String, String>, record_batch: RecordBatch, ) -> Result<Vec<Data>, EncodingError>
Source§impl<'de> Deserialize<'de> for RustTestCustomData
impl<'de> Deserialize<'de> for RustTestCustomData
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl Display for RustTestCustomData
impl Display for RustTestCustomData
Source§impl EncodeToRecordBatch for RustTestCustomData
impl EncodeToRecordBatch for RustTestCustomData
Source§fn encode_batch(
metadata: &HashMap<String, String>,
data: &[Self],
) -> Result<RecordBatch, ArrowError>
fn encode_batch( metadata: &HashMap<String, String>, data: &[Self], ) -> Result<RecordBatch, ArrowError>
Encodes a batch of values into an Arrow
RecordBatch using the provided metadata. Read moreSource§impl From<RustTestCustomData> for Data
impl From<RustTestCustomData> for Data
Source§fn from(value: RustTestCustomData) -> Self
fn from(value: RustTestCustomData) -> Self
Converts to this type from the input type.
Source§impl<'a, 'py> FromPyObject<'a, 'py> for RustTestCustomDatawhere
Self: Clone,
impl<'a, 'py> FromPyObject<'a, 'py> for RustTestCustomDatawhere
Self: Clone,
Source§impl HasTsInit for RustTestCustomData
impl HasTsInit for RustTestCustomData
Source§impl<'py> IntoPyObject<'py> for RustTestCustomData
impl<'py> IntoPyObject<'py> for RustTestCustomData
Source§type Target = RustTestCustomData
type Target = RustTestCustomData
The Python output type
Source§type Output = Bound<'py, <RustTestCustomData as IntoPyObject<'py>>::Target>
type Output = Bound<'py, <RustTestCustomData as IntoPyObject<'py>>::Target>
The smart pointer type to use. Read more
Source§fn into_pyobject(
self,
py: Python<'py>,
) -> Result<<Self as IntoPyObject<'_>>::Output, <Self as IntoPyObject<'_>>::Error>
fn into_pyobject( self, py: Python<'py>, ) -> Result<<Self as IntoPyObject<'_>>::Output, <Self as IntoPyObject<'_>>::Error>
Performs the conversion.
Source§impl PartialEq for RustTestCustomData
impl PartialEq for RustTestCustomData
Source§impl PyClass for RustTestCustomData
impl PyClass for RustTestCustomData
Source§impl PyClassImpl for RustTestCustomData
impl PyClassImpl for RustTestCustomData
Source§const MODULE: Option<&str> = ::core::option::Option::None
const MODULE: Option<&str> = ::core::option::Option::None
Module which the class will be associated with. Read more
Source§const IS_BASETYPE: bool = false
const IS_BASETYPE: bool = false
#[pyclass(subclass)]
Source§const IS_SUBCLASS: bool = false
const IS_SUBCLASS: bool = false
#[pyclass(extends=…)]
Source§const IS_MAPPING: bool = false
const IS_MAPPING: bool = false
#[pyclass(mapping)]
Source§const IS_SEQUENCE: bool = false
const IS_SEQUENCE: bool = false
#[pyclass(sequence)]
Source§const IS_IMMUTABLE_TYPE: bool = false
const IS_IMMUTABLE_TYPE: bool = false
#[pyclass(immutable_type)]
Source§const RAW_DOC: &'static CStr = /// A simple Rust custom data type for roundtrip testing.
///
/// Used in persistence integration tests (`test_catalog.rs`) and Python roundtrip tests.
/// Tests call `ensure_custom_data_registered::<RustTestCustomData>()` before using the catalog.
const RAW_DOC: &'static CStr = /// A simple Rust custom data type for roundtrip testing. /// /// Used in persistence integration tests (`test_catalog.rs`) and Python roundtrip tests. /// Tests call `ensure_custom_data_registered::<RustTestCustomData>()` before using the catalog.
Docstring for the class provided on the struct or enum. Read more
Source§const DOC: &'static CStr
const DOC: &'static CStr
Fully rendered class doc, including the
text_signature if a constructor is defined. Read moreSource§type Layout = <<RustTestCustomData as PyClassImpl>::BaseNativeType as PyClassBaseType>::Layout<RustTestCustomData>
type Layout = <<RustTestCustomData as PyClassImpl>::BaseNativeType as PyClassBaseType>::Layout<RustTestCustomData>
Description of how this class is laid out in memory
Source§type ThreadChecker = NoopThreadChecker
type ThreadChecker = NoopThreadChecker
This handles following two situations: Read more
type Inventory = Pyo3MethodsInventoryForRustTestCustomData
Source§type PyClassMutability = <<PyAny as PyClassBaseType>::PyClassMutability as PyClassMutability>::MutableChild
type PyClassMutability = <<PyAny as PyClassBaseType>::PyClassMutability as PyClassMutability>::MutableChild
Immutable or mutable
Source§type BaseNativeType = PyAny
type BaseNativeType = PyAny
The closest native ancestor. This is
PyAny by default, and when you declare
#[pyclass(extends=PyDict)], it’s PyDict.fn items_iter() -> PyClassItemsIter
fn lazy_type_object() -> &'static LazyTypeObject<Self>
Source§fn dict_offset() -> Option<PyObjectOffset>
fn dict_offset() -> Option<PyObjectOffset>
Used to provide the dictoffset slot
(equivalent to tp_dictoffset)
Source§fn weaklist_offset() -> Option<PyObjectOffset>
fn weaklist_offset() -> Option<PyObjectOffset>
Used to provide the weaklistoffset slot
(equivalent to tp_weaklistoffset
Source§impl PyClassNewTextSignature for RustTestCustomData
impl PyClassNewTextSignature for RustTestCustomData
const TEXT_SIGNATURE: &'static str = "(instrument_id, value, flag, ts_event, ts_init)"
Source§impl PyTypeInfo for RustTestCustomData
impl PyTypeInfo for RustTestCustomData
Source§const NAME: &str = <Self as ::pyo3::PyClass>::NAME
const NAME: &str = <Self as ::pyo3::PyClass>::NAME
👎Deprecated since 0.28.0:
prefer using ::type_object(py).name() to get the correct runtime value
Class name.
Source§const MODULE: Option<&str> = <Self as ::pyo3::impl_::pyclass::PyClassImpl>::MODULE
const MODULE: Option<&str> = <Self as ::pyo3::impl_::pyclass::PyClassImpl>::MODULE
👎Deprecated since 0.28.0:
prefer using ::type_object(py).module() to get the correct runtime value
Module name, if any.
Source§fn type_object_raw(py: Python<'_>) -> *mut PyTypeObject
fn type_object_raw(py: Python<'_>) -> *mut PyTypeObject
Returns the PyTypeObject instance for this type.
Source§fn type_object(py: Python<'_>) -> Bound<'_, PyType>
fn type_object(py: Python<'_>) -> Bound<'_, PyType>
Returns the safe abstraction over the type object.
Source§impl Serialize for RustTestCustomData
impl Serialize for RustTestCustomData
Source§impl TryFrom<Data> for RustTestCustomData
impl TryFrom<Data> for RustTestCustomData
impl DerefToPyAny for RustTestCustomData
impl StructuralPartialEq for RustTestCustomData
Auto Trait Implementations§
impl Freeze for RustTestCustomData
impl RefUnwindSafe for RustTestCustomData
impl Send for RustTestCustomData
impl Sync for RustTestCustomData
impl Unpin for RustTestCustomData
impl UnsafeUnpin for RustTestCustomData
impl UnwindSafe for RustTestCustomData
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<'py, T> IntoPyObjectExt<'py> for Twhere
T: IntoPyObject<'py>,
impl<'py, T> IntoPyObjectExt<'py> for Twhere
T: IntoPyObject<'py>,
Source§fn into_bound_py_any(self, py: Python<'py>) -> Result<Bound<'py, PyAny>, PyErr>
fn into_bound_py_any(self, py: Python<'py>) -> Result<Bound<'py, PyAny>, PyErr>
Converts
self into an owned Python object, dropping type information.Source§impl<'py, T> IntoPyObjectNautilusExt<'py> for Twhere
T: IntoPyObjectExt<'py>,
impl<'py, T> IntoPyObjectNautilusExt<'py> for Twhere
T: IntoPyObjectExt<'py>,
Source§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
Source§impl<T> PyErrArguments for T
impl<T> PyErrArguments for T
Source§impl<T> PyTypeCheck for Twhere
T: PyTypeInfo,
impl<T> PyTypeCheck for Twhere
T: PyTypeInfo,
Source§const NAME: &'static str = T::NAME
const NAME: &'static str = T::NAME
👎Deprecated since 0.27.0:
Use ::classinfo_object() instead and format the type name at runtime. Note that using built-in cast features is often better than manual PyTypeCheck usage.
Name of self. This is used in error messages, for example.
Source§impl<T> ToStringFallible for Twhere
T: Display,
impl<T> ToStringFallible for Twhere
T: Display,
Source§fn try_to_string(&self) -> Result<String, TryReserveError>
fn try_to_string(&self) -> Result<String, TryReserveError>
ToString::to_string, but without panic on OOM.