CAD97 / CAD97/fmod-rs

Nit: `System::set_3d_rolloff_callback` is wrapped differently than all other callback APIs

Open
#16 0 comments 0 reactions 0 assignees View on GitHub
fmod-core friction
Dominant language
Rust
Stars
13
Forks
3
PR merge metrics
No merged PRs in 30d

Description

Most callback APIs define a `trait ThisThingCallback` and take that as a turbofish, but `Rolloff3dCallback` is instead a type alias to `extern "system" fn` and passed as an optional function parameter.

Either `set_3d_rolloff_callback` should adapt to the style used everywhere else, or everywhere else should specify the callback as a function argument. Switching from `enum CallbackImpl {}` to `struct CallbackImpl;` makes this reasonable, but I still have a slight preference for the version which is clearly just type-level, since the callback functionality needs to be sent to FMOD as static function pointers (i.e. no `&self`).

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.