to pass to Buf::with_topology and ResizableBuf::resize_topology. When writing these functions, it is easy to mix up the channels and frames arguments because both are usizes. I have to refer to the documentation to ensure that I'm calling them correctly. Currently, calls to these look like:
let buffer = Sequential::with_topology(2, 256);
There would be less room for confusion like this:
let buffer = Sequential::with_topology(Topology { channels: 2, frames: 256 });
or
let topology = Topology { channels: 2, frames: 256 };
let buffer = sequential::with_topology(topology);
An alternative solution could be adding newtypes for frames and/or channels.
I'm wondering if it could be helpful to add a struct like
to pass to Buf::with_topology and ResizableBuf::resize_topology. When writing these functions, it is easy to mix up the channels and frames arguments because both are usizes. I have to refer to the documentation to ensure that I'm calling them correctly. Currently, calls to these look like:
There would be less room for confusion like this:
or
An alternative solution could be adding newtypes for frames and/or channels.