#hex

macro slices

Convert string literals to static unsigned integer slices in compile time

3 unstable releases

0.2.0 Jul 16, 2021
0.1.1 Dec 3, 2019
0.1.0 May 18, 2019

#225 in #hex

Download history 1489/week @ 2024-07-29 1238/week @ 2024-08-05 823/week @ 2024-08-12 591/week @ 2024-08-19 1001/week @ 2024-08-26 765/week @ 2024-09-02 912/week @ 2024-09-09 729/week @ 2024-09-16 698/week @ 2024-09-23 829/week @ 2024-09-30 652/week @ 2024-10-07 530/week @ 2024-10-14 573/week @ 2024-10-21 605/week @ 2024-10-28 655/week @ 2024-11-04 441/week @ 2024-11-11

2,277 downloads per month
Used in 2 crates

Apache-2.0 OR MIT

7KB

Rust-Slices

License GitHub Actions Crate Badge Crate Doc MSRV 1.45.0

Convert string literals to static unsigned integer slices in compile time.

Usage

The input is a hexadecimal string literal with 0x prefix. The size of input should be an even number.

And you can use any number of _ in the string literal to separate it for more readable.

Examples

use slices::u8_slice;

const VAL: &[u8] = u8_slice!("0x_1234_5678_9abc_def0");
const NULL: &[u8] = u8_slice!("0x");

fn main () {
    let val = &[0x12u8, 0x34, 0x56, 0x78, 0x9a, 0xbc, 0xde, 0xf0];
    assert_eq!(VAL, val);
    assert_eq!(NULL, &[]);
}

Minimum Supported Rust Version

Rust 1.45.0.

License

Licensed under either of Apache License, Version 2.0 or MIT License, at your option.

Dependencies

~1.5MB
~38K SLoC