peace_full_spec_id_macro

Macro full_spec_id

Source
full_spec_id!() { /* proc-macro */ }
Expand description

Returns a const FullSpecId validated at compile time.

§Examples

Instantiate a valid FullSpecId at compile time:

// use peace::cfg::{full_spec_id, FullSpecId};

let _my_full_spec_id: FullSpecId = full_spec_id!("valid_id"); // Ok!

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

// use peace::cfg::{full_spec_id, FullSpecId};

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