Expand description

NMEA Parser: NMEA parser for Rust

This crate aims to cover all AIS sentences and the most important GNSS sentences used with NMEA 0183 standard. The parser supports AIS class A and B types. It also identifies GPS, GLONASS, Galileo, BeiDou, NavIC and QZSS satellite systems.

Usage in a #[no_std] environment is also possible though an allocator is required

Re-exports

pub use chrono;

Modules

AIS VDM/VDO data structures
GNSS data structures

Structs

NMEA sentence parser which keeps multi-sentence state between parse_sentence calls. The parser tries to be as permissible as possible about the field formats because some NMEA encoders don’t follow the standards strictly.

Enums

Parse error returned by NmeaParser::parse_sentence(). String data type is used instead of static &str because the error messages are expected to contain context-specific details.
Result from function NmeaParser::parse_sentence(). If the given sentence represents only a partial message ParsedMessage::Incomplete is returned.

Traits

Read-only access to geographical position in the implementing type.