diff --git a/crates/oapi-macros/src/shared.rs b/crates/oapi-macros/src/shared.rs index b88801098..b09c4e0ba 100644 --- a/crates/oapi-macros/src/shared.rs +++ b/crates/oapi-macros/src/shared.rs @@ -351,11 +351,10 @@ impl AnyValue { pub(crate) fn parse_any(input: ParseStream) -> syn::Result { if input.peek(Lit) { - let lit = input - .parse::() - .expect("parse_any: parse `Lit` failed") - .to_token_stream(); - Ok(AnyValue::Json(lit)) + let punct = input.parse::>()?; + let lit = input.parse::().unwrap(); + + Ok(AnyValue::Json(quote! { #punct #lit})) } else { let fork = input.fork(); let is_json = if fork.peek(syn::Ident) && fork.peek2(Token![!]) {