[−][src]Macro abi_stable::rtry
Equivalent to ?
for RResult<_,_>
.
Example
Defining an extern function that returns a result.
use abi_stable::{ std_types::{RResult,ROk,RErr,RBoxError,RStr,Tuple3}, traits::IntoReprC, rtry, sabi_extern_fn, }; #[sabi_extern_fn] fn parse_tuple(s:RStr<'_>)->RResult<Tuple3<u32,u32,u32>,RBoxError>{ let mut iter=s.split(',').map(|x|x.trim()); ROk(Tuple3( rtry!( iter.next().unwrap_or("").parse().map_err(RBoxError::new).into_c() ), rtry!( iter.next().unwrap_or("").parse().map_err(RBoxError::new).into_c() ), rtry!( iter.next().unwrap_or("").parse().map_err(RBoxError::new).into_c() ), )) }