Changed submessage union as oneof

This commit is contained in:
Snaipe 2015-12-11 17:15:35 +01:00
parent 74a72eec17
commit d9fa24276e
3 changed files with 33 additions and 36 deletions

View file

@ -1,5 +1,5 @@
/* Automatically generated nanopb constant definitions */
/* Generated by nanopb-0.3.5-dev at Fri Dec 11 16:22:10 2015. */
/* Generated by nanopb-0.3.5-dev at Fri Dec 11 17:13:49 2015. */
#include "criterion.pb.h"
@ -47,13 +47,13 @@ const pb_field_t criterion_protocol_assert_fields[5] = {
};
const pb_field_t criterion_protocol_submessage_fields[8] = {
PB_FIELD( 1, MESSAGE , OPTIONAL, STATIC , FIRST, criterion_protocol_submessage, birth, birth, &criterion_protocol_birth_fields),
PB_FIELD( 2, MESSAGE , OPTIONAL, STATIC , OTHER, criterion_protocol_submessage, pre_init, birth, &criterion_protocol_pre_init_fields),
PB_FIELD( 3, MESSAGE , OPTIONAL, STATIC , OTHER, criterion_protocol_submessage, pre_test, pre_init, &criterion_protocol_pre_test_fields),
PB_FIELD( 4, MESSAGE , OPTIONAL, STATIC , OTHER, criterion_protocol_submessage, post_test, pre_test, &criterion_protocol_post_test_fields),
PB_FIELD( 5, MESSAGE , OPTIONAL, STATIC , OTHER, criterion_protocol_submessage, post_fini, post_test, &criterion_protocol_post_fini_fields),
PB_FIELD( 6, MESSAGE , OPTIONAL, STATIC , OTHER, criterion_protocol_submessage, death, post_fini, &criterion_protocol_death_fields),
PB_FIELD( 7, MESSAGE , OPTIONAL, STATIC , OTHER, criterion_protocol_submessage, assert, death, &criterion_protocol_assert_fields),
PB_ONEOF_FIELD(value, 1, MESSAGE , ONEOF, STATIC , FIRST, criterion_protocol_submessage, birth, birth, &criterion_protocol_birth_fields),
PB_ONEOF_FIELD(value, 2, MESSAGE , ONEOF, STATIC , FIRST, criterion_protocol_submessage, pre_init, pre_init, &criterion_protocol_pre_init_fields),
PB_ONEOF_FIELD(value, 3, MESSAGE , ONEOF, STATIC , FIRST, criterion_protocol_submessage, pre_test, pre_test, &criterion_protocol_pre_test_fields),
PB_ONEOF_FIELD(value, 4, MESSAGE , ONEOF, STATIC , FIRST, criterion_protocol_submessage, post_test, post_test, &criterion_protocol_post_test_fields),
PB_ONEOF_FIELD(value, 5, MESSAGE , ONEOF, STATIC , FIRST, criterion_protocol_submessage, post_fini, post_fini, &criterion_protocol_post_fini_fields),
PB_ONEOF_FIELD(value, 6, MESSAGE , ONEOF, STATIC , FIRST, criterion_protocol_submessage, death, death, &criterion_protocol_death_fields),
PB_ONEOF_FIELD(value, 7, MESSAGE , ONEOF, STATIC , FIRST, criterion_protocol_submessage, assert, assert, &criterion_protocol_assert_fields),
PB_LAST_FIELD
};
@ -74,7 +74,7 @@ const pb_field_t criterion_protocol_msg_fields[4] = {
* numbers or field sizes that are larger than what can fit in 8 or 16 bit
* field descriptors.
*/
PB_STATIC_ASSERT((pb_membersize(criterion_protocol_submessage, birth) < 65536 && pb_membersize(criterion_protocol_submessage, pre_init) < 65536 && pb_membersize(criterion_protocol_submessage, pre_test) < 65536 && pb_membersize(criterion_protocol_submessage, post_test) < 65536 && pb_membersize(criterion_protocol_submessage, post_fini) < 65536 && pb_membersize(criterion_protocol_submessage, death) < 65536 && pb_membersize(criterion_protocol_submessage, assert) < 65536 && pb_membersize(criterion_protocol_submessage, birth) < 65536 && pb_membersize(criterion_protocol_submessage, pre_init) < 65536 && pb_membersize(criterion_protocol_submessage, pre_test) < 65536 && pb_membersize(criterion_protocol_submessage, post_test) < 65536 && pb_membersize(criterion_protocol_submessage, post_fini) < 65536 && pb_membersize(criterion_protocol_submessage, death) < 65536 && pb_membersize(criterion_protocol_submessage, assert) < 65536 && pb_membersize(criterion_protocol_msg, data) < 65536), YOU_MUST_DEFINE_PB_FIELD_32BIT_FOR_MESSAGES_criterion_protocol_birth_criterion_protocol_pre_init_criterion_protocol_pre_test_criterion_protocol_post_test_criterion_protocol_post_fini_criterion_protocol_death_criterion_protocol_assert_criterion_protocol_submessage_criterion_protocol_msg)
PB_STATIC_ASSERT((pb_membersize(criterion_protocol_submessage, value.birth) < 65536 && pb_membersize(criterion_protocol_submessage, value.pre_init) < 65536 && pb_membersize(criterion_protocol_submessage, value.pre_test) < 65536 && pb_membersize(criterion_protocol_submessage, value.post_test) < 65536 && pb_membersize(criterion_protocol_submessage, value.post_fini) < 65536 && pb_membersize(criterion_protocol_submessage, value.death) < 65536 && pb_membersize(criterion_protocol_submessage, value.assert) < 65536 && pb_membersize(criterion_protocol_submessage, value.birth) < 65536 && pb_membersize(criterion_protocol_submessage, value.pre_init) < 65536 && pb_membersize(criterion_protocol_submessage, value.pre_test) < 65536 && pb_membersize(criterion_protocol_submessage, value.post_test) < 65536 && pb_membersize(criterion_protocol_submessage, value.post_fini) < 65536 && pb_membersize(criterion_protocol_submessage, value.death) < 65536 && pb_membersize(criterion_protocol_submessage, value.assert) < 65536 && pb_membersize(criterion_protocol_submessage, value.birth) < 65536 && pb_membersize(criterion_protocol_submessage, value.pre_init) < 65536 && pb_membersize(criterion_protocol_submessage, value.pre_test) < 65536 && pb_membersize(criterion_protocol_submessage, value.post_test) < 65536 && pb_membersize(criterion_protocol_submessage, value.post_fini) < 65536 && pb_membersize(criterion_protocol_submessage, value.death) < 65536 && pb_membersize(criterion_protocol_submessage, value.assert) < 65536 && pb_membersize(criterion_protocol_submessage, value.birth) < 65536 && pb_membersize(criterion_protocol_submessage, value.pre_init) < 65536 && pb_membersize(criterion_protocol_submessage, value.pre_test) < 65536 && pb_membersize(criterion_protocol_submessage, value.post_test) < 65536 && pb_membersize(criterion_protocol_submessage, value.post_fini) < 65536 && pb_membersize(criterion_protocol_submessage, value.death) < 65536 && pb_membersize(criterion_protocol_submessage, value.assert) < 65536 && pb_membersize(criterion_protocol_msg, data) < 65536), YOU_MUST_DEFINE_PB_FIELD_32BIT_FOR_MESSAGES_criterion_protocol_birth_criterion_protocol_pre_init_criterion_protocol_pre_test_criterion_protocol_post_test_criterion_protocol_post_fini_criterion_protocol_death_criterion_protocol_assert_criterion_protocol_submessage_criterion_protocol_msg)
#endif
#if !defined(PB_FIELD_16BIT) && !defined(PB_FIELD_32BIT)
@ -85,7 +85,7 @@ PB_STATIC_ASSERT((pb_membersize(criterion_protocol_submessage, birth) < 65536 &&
* numbers or field sizes that are larger than what can fit in the default
* 8 bit descriptors.
*/
PB_STATIC_ASSERT((pb_membersize(criterion_protocol_submessage, birth) < 256 && pb_membersize(criterion_protocol_submessage, pre_init) < 256 && pb_membersize(criterion_protocol_submessage, pre_test) < 256 && pb_membersize(criterion_protocol_submessage, post_test) < 256 && pb_membersize(criterion_protocol_submessage, post_fini) < 256 && pb_membersize(criterion_protocol_submessage, death) < 256 && pb_membersize(criterion_protocol_submessage, assert) < 256 && pb_membersize(criterion_protocol_submessage, birth) < 256 && pb_membersize(criterion_protocol_submessage, pre_init) < 256 && pb_membersize(criterion_protocol_submessage, pre_test) < 256 && pb_membersize(criterion_protocol_submessage, post_test) < 256 && pb_membersize(criterion_protocol_submessage, post_fini) < 256 && pb_membersize(criterion_protocol_submessage, death) < 256 && pb_membersize(criterion_protocol_submessage, assert) < 256 && pb_membersize(criterion_protocol_msg, data) < 256), YOU_MUST_DEFINE_PB_FIELD_16BIT_FOR_MESSAGES_criterion_protocol_birth_criterion_protocol_pre_init_criterion_protocol_pre_test_criterion_protocol_post_test_criterion_protocol_post_fini_criterion_protocol_death_criterion_protocol_assert_criterion_protocol_submessage_criterion_protocol_msg)
PB_STATIC_ASSERT((pb_membersize(criterion_protocol_submessage, value.birth) < 256 && pb_membersize(criterion_protocol_submessage, value.pre_init) < 256 && pb_membersize(criterion_protocol_submessage, value.pre_test) < 256 && pb_membersize(criterion_protocol_submessage, value.post_test) < 256 && pb_membersize(criterion_protocol_submessage, value.post_fini) < 256 && pb_membersize(criterion_protocol_submessage, value.death) < 256 && pb_membersize(criterion_protocol_submessage, value.assert) < 256 && pb_membersize(criterion_protocol_submessage, value.birth) < 256 && pb_membersize(criterion_protocol_submessage, value.pre_init) < 256 && pb_membersize(criterion_protocol_submessage, value.pre_test) < 256 && pb_membersize(criterion_protocol_submessage, value.post_test) < 256 && pb_membersize(criterion_protocol_submessage, value.post_fini) < 256 && pb_membersize(criterion_protocol_submessage, value.death) < 256 && pb_membersize(criterion_protocol_submessage, value.assert) < 256 && pb_membersize(criterion_protocol_submessage, value.birth) < 256 && pb_membersize(criterion_protocol_submessage, value.pre_init) < 256 && pb_membersize(criterion_protocol_submessage, value.pre_test) < 256 && pb_membersize(criterion_protocol_submessage, value.post_test) < 256 && pb_membersize(criterion_protocol_submessage, value.post_fini) < 256 && pb_membersize(criterion_protocol_submessage, value.death) < 256 && pb_membersize(criterion_protocol_submessage, value.assert) < 256 && pb_membersize(criterion_protocol_submessage, value.birth) < 256 && pb_membersize(criterion_protocol_submessage, value.pre_init) < 256 && pb_membersize(criterion_protocol_submessage, value.pre_test) < 256 && pb_membersize(criterion_protocol_submessage, value.post_test) < 256 && pb_membersize(criterion_protocol_submessage, value.post_fini) < 256 && pb_membersize(criterion_protocol_submessage, value.death) < 256 && pb_membersize(criterion_protocol_submessage, value.assert) < 256 && pb_membersize(criterion_protocol_msg, data) < 256), YOU_MUST_DEFINE_PB_FIELD_16BIT_FOR_MESSAGES_criterion_protocol_birth_criterion_protocol_pre_init_criterion_protocol_pre_test_criterion_protocol_post_test_criterion_protocol_post_fini_criterion_protocol_death_criterion_protocol_assert_criterion_protocol_submessage_criterion_protocol_msg)
#endif

View file

@ -1,5 +1,5 @@
/* Automatically generated nanopb header */
/* Generated by nanopb-0.3.5-dev at Fri Dec 11 16:22:10 2015. */
/* Generated by nanopb-0.3.5-dev at Fri Dec 11 17:13:49 2015. */
#ifndef PB_CRITERION_PB_H_INCLUDED
#define PB_CRITERION_PB_H_INCLUDED
@ -59,20 +59,16 @@ typedef struct _criterion_protocol_pre_test {
} criterion_protocol_pre_test;
typedef struct _criterion_protocol_submessage {
bool has_birth;
criterion_protocol_birth birth;
bool has_pre_init;
criterion_protocol_pre_init pre_init;
bool has_pre_test;
criterion_protocol_pre_test pre_test;
bool has_post_test;
criterion_protocol_post_test post_test;
bool has_post_fini;
criterion_protocol_post_fini post_fini;
bool has_death;
criterion_protocol_death death;
bool has_assert;
criterion_protocol_assert assert;
pb_size_t which_value;
union {
criterion_protocol_birth birth;
criterion_protocol_pre_init pre_init;
criterion_protocol_pre_test pre_test;
criterion_protocol_post_test post_test;
criterion_protocol_post_fini post_fini;
criterion_protocol_death death;
criterion_protocol_assert assert;
} value;
} criterion_protocol_submessage;
typedef struct _criterion_protocol_msg {
@ -95,7 +91,7 @@ extern const int32_t criterion_protocol_msg_version_default;
#define criterion_protocol_post_fini_init_default {0}
#define criterion_protocol_death_init_default {false, (criterion_protocol_death_result_type)0, false, 0}
#define criterion_protocol_assert_init_default {NULL, 0, NULL, false, 0}
#define criterion_protocol_submessage_init_default {false, criterion_protocol_birth_init_default, false, criterion_protocol_pre_init_init_default, false, criterion_protocol_pre_test_init_default, false, criterion_protocol_post_test_init_default, false, criterion_protocol_post_fini_init_default, false, criterion_protocol_death_init_default, false, criterion_protocol_assert_init_default}
#define criterion_protocol_submessage_init_default {0, {criterion_protocol_birth_init_default}}
#define criterion_protocol_msg_init_default {1, 0, {0}, criterion_protocol_submessage_init_default}
#define criterion_protocol_birth_init_zero {0}
#define criterion_protocol_pre_init_init_zero {0}
@ -104,7 +100,7 @@ extern const int32_t criterion_protocol_msg_version_default;
#define criterion_protocol_post_fini_init_zero {0}
#define criterion_protocol_death_init_zero {false, (criterion_protocol_death_result_type)0, false, 0}
#define criterion_protocol_assert_init_zero {NULL, 0, NULL, false, 0}
#define criterion_protocol_submessage_init_zero {false, criterion_protocol_birth_init_zero, false, criterion_protocol_pre_init_init_zero, false, criterion_protocol_pre_test_init_zero, false, criterion_protocol_post_test_init_zero, false, criterion_protocol_post_fini_init_zero, false, criterion_protocol_death_init_zero, false, criterion_protocol_assert_init_zero}
#define criterion_protocol_submessage_init_zero {0, {criterion_protocol_birth_init_zero}}
#define criterion_protocol_msg_init_zero {0, 0, {0}, criterion_protocol_submessage_init_zero}
/* Field tags (for use in manual encoding/decoding) */
@ -145,8 +141,7 @@ extern const pb_field_t criterion_protocol_msg_fields[4];
#define criterion_protocol_post_test_size 11
#define criterion_protocol_post_fini_size 0
#define criterion_protocol_death_size 13
#define criterion_protocol_submessage_size (53 + criterion_protocol_assert_size)
#define criterion_protocol_msg_size (82 + criterion_protocol_assert_size)
#define criterion_protocol_msg_size (29 + criterion_protocol_submessage_size)
/* Message IDs (where set with "msgid" option) */
#ifdef PB_MSGID

View file

@ -38,13 +38,15 @@ message assert {
message submessage {
optional criterion.protocol.birth birth = 1;
optional criterion.protocol.pre_init pre_init = 2;
optional criterion.protocol.pre_test pre_test = 3;
optional criterion.protocol.post_test post_test = 4;
optional criterion.protocol.post_fini post_fini = 5;
optional criterion.protocol.death death = 6;
optional criterion.protocol.assert assert = 7;
oneof value {
criterion.protocol.birth birth = 1;
criterion.protocol.pre_init pre_init = 2;
criterion.protocol.pre_test pre_test = 3;
criterion.protocol.post_test post_test = 4;
criterion.protocol.post_fini post_fini = 5;
criterion.protocol.death death = 6;
criterion.protocol.assert assert = 7;
}
}