/ihex

A Rust library for parsing and generating Intel HEX objects.

Primary LanguageRustOtherNOASSERTION

Intel HEX (IHEX) Library

A Rust library for parsing and generating Intel HEX (or IHEX) objects. This format is commonly used for representing compiled program code and data to be loaded into a microcontroller, flash memory or ROM.

Build Status Coverage Status

Usage

Add the following to your Cargo.toml:

[dependencies]
ihex = "1.1"

In addition, and this to your crate root:

extern crate ihex;

Here is an example which builds an IHEX object file with test data and prints it:

extern crate ihex;

use ihex::record::Record;
use ihex::writer;

fn main() {
    let records = &[
        Record::Data { offset: 0x0010, value: vec![0x48,0x65,0x6C,0x6C,0x6F] },
        Record::EndOfFile
    ];

    if let Ok(object) = writer::create_object_file_representation(records) {
        println!("{}", object);
    }
}

License

Licensed under either of

at your option.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.