+ Basic implementation working with just unsigned ints + Can fetch data from arbitrary bit positions in a byte string + TOML config implementation for describing data + Simple CLI
25 lines
522 B
Rust
25 lines
522 B
Rust
pub mod format;
|
|
|
|
use crate::formatter::format::Format;
|
|
use serde::Deserialize;
|
|
use std::fs::File;
|
|
use std::io::Read;
|
|
use std::path::Path;
|
|
|
|
#[derive(Debug, Deserialize, Clone)]
|
|
pub struct FormatConfig {
|
|
pub formats: Vec<Format>,
|
|
}
|
|
|
|
impl FormatConfig {
|
|
pub fn new(config_path: &Path) -> Result<Self, std::io::Error> {
|
|
let mut config = File::open(config_path)?;
|
|
|
|
let mut contents = String::new();
|
|
|
|
config.read_to_string(&mut contents)?;
|
|
|
|
Ok(toml::from_str(&contents).unwrap())
|
|
}
|
|
}
|