pubfn conversion_strategy(&self) -> ConversionStrategy { iflet Some(conversion_strategy) = self.conversion_strategy { // Conversion strategy already set return conversion_strategy;
} let code = iflet Some(code) = &self.code {
code
} else { // #[default] - so no conversion (`Default::default()` already has the correct type) return ConversionStrategy::NoConversion;
}; match syn::parse::<syn::Lit>(code.clone().into()) {
Ok(syn::Lit::Str(_)) | Ok(syn::Lit::ByteStr(_)) => { // A string literal - so we need a conversion in case we need to make it a `String` return ConversionStrategy::Into;
}
_ => {}
} // Not handled by one of the rules, so we don't convert it to avoid causing trouble
ConversionStrategy::NoConversion
}
}
struct ParseCodeHack(TokenStream);
impl syn::parse::Parse for ParseCodeHack { fn parse(input: syn::parse::ParseStream) -> syn::Result<Self> { let ident: syn::Ident = input.parse()?; if ident != "_code" { return Err(Error::new(ident.span(), "Expected `_code`"));
}
input.parse::<syn::token::Eq>()?; let code: syn::LitStr = input.parse()?; let code: TokenStream = code.parse()?;
Ok(ParseCodeHack(code))
}
}
Messung V0.5 in Prozent
¤ Dauer der Verarbeitung: 0.10 Sekunden
(vorverarbeitet am 2026-07-04)
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.