#![forbid(unsafe_code)]
extern crate alloc;
use alloc::{string::String, vec::Vec};
#[derive(Debug, Clone, PartialEq, Eq)]
pub enum BarcodeOutput {
Linear(LinearBarcode),
Matrix(MatrixBarcode),
}
#[derive(Debug, Clone, PartialEq, Eq)]
pub struct LinearBarcode {
pub bars: Vec<bool>,
pub height: u32,
pub text: Option<String>,
}
#[derive(Debug, Clone, PartialEq, Eq)]
pub struct MatrixBarcode {
pub modules: Vec<Vec<bool>>,
pub width: usize,
pub height: usize,
}
#[derive(Debug, Clone, PartialEq, Eq)]
pub struct Metadata {
pub symbology: String,
pub version: Option<String>,
}