can-dbc
A CAN-dbc format parser written with Rust's nom parser combinator library.
1. Example
Read dbc file and generate Rust structs based on the messages/signals defined in the dbc.
use DBC;
use Scope;
use File;
use io;
use *;
2. Example
The file parser simply parses a dbc input file and prints the parsed content.
cargo test && ./target/debug/examples/file_parser -i examples/sample.dbc
Installation
can-dbc is available on crates.io and can be included in your Cargo enabled project like this:
can-dbc = "1.0"
Implemented DBC parts
- version
- new_symbols
- bit_timing (deprecated but mandatory)
- nodes
- value_tables
- messages
- message_transmitters
- environment_variables
- environment_variables_data
- signal_types
- comments
- attribute_definitions
- sigtype_attr_list (format missing documentation)
- attribute_defaults
- attribute_values
- value_descriptions
- category_definitions (deprecated)
- categories (deprecated)
- filter (deprecated)
- signal_type_refs
- signal_groups
- signal_extended_value_type_list
Deviating from standard
- multispace between parsers instead of single space allowing e.g. (two spaces)
SIG_GROUP 13
. VAL_
suffix may be;
or;