array-concat 0.1.0

Macros for concatenating const arrays at compile time.
Documentation

Current Crates.io Version docs-rs

array-concat

Macros for concatenating const arrays at compile time.

To add to your Cargo.toml:

array-concat = "0.1.0"

Example

use array_concat::{concat_arrays_size, concat_arrays};

const A: [u32; 3] = [1, 2, 3];
const B: [u32; 2] = [4, 5];
const C: [u32; concat_arrays_size!(A, B)] = concat_arrays!(u32; A, B; u32::MIN); // compiles

// Non-Copy struct
struct S {}
const D: [S; 1] = [S{}];
const E: [S; 1] = [S{}];
const F: [S; concat_arrays_size!(D, E)] = concat_arrays!(S; D, E; S{}); // doesn't compile

fn main() {
    assert_eq!(C[..], A.iter().chain(&B).copied().collect::<Vec<u32>>()[..]);
}