ustar-parser

Crates.ioustar-parser
lib.rsustar-parser
version0.1.3
created_at2025-11-22 22:37:39.009457+00
updated_at2025-11-24 14:33:59.769495+00
descriptionSTAR format parser for CIF, mmCIF, NMR-STAR, cif dictionaries, NEF files and other scientific data formats
homepagehttps://github.com/varioustoxins/ustar
repositoryhttps://github.com/varioustoxins/ustar
max_upload_size
id1945838
size705,947
(varioustoxins)

documentation

https://docs.rs/ustar-parser

README

USTAR

A Rust parser for STAR (Self-defining Text Archive and Retrieval) format files, including NEF, CIF, mmCIF, and NMR-STAR.

Features

  • Multi-encoding support: ASCII, Extended ASCII, Unicode
  • Multiple STAR formats: CIF, mmCIF, NMR-STAR, NEF
  • Error handling: Rich error diagnostics with miette integration
  • Grammar generation: Dynamic parser generation for different character sets
  • Real-world tested: Validated against databases (PDB, COD, BMRB, NEF, multiple mmcif dictionaries)

Usage

[dependencies]
ustar-parser = "0.1"
use ustar::parsers::ascii::{AsciiParser, Rule};
use pest::Parser;

let content = std::fs::read_to_string("example.cif")?;
let pairs = AsciiParser::parse(Rule::star_file, &content)?;

License

LGPL3

Commit count: 0

cargo fmt