diff options
Diffstat (limited to 'third_party/rust/darling/tests/generics.rs')
-rw-r--r-- | third_party/rust/darling/tests/generics.rs | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/third_party/rust/darling/tests/generics.rs b/third_party/rust/darling/tests/generics.rs new file mode 100644 index 0000000000..a83d03e284 --- /dev/null +++ b/third_party/rust/darling/tests/generics.rs @@ -0,0 +1,27 @@ +#[macro_use] +extern crate darling; +#[macro_use] +extern crate syn; +#[macro_use] +extern crate quote; + +use darling::FromDeriveInput; + +#[derive(Debug, Clone, FromMeta)] +struct Wrapper<T>(pub T); + +#[derive(Debug, FromDeriveInput)] +#[darling(attributes(hello))] +struct Foo<T> { + lorem: Wrapper<T>, +} + +#[test] +fn expansion() { + let di = parse_quote! { + #[hello(lorem = "Hello")] + pub struct Foo; + }; + + Foo::<String>::from_derive_input(&di).unwrap(); +} |