Rust에서 속성(Attribute)은 메타데이터로, 컴파일러나 다른 툴에 특정 설정이나 추가 정보를 제공한다. 속성은 크게 두 가지로 나뉜다.
#![allow(unused_variables)]
#[allow(unused_variables)]
fn main() {
let unused_var = 32;
test_func();
println!("Hello, world!");
}
fn test_func() {
let unused_var = 32;
println!("속성 테스트!");
}
빌드 시
사용되지 않은 변수에 대해 컴파일러가 경고한다.
#![allow(unused_variables)]
fn main() {
let unused_var = 32;
test_func();
println!("Hello, world!");
}
fn test_func() {
let unused_var = 32;
println!("속성 테스트!");
}
경고가 사라진다.
fn main() {
let unused_var = 32;
test_func();
println!("Hello, world!");
}
#[allow(unused_variables)]
fn test_func() {
let unused_var = 32;
println!("속성 테스트!");
}
test_func()에 대해서 경고는 사라졌지만 main()에서의 unused_var에 대해 컴파일러가 경고한다.
속성은 메타데이터로 컴파일러에게 원하는 동작을 알려주는 것이다.