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

#90 in Visualization

Download history 588/week @ 2024-01-19 359/week @ 2024-01-26 361/week @ 2024-02-02 362/week @ 2024-02-09 452/week @ 2024-02-16 414/week @ 2024-02-23 395/week @ 2024-03-01 387/week @ 2024-03-08 443/week @ 2024-03-15 646/week @ 2024-03-22 586/week @ 2024-03-29 422/week @ 2024-04-05 335/week @ 2024-04-12 645/week @ 2024-04-19 868/week @ 2024-04-26 649/week @ 2024-05-03

2,562 downloads per month
Used in 64 crates (5 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–8MB
~46K SLoC