55 "github.com/MartinSimango/dstruct/generator/config"
66)
77
8- // TODO: rename to NumberFunctionHolderFunc?
98type NumberFunctionHolderFunc func (config.NumberRangeConfig ) generator.GenerationFunction
109
1110type NumberFunctionHolder struct {
@@ -18,27 +17,23 @@ func NewNumberFunctionHolder(
1817 f NumberFunctionHolderFunc ,
1918 cfg config.NumberRangeConfig ,
2019) * NumberFunctionHolder {
21- return & NumberFunctionHolder {
20+ nfh := & NumberFunctionHolder {
2221 BaseFunctionHolder : BaseFunctionHolder {
23- config : config .NewDstructConfigBuilder ().WithNumberConfig (cfg ).Build (),
24- fun : f ,
22+ config : config .NewDstructConfigBuilder ().WithNumberConfig (cfg ).Build (),
23+ fun : f ,
24+ resetFunction : func (cfg config.Config ) generator.GenerationFunction {
25+ return f (cfg .Number ())
26+ },
2527 generationFunction : f (cfg ),
2628 },
2729 }
28- }
29-
30- // Override
31- func (c * NumberFunctionHolder ) GetFunction () generator.GenerationFunction {
32- if c .generationFunction != nil {
33- return c .generationFunction
34- }
35- c .generationFunction = c .fun .(NumberFunctionHolderFunc )(c .config .Number ())
3630
37- return c . generationFunction
31+ return nfh
3832}
3933
4034func (c * NumberFunctionHolder ) Copy () FunctionHolder {
41- return & NumberFunctionHolder {
35+ nf := & NumberFunctionHolder {
4236 BaseFunctionHolder : c .BaseFunctionHolder .Copy (),
4337 }
38+ return nf
4439}
0 commit comments