liboxen 0.50.1

Oxen is a fast, unstructured data version control, to help version large machine learning datasets written in Rust.
Documentation
use serde::{Deserialize, Serialize};
use utoipa::ToSchema;

#[derive(Deserialize, Serialize, Debug, Clone, ToSchema)]
pub struct MetadataText {
    pub text: MetadataTextImpl,
}

#[derive(Deserialize, Serialize, Debug, Clone, ToSchema)]
pub struct MetadataTextImpl {
    pub num_lines: usize,
    pub num_chars: usize,
}

impl MetadataText {
    pub fn new(num_lines: usize, num_chars: usize) -> Self {
        Self {
            text: MetadataTextImpl {
                num_lines,
                num_chars,
            },
        }
    }
}

impl std::fmt::Display for MetadataText {
    fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result {
        write!(
            f,
            "MetadataText({} lines, {} chars)",
            self.text.num_lines, self.text.num_chars
        )
    }
}