Skip to content

Commit fad3659

Browse files
committed
High-level API: Let get_preference_ref return ReaperResult
1 parent 4e4458a commit fad3659

File tree

1 file changed

+3
-5
lines changed

1 file changed

+3
-5
lines changed

main/high/src/reaper_simple.rs

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -467,15 +467,13 @@ impl Reaper {
467467
pub fn get_preference_ref<'a, T>(
468468
&self,
469469
name: impl Into<ReaperStringArg<'a>>,
470-
) -> Result<&mut T, &'static str> {
470+
) -> ReaperResult<&mut T> {
471471
let config_var_result = Reaper::get()
472472
.medium_reaper
473473
.get_config_var(name)
474-
.ok_or("preference doesn't exist")?;
474+
.context("preference doesn't exist")?;
475475
let size_matches = config_var_result.size as usize == mem::size_of::<T>();
476-
if !size_matches {
477-
return Err("size mismatch");
478-
}
476+
ensure!(size_matches, "size mismatch");
479477
let mut casted_value_ptr = config_var_result.value.cast::<T>();
480478
let casted_value_ref = unsafe { casted_value_ptr.as_mut() };
481479
Ok(casted_value_ref)

0 commit comments

Comments
 (0)