Add tests of concrete def of generic remote type
This commit is contained in:
parent
4873b48b02
commit
9a53bd9125
@ -74,6 +74,14 @@ mod remote {
|
|||||||
&self.b
|
&self.b
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
pub struct StructGeneric<T> {
|
||||||
|
pub value: T,
|
||||||
|
}
|
||||||
|
|
||||||
|
pub enum EnumGeneric<T> {
|
||||||
|
Variant(T),
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Serialize, Deserialize)]
|
#[derive(Serialize, Deserialize)]
|
||||||
@ -104,6 +112,12 @@ struct Test {
|
|||||||
|
|
||||||
#[serde(with = "StructPubDef")]
|
#[serde(with = "StructPubDef")]
|
||||||
struct_pub: remote::StructPub,
|
struct_pub: remote::StructPub,
|
||||||
|
|
||||||
|
#[serde(with = "StructConcrete")]
|
||||||
|
struct_concrete: remote::StructGeneric<u8>,
|
||||||
|
|
||||||
|
#[serde(with = "EnumConcrete")]
|
||||||
|
enum_concrete: remote::EnumGeneric<u8>,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Serialize, Deserialize)]
|
#[derive(Serialize, Deserialize)]
|
||||||
@ -157,6 +171,18 @@ struct StructPubDef {
|
|||||||
b: remote::Unit,
|
b: remote::Unit,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[derive(Serialize, Deserialize)]
|
||||||
|
#[serde(remote = "remote::StructGeneric::<u8>")]
|
||||||
|
struct StructConcrete {
|
||||||
|
value: u8,
|
||||||
|
}
|
||||||
|
|
||||||
|
#[derive(Serialize, Deserialize)]
|
||||||
|
#[serde(remote = "remote::EnumGeneric::<u8>")]
|
||||||
|
enum EnumConcrete {
|
||||||
|
Variant(u8),
|
||||||
|
}
|
||||||
|
|
||||||
impl From<PrimitivePrivDef> for remote::PrimitivePriv {
|
impl From<PrimitivePrivDef> for remote::PrimitivePriv {
|
||||||
fn from(def: PrimitivePrivDef) -> Self {
|
fn from(def: PrimitivePrivDef) -> Self {
|
||||||
remote::PrimitivePriv::new(def.0)
|
remote::PrimitivePriv::new(def.0)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user