3 unstable releases

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

#49 in #convert-string

Download history 620/week @ 2024-11-29 503/week @ 2024-12-06 607/week @ 2024-12-13 242/week @ 2024-12-20 292/week @ 2024-12-27 840/week @ 2025-01-03 821/week @ 2025-01-10 867/week @ 2025-01-17 801/week @ 2025-01-24 999/week @ 2025-01-31 821/week @ 2025-02-07 636/week @ 2025-02-14 585/week @ 2025-02-21 584/week @ 2025-02-28 603/week @ 2025-03-07 665/week @ 2025-03-14

2,555 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
~39K SLoC