diff --git a/derive_macro/src/lib.rs b/derive_macro/src/lib.rs index 681e43f..a91c9cc 100644 --- a/derive_macro/src/lib.rs +++ b/derive_macro/src/lib.rs @@ -25,9 +25,11 @@ fn derive_struct(name: Ident, data: &DataStruct) -> Result(&self, writer: &mut T) -> e::Result<()> {{")?; wsf(&mut output, " ", Some("self"), &data.fields)?; writeln!(&mut output, " }}")?; + writeln!(&mut output, " #[inline(always)]")?; writeln!(&mut output, " fn deserialize(reader: &mut T) -> e::Result {{")?; wdf(&mut output, " ", tname.as_str(), &data.fields)?; writeln!(&mut output, " }}")?; @@ -47,6 +49,7 @@ fn derive_enum(name: Ident, data: &DataEnum) -> Result(&self, writer: &mut T) -> e::Result<()> {{")?; writeln!(&mut output, " match self {{")?; @@ -91,6 +94,7 @@ fn derive_enum(name: Ident, data: &DataEnum) -> Result(reader: &mut T) -> e::Result {{")?; writeln!(&mut output, " match ::deserialize(reader)? {{")?;