use bytes::Bytes;
use nautilus_core::UnixNanos;
use nautilus_model::data::DataType;
use serde::{Deserialize, Serialize};
#[repr(C)]
#[derive(Clone, Debug, PartialEq, Eq, Serialize, Deserialize)]
#[cfg_attr(
feature = "python",
pyo3::pyclass(module = "nautilus_trader.core.nautilus_pyo3.common", from_py_object)
)]
#[cfg_attr(
feature = "python",
pyo3_stub_gen::derive::gen_stub_pyclass(module = "nautilus_trader.common")
)]
pub struct CustomData {
pub data_type: DataType,
pub value: Bytes,
pub ts_event: UnixNanos,
pub ts_init: UnixNanos,
}
impl CustomData {
pub const fn new(
data_type: DataType,
value: Bytes,
ts_event: UnixNanos,
ts_init: UnixNanos,
) -> Self {
Self {
data_type,
value,
ts_event,
ts_init,
}
}
}