feat: add basic support for non-static lifetimes

This commit is contained in:
2024-10-14 22:20:03 +02:00
parent 5d0f313523
commit c5d874a3ad
4 changed files with 61 additions and 1 deletions

View File

@ -1,6 +1,7 @@
use serde::Deserialize;
use serde_inline_default::serde_inline_default;
use serde_json::json;
use std::borrow::Cow;
#[test]
fn test_serde_inline_default() {
@ -28,3 +29,17 @@ fn test_serde_inline_default() {
assert_eq!(test.inline_negative, -1337);
assert_eq!(test.string, "string".to_string());
}
#[test]
fn test_lifetime() {
#[serde_inline_default]
#[derive(Deserialize)]
struct LifetimeTest<'a> {
#[serde_inline_default("test".into())]
test_str: Cow<'a, str>,
}
let lifetime_test: LifetimeTest = serde_json::from_value(json!({})).unwrap();
assert_eq!(lifetime_test.test_str, "test");
}