blob: 4c65700c3690671b6b69958fffc2fa387a4564bb [file] [log] [blame]
#![cfg_attr(feature = "used_linker", feature(used_with_arg))]
use linkme as link_me;
mod declaration {
use crate::link_me::distributed_slice;
#[distributed_slice]
#[linkme(crate = crate::link_me)]
pub static SLICE: [i32];
#[test]
fn test_slice() {
assert!(!SLICE.is_empty());
}
#[distributed_slice]
#[linkme(crate = crate::link_me)]
pub static FUNCTIONS: [fn()];
#[test]
fn test_functions() {
assert!(!FUNCTIONS.is_empty());
}
}
mod usage {
use crate::link_me::distributed_slice;
#[distributed_slice(super::declaration::SLICE)]
#[linkme(crate = crate::link_me)]
pub static N: i32 = 9;
#[distributed_slice(super::declaration::FUNCTIONS)]
#[linkme(crate = crate::link_me)]
fn test_me() {}
}