GobySoft / dccl

Dynamic Compact Control Language
Other
17 stars 13 forks source link

Message Codec does not recursively check for header parts #20

Open tsaubergine opened 6 years ago

tsaubergine commented 6 years ago

Given this message, Bar:foo::header never gets encoded or decoded by DCCL (since foo in_head = false).

We need to recursively check for child messages with in_head= true.

message Header
{
     required int32 field = 1;
}
message Foo
{
    required Header header = 1 [(dccl.field).in_head = true];    
}

message Bar
{
    option (dccl.msg) = { id: 0x2C05 max_bytes: 32 codec_version: 3 unit_system: "si" };
    required Foo foo = 1;
}