pub struct Ftl {
// ...
m_assets: Arc<RwLock<HashMap<Locale, Arc<fluent::FluentBundle<fluent::FluentResource>>>>>,
// ...
}
impl Ftl {
fn get_message_by_locale(&self, id: &str, locale: Locale) -> Option<FluentMessage> {
if let Some(assets) = self.m_assets.read().unwrap().get(&locale) {
if let Some(message) = assets.get_message(id) {
return Some(message);
}
}
// ...
}
}
The line return Some(message);
is giving:
cannot return value referencing temporary value
returns a value referencing data owned by the current function rustc Click for full compiler diagnosticftl.rs(281, 31): temporary value created here
cannot return value referencing temporary value
returns a value referencing data owned by the current function rustc Click for full compiler diagnosticftl.rs(281, 31): temporary value created here