Macro peace_core::item_id

source ·
item_id!() { /* proc-macro */ }
Expand description

Returns a const ItemId validated at compile time.

§Examples

Instantiate a valid ItemId at compile time:

// use peace::cfg::{item_id, ItemId};

let _my_item_id: ItemId = item_id!("valid_id"); // Ok!

If the ID is invalid, a compilation error is produced:

// use peace::cfg::{item_id, ItemId};

let _my_item_id: ItemId = item_id!("-invalid_id"); // Compile error
//                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
// error: "-invalid_id" is not a valid `ItemId`.
//        `ItemId`s must begin with a letter or underscore, and contain only letters, numbers, or underscores.