diff options
Diffstat (limited to 'macros/src/node.rs')
| -rw-r--r-- | macros/src/node.rs | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/macros/src/node.rs b/macros/src/node.rs index 1e03c441..5f9573f9 100644 --- a/macros/src/node.rs +++ b/macros/src/node.rs @@ -333,13 +333,18 @@ fn create_node_set_func(node: &Node) -> syn::ImplItemMethod { fn create_node_properties_func(node: &Node) -> syn::ImplItemMethod { let infos = node.properties.iter().filter(|p| !p.skip).map(|property| { let name = property.name.to_string().replace('_', "-").to_lowercase(); - let docs = documentation(&property.attrs); let value_ty = &property.value_ty; let shorthand = matches!(property.shorthand, Some(Shorthand::Positional)); + + let mut docs = documentation(&property.attrs); + let example = quote_option(super::func::example(&mut docs)); + let docs = docs.trim(); + quote! { ::typst::model::ParamInfo { name: #name, docs: #docs, + example: #example, cast: <#value_ty as ::typst::model::Cast< ::typst::syntax::Spanned<::typst::model::Value> >>::describe(), |
