Skip to content

Commit 7c84ae2

Browse files
authored
RUST-511 Require DeserializeOwned in from_bson (#206)
1 parent c240586 commit 7c84ae2

File tree

2 files changed

+6
-6
lines changed

2 files changed

+6
-6
lines changed

src/de/mod.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ use crate::{
4444
};
4545

4646
use ::serde::{
47-
de::{Error as _, Unexpected},
47+
de::{DeserializeOwned, Error as _, Unexpected},
4848
Deserialize,
4949
};
5050

@@ -348,9 +348,9 @@ pub(crate) fn deserialize_bson_kvp<R: Read + ?Sized>(
348348
}
349349

350350
/// Decode a BSON `Value` into a `T` Deserializable.
351-
pub fn from_bson<'de, T>(bson: Bson) -> Result<T>
351+
pub fn from_bson<T>(bson: Bson) -> Result<T>
352352
where
353-
T: Deserialize<'de>,
353+
T: DeserializeOwned,
354354
{
355355
let de = Deserializer::new(bson);
356356
Deserialize::deserialize(de)

src/tests/spec/mod.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,13 +8,13 @@ use std::{
88
};
99

1010
use crate::{from_bson, Bson};
11-
use serde::Deserialize;
11+
use serde::de::DeserializeOwned;
1212
use serde_json::Value;
1313

14-
pub(crate) fn run_spec_test<'a, T, F>(spec: &[&str], run_test_file: F)
14+
pub(crate) fn run_spec_test<T, F>(spec: &[&str], run_test_file: F)
1515
where
1616
F: Fn(T),
17-
T: Deserialize<'a>,
17+
T: DeserializeOwned,
1818
{
1919
let base_path: PathBuf = [env!("CARGO_MANIFEST_DIR"), "src", "tests", "spec", "json"]
2020
.iter()

0 commit comments

Comments
 (0)