pub enum CodegenError {
Show 19 variants
OptionalFieldUnsupported {
container: String,
field: String,
},
DefaultValueUnsupported {
container: String,
field: String,
},
EnumFieldUnsupported {
container: String,
field: String,
ty: String,
},
EnumRepresentationUnsupported {
enum_name: String,
repr: String,
},
EnumVariantValueRequired {
enum_name: String,
variant: String,
},
EnumVariantValueOutOfRange {
enum_name: String,
variant: String,
value: i64,
repr: String,
},
UnboundedStringUnsupported {
container: String,
field: String,
},
LegacyMessageUnsupported {
packet: String,
},
MissingMid {
packet: String,
},
MessageIdUnsupported {
item: String,
},
MessageIdValueUnsupported {
packet: String,
},
MissingCommandCode {
packet: String,
},
CommandCodeUnsupported {
item: String,
},
CommandCodeValueUnsupported {
packet: String,
},
DuplicateMid {
mid: String,
first_packet: String,
second_packet: String,
},
DuplicateCommandCode {
mid: String,
cc: String,
first_packet: String,
second_packet: String,
},
MidRangeMismatch {
packet: String,
mid: String,
expected: &'static str,
},
DynamicArrayUnsupported {
container: String,
field: String,
ty: String,
},
BoundedArrayUnsupported {
container: String,
field: String,
ty: String,
},
}Expand description
Error returned when a parsed Synapse file cannot be emitted safely.
Variants§
OptionalFieldUnsupported
Optional fields parse today, but cFS ABI codegen has no representation for them yet.
DefaultValueUnsupported
Field defaults parse today, but cFS ABI codegen does not generate initializers yet.
EnumFieldUnsupported
Unrepresented enum fields parse today, but cFS ABI codegen needs an explicit representation.
EnumRepresentationUnsupported
Represented enums must use integer ABI types.
EnumVariantValueRequired
Represented enums require explicit values for every variant.
EnumVariantValueOutOfRange
Represented enum variant values must fit the selected ABI type.
UnboundedStringUnsupported
Unbounded strings would generate pointer fields, which are not cFS packet/table ABI data.
LegacyMessageUnsupported
The legacy message keyword is parsed for migration, but cFS codegen requires intent.
MissingMid
cFS Software Bus command and telemetry packets require explicit message IDs.
MessageIdUnsupported
Message IDs are only meaningful for cFS command and telemetry packets.
MessageIdValueUnsupported
Message IDs must resolve to non-negative integers for cFS codegen.
MissingCommandCode
cFS command packets require an explicit command code.
CommandCodeUnsupported
Command codes are only meaningful for cFS command packets.
CommandCodeValueUnsupported
Command codes must be literal non-negative integers for cFS codegen today.
DuplicateMid
Literal MIDs must be unique within one generated file.
DuplicateCommandCode
Literal command MID/CC pairs must be unique within one generated file.
MidRangeMismatch
Literal command/telemetry MIDs must match the expected cFS command bit pattern.
DynamicArrayUnsupported
Dynamic arrays parse today, but cFS ABI codegen has no ownership/length model yet.
BoundedArrayUnsupported
Non-string bounded arrays parse today, but cFS ABI codegen has no inline representation yet.
Trait Implementations§
Source§impl Clone for CodegenError
impl Clone for CodegenError
Source§fn clone(&self) -> CodegenError
fn clone(&self) -> CodegenError
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for CodegenError
impl Debug for CodegenError
Source§impl Display for CodegenError
impl Display for CodegenError
Source§impl Error for CodegenError
impl Error for CodegenError
1.30.0 · Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
use the Display impl or to_string()
Source§impl PartialEq for CodegenError
impl PartialEq for CodegenError
Source§fn eq(&self, other: &CodegenError) -> bool
fn eq(&self, other: &CodegenError) -> bool
self and other values to be equal, and is used by ==.