attr_literals
The tracking issue for this feature is: #34981
At present, literals are only accepted as the value of a key-value pair in
attributes. What's more, only string literals are accepted. This means that
literals can only appear in forms of #[attr(name = "value")]
or
#[attr = "value"]
.
The attr_literals
unstable feature allows other types of literals to be used
in attributes. Here are some examples of attributes that can now be used with
this feature enabled:
#[attr]
#[attr(true)]
#[attr(ident)]
#[attr(ident, 100, true, "true", ident = 100, ident = "hello", ident(100))]
#[attr(100)]
#[attr(enabled = true)]
#[enabled(true)]
#[attr("hello")]
#[repr(C, align = 4)]
#[repr(C, align(4))]