Currently, when you construct a compiler generated message, deep construction takes place (i.e., if the message has repeating groups, these are also instantiated as are nested groups within groups). Allow a message to be instantiated with no repeating groups. This can be done with a default ctor bool flag.
This can allow construction of repeating groups within messages in a just in time basis. Could lead to significant encode/decode latency reduction.
GroupBase::create_group() should also have an optional flag to control nested group creation.
The message encoder/decoder can be modified to check if the repeating group objects have been instantiated, and if not to perform the creation.