@@ -1632,27 +1632,51 @@ pub fn from_slice<T: BorshDeserialize>(v: &[u8]) -> Result<T> {
1632
1632
1633
1633
/// Deserializes an object from a reader.
1634
1634
/// # Example
1635
- /// ```
1636
- /// use borsh::{BorshDeserialize, BorshSerialize, from_reader, to_vec};
1637
- ///
1638
- /// /// derive is only available if borsh is built with `features = ["derive"]`
1639
- /// # #[cfg(feature = "derive")]
1640
- /// #[derive(BorshSerialize, BorshDeserialize, PartialEq, Debug)]
1641
- /// struct MyStruct {
1642
- /// a: u64,
1643
- /// b: Vec<u8>,
1644
- /// }
1645
- ///
1646
- /// # #[cfg(feature = "derive")]
1647
- /// let original = MyStruct { a: 10, b: vec![1, 2, 3] };
1648
- /// # #[cfg(feature = "derive")]
1649
- /// let encoded = to_vec(&original).unwrap();
1650
- /// # #[cfg(feature = "derive")]
1651
- /// let decoded = from_reader::<_, MyStruct>(&mut encoded.as_slice()).unwrap();
1652
- /// # #[cfg(feature = "derive")]
1653
- /// assert_eq!(original, decoded);
1654
- /// ```
1655
1635
#[ async_generic(
1636
+ /// ```
1637
+ /// use borsh::{BorshDeserialize, BorshSerialize, from_reader, to_vec};
1638
+ ///
1639
+ /// /// derive is only available if borsh is built with `features = ["derive"]`
1640
+ /// # #[cfg(feature = "derive")]
1641
+ /// #[derive(BorshSerialize, BorshDeserialize, PartialEq, Debug)]
1642
+ /// struct MyStruct {
1643
+ /// a: u64,
1644
+ /// b: Vec<u8>,
1645
+ /// }
1646
+ ///
1647
+ /// # #[cfg(feature = "derive")]
1648
+ /// let original = MyStruct { a: 10, b: vec![1, 2, 3] };
1649
+ /// # #[cfg(feature = "derive")]
1650
+ /// let encoded = to_vec(&original).unwrap();
1651
+ /// # #[cfg(feature = "derive")]
1652
+ /// let decoded = from_reader::<_, MyStruct>(&mut encoded.as_slice()).unwrap();
1653
+ /// # #[cfg(feature = "derive")]
1654
+ /// assert_eq!(original, decoded);
1655
+ /// ```
1656
+ sync_signature;
1657
+
1658
+ /// ```
1659
+ /// use borsh::{BorshDeserializeAsync, BorshSerialize, from_reader_async, to_vec};
1660
+ ///
1661
+ /// /// derive is only available if borsh is built with `features = ["derive"]`
1662
+ /// # #[cfg(feature = "derive")]
1663
+ /// #[derive(BorshSerialize, BorshDeserializeAsync, PartialEq, Debug)]
1664
+ /// struct MyStruct {
1665
+ /// a: u64,
1666
+ /// b: Vec<u8>,
1667
+ /// }
1668
+ ///
1669
+ /// # tokio_test::block_on(async {
1670
+ /// # #[cfg(feature = "derive")]
1671
+ /// let original = MyStruct { a: 10, b: vec![1, 2, 3] };
1672
+ /// # #[cfg(feature = "derive")]
1673
+ /// let encoded = to_vec(&original).unwrap();
1674
+ /// # #[cfg(feature = "derive")]
1675
+ /// let decoded = from_reader_async::<_, MyStruct>(&mut encoded.as_slice()).await.unwrap();
1676
+ /// # #[cfg(feature = "derive")]
1677
+ /// assert_eq!(original, decoded);
1678
+ /// # });
1679
+ /// ```
1656
1680
#[ cfg( feature = "unstable__async" ) ]
1657
1681
async_signature[ impl_fut] <R : AsyncRead , T : BorshDeserializeAsync >(
1658
1682
reader: & mut R ,
0 commit comments