@ocots @jbcaillau Before that I forgot, you are using quite often a `foo::Union{Nothing, ...}` inside your structures for the type of the attributes. The compiler doesn't like that and it leads to additional allocations because it needs to check at runtime that it's a Nothing or not.
You can change that for foo::T and at the top of your structure T <: Union{Nothing, ...}.
You can change that for
foo::T
and at the top of your structureT <: Union{Nothing, ...}
.Originally posted by @amontoison in https://github.com/control-toolbox/CTBase.jl/issues/271#issuecomment-2332691712