1#![doc = include_str!("../README.md")]
2
3#[cfg(feature = "encodings")]
5pub use encoding_rs as encodings;
6pub use pest::error::Error;
7pub use pest::iterators::{Pair, Pairs};
8pub use pest::Parser;
9
10#[cfg(feature = "encodings")]
11#[must_use]
12pub fn decode_cp1252(bytes: &[u8]) -> Option<std::borrow::Cow<'_, str>> {
13    let (cow, _, had_errors) = encodings::WINDOWS_1252.decode(bytes);
14    if had_errors {
15        None
16    } else {
17        Some(cow)
18    }
19}
20
21#[derive(pest_derive::Parser)]
22#[grammar = "src/dbc.pest"]
23pub struct DbcParser;