10 releases

Uses old Rust 2015

0.3.0 May 3, 2023
0.2.1 May 9, 2018
0.2.0 Aug 19, 2017
0.1.6 May 8, 2017
0.1.4 Mar 5, 2017

#55 in Visualization

Download history 826/week @ 2024-07-21 601/week @ 2024-07-28 445/week @ 2024-08-04 465/week @ 2024-08-11 769/week @ 2024-08-18 870/week @ 2024-08-25 1373/week @ 2024-09-01 1303/week @ 2024-09-08 584/week @ 2024-09-15 683/week @ 2024-09-22 660/week @ 2024-09-29 600/week @ 2024-10-06 744/week @ 2024-10-13 861/week @ 2024-10-20 757/week @ 2024-10-27 516/week @ 2024-11-03

2,975 downloads per month
Used in 77 crates (7 directly)

MIT license

33KB
562 lines

Implements rust's Display trait to format a u8 slice as many hex editors do. This might be useful for dumping a binary blob for debugging purposes.

Build Status

Documentation

The API documentation can be found here: https://docs.rs/crate/hexplay/.

Example

Here's an example that prints a hex view of a slice of some vector's data:

extern crate hexplay;

use hexplay::HexViewBuilder;

fn main() {
    // The buffer we want to display
    let data : Vec<u8> = (0u8..200u8).collect();

    // Build a new HexView using the provider builder
    let view = HexViewBuilder::new(&data[40..72])
        .address_offset(40)
        .row_width(16)
        .finish();

    println!("{}", view);
}

This will result in the following output:

00000020                          28 29 2A 2B 2C 2D 2E 2F  |         ()*+,-./ |
00000030  30 31 32 33 34 35 36 37 38 39 3A 3B 3C 3D 3E 3F  | 0123456789:;<=>? |
00000040  40 41 42 43 44 45 46 47                          | @ABCDEFG         |

Installation

hexplay is on crates.io, so you can include it in your project like so:

[dependencies]
hexplay = "*"

Because this crate uses the ? operator, you need rust v1.13.0 or higher.

License

Hexplay is licensed under the terms of the MIT license.

Dependencies

~0–7MB
~40K SLoC