This is an updated attempt at improving the ergonomics around working with FuriStatus. Rather than trying to use sys::furi::Status as a pseudo-Error/Result type, use a dedicated Error enum.
In a future PR I'm going to change how the bindings for enum FuriStatus to a newtype rather than integer constant. This will remove the need for a seperate sys::furi::Status type and the associated hoops required to turn that into a Result type. Being an alias for i32 limits what traits or functions can be implemented on the type.
This is an updated attempt at improving the ergonomics around working with
FuriStatus
. Rather than trying to usesys::furi::Status
as a pseudo-Error
/Result
type, use a dedicatedError
enum.In a future PR I'm going to change how the bindings for
enum FuriStatus
to a newtype rather than integer constant. This will remove the need for a seperatesys::furi::Status
type and the associated hoops required to turn that into aResult
type. Being an alias fori32
limits what traits or functions can be implemented on the type.