# endf-parser.rs [![Travis master branch](https://img.shields.io/travis/com/logan-dev-oss/endf-parser.rs/master?label=master)](https://travis-ci.com/github/logan-dev-oss/endf-parser.rs) [![Travis develop branch](https://img.shields.io/travis/com/logan-dev-oss/endf-parser.rs/develop?label=develop)](https://travis-ci.com/github/logan-dev-oss/endf-parser.rs) [![GitHub release](https://img.shields.io/github/v/release/logan-dev-oss/endf-parser.rs)](https://github.com/logan-dev-oss/endf-parser.rs/releases) [![Crates.io](https://img.shields.io/crates/v/endf_parser)](https://crates.io/crates/endf_parser) [![API](https://docs.rs/endf_parser/badge.svg)](https://docs.rs/endf_parser) `endf-parser.rs` is a rust library providing utilities for parsing [ENDF-6 format](https://www.nndc.bnl.gov/csewg/docs/endf-manual.pdf) nuclear data. ## Basics ### Level 1 Level 1 is used to parse ENDF primitives. It includes: - integers - reals - text ```rust // Parse ENDF integer fn main() -> Result { endf_parser::primitive::integer::parse(" -123456") } ``` ```rust // Parse ENDF real fn main() -> Result { endf_parser::primitive::real::parse("-1.23456+12") } ``` ## Level 2 Level 2 is for parsing ENDF records. It includes following records: - CONT - DIR - HEAD - LIST - TAB1 - TEXT ```rust fn main() -> Result { endf_parser::record::cont::Cont::parse( "-1.23456789+1.23456789 1 12 123 123412341212312345\n" ) } ``` ## Questions, Issues, Contributing Contributions and Pull Request are welcome. For questions and issues, open an issue [here](https://github.com/logan-dev-oss/endf-parser.rs/issues). ## License [MIT License](https://opensource.org/licenses/MIT)