9 releases
0.3.0 | Jun 10, 2024 |
---|---|
0.2.0 | Jul 9, 2020 |
0.1.3 | Jan 15, 2020 |
0.1.2 | Oct 8, 2019 |
0.0.3 | Oct 7, 2019 |
#1038 in Parser implementations
194 downloads per month
55KB
1K
SLoC
Overview
Check the documentation for more details.
A quick summary of features
- Provides two top-level parsing functions:
parse
andloose_parse
.loose_parse
is less strict on the format of the incoming EDI document. - Parses a valid X12 EDI document into a struct called
EdiDocument
. - Provides verbose error messages if the document being parsed is invalid.
- Error messages include the actual segment in which the error occurred.
EdiDocument
and all data it contains implementSerialize
andDeserialize
fromserde
, so zero-copy serialization and deserialization to any serde-able format is supported (this includes json).EdiDocument
's fields are all public and it can be navigated like any other struct for simplicity
See the examples directory for an example.
A quick summary of limitations
- Cannot accurately determine segment types, as that requires an implementation guide from the individual transactor
- Cannot detect loops for the same reason as above
- Only supports standard X12 EDI
Dependencies
~1.4–2.2MB
~32K SLoC