// Type alias for TensorElementType (External lib proxy)
// https://serde.rs/remote-derive.html
#[derive(Debug, Serialize, Deserialize)]
#[serde(remote = "TensorElementType", rename_all = "lowercase")]
pub enum JsTensorType {
/// 32-bit floating point number, equivalent to Rust's `f32`.
Float32,
/// Unsigned 8-bit integer, equivalent to Rust's `u8`.
Uint8,
/// String, equivalent to Rust's `String`.
String,
...
}
#[derive(Serialize, Deserialize)]
struct JsTensorTypeSerdeHelper(#[serde(with = "JsTensorType")] TensorElementType);
#[derive(Debug, Serialize, Deserialize)]
pub struct JsTensor {
#[serde(rename = "type", with = "JsTensorType")]
data_type: TensorElementType,
data: JsBuffer,
dims: Vec<i64>,
}
// Type alias for TensorElementType (External lib proxy)
// https://serde.rs/remote-derive.html
#[derive(Debug, Serialize, Deserialize)]
#[serde(remote = "TensorElementType", rename_all = "lowercase")]
pub enum JsTensorType {
/// 32-bit floating point number, equivalent to Rust's `f32`.
Float32,
/// Unsigned 8-bit integer, equivalent to Rust's `u8`.
Uint8,
/// String, equivalent to Rust's `String`.
String,
...
}
#[derive(Serialize, Deserialize)]
struct JsTensorTypeSerdeHelper(#[serde(with = "JsTensorType")] TensorElementType);
#[derive(Debug, Serialize, Deserialize)]
pub struct JsTensor {
#[serde(rename = "type", with = "JsTensorType")]
data_type: TensorElementType,
data: JsBuffer,
dims: Vec<i64>,
}