It seems strange to me that these fields are Vector{Int} when the objective types (OnceDifferentiable etc.) are already mutable. Is there any use case where a vector is needed to hold multiple values? Would having these fields as Int be sufficient?
Also, the way to set/retrieve these counters are not explicitly made into the interface. But, there could be some functions defined just for that so that external packages do not have to hardcode the field names.
It seems strange to me that these fields are
Vector{Int}
when the objective types (OnceDifferentiable
etc.) are already mutable. Is there any use case where a vector is needed to hold multiple values? Would having these fields asInt
be sufficient?Also, the way to set/retrieve these counters are not explicitly made into the interface. But, there could be some functions defined just for that so that external packages do not have to hardcode the field names.