{% if input_optional %}let {{ output_name }}: Option<{{ core_type }}> = {{ name }}
.map(|s| serde_json::from_str::<{{ core_type }}>(&s))
.transpose()
.map_err(|error| format!("failed to deserialize parameter `{{ name }}` for `{{ operation }}`: {error}"))?;
{% else %}let {{ output_name }}: {{ core_type }} = serde_json::from_str::<{{ core_type }}>(&{{ name }})
.map_err(|error| format!("failed to deserialize parameter `{{ name }}` for `{{ operation }}`: {error}"))?;
{% endif %}