joaju-csv
A fast, deterministic Rust library for tabular CSV manipulation, relational projections, conditional filtering, and header canonicalization.
⚠️ Early Development Notice (pre-1.0 / alpha)
This library is currently in early active development (0.1.0). It is NOT recommended for production use beyond experimental testing and research. APIs are subject to breaking changes prior to a stable 1.0.0 release.
📖 Overview
joaju-csv enables loading tabular data from strings or files (CSV, TSV, DSV with ; delimiter), extracting header directives prefixed by %%, performing relational projections (apply_select) with alias support (as), and applying filter expressions (apply_where) using numeric and textual comparisons (=, ==, !=, <, <=, >, >=) along with logical connectives (AND, and, &&).
Additionally, it provides built-in support for canonicalizing and resolving pedigree column synonyms compatible with international pedigree format specifications and localized variants.
🚀 Installation
Add joaju-csv to your Cargo.toml:
[]
= "0.1.0"
Or install the CLI tool:
🛠️ Usage Example (Rust API)
use Dataset;
Processing Block Directives (%%)
use split_block_content;
let raw = "\
%% title = Member Directory
%% theme = dark
id,name
1,Mary
";
let = split_block_content;
assert_eq!;
assert_eq!;
💻 CLI Usage
The joaju-csv CLI accepts input files and query parameters directly from the terminal:
# Filter and project columns from a file
# Transform headers into canonical pedigree format
📋 GOST Compliance
This project adheres to the GOST specification (Gosplan Standard for Technical Software).
- GOST Version:
1.1.0 - Declared Languages:
rust,shell - License:
Apache-2.0
# Run strict compliance verification
📄 License
Distributed under the Apache-2.0 license.