Open aejenk opened 5 years ago
Currently, the options.toml
file is being overhauled. Support for constants [5]
and avoiding weird errors (panic when [100,100]
), including support for local overrides. The problem here is that a significant amount of options are now Option
al, and the derive
macro does not currently support nested OVals, for example Option<Vec<isize>>
.
This will require time, meaning this overhaul will take time to be added.
A benefit is that this may simplify the configure
function.
The update to the macro has been completed and seems to work perfectly fine. The configure
function hasn't been simplified much, however since data validation has now moved into the bender.rs
file instead, the functions have been generalised further.
An approach to replace with a macro should be attempted.
A possible improvement could be to separate the Configuration
from the Bender
. This would simplify the bender greatly, while also reducing the cost of reconfiguring the bender each time, opting instead to pass a Configuration
struct.
Currently the crate works well - however its structure can leave a lot to be desired. The following are some problems:
configure
function to build their options up. Most of their contents is repeated, however there is no obvious way to group up the code - either as a macro, or into a seperate function.[100,101]
.options.toml
that would override the global settings.