Rust 속성(Attribute)

wangki·2024년 12월 9일
0

Rust

목록 보기
1/55

러스트 속성이란?

Rust에서 속성(Attribute)은 메타데이터로, 컴파일러나 다른 툴에 특정 설정이나 추가 정보를 제공한다. 속성은 크게 두 가지로 나뉜다.

  1. 크레이트 레벨 속성
    • 크레이트 전체 또는 모듈 수준에서 적용된다.
#![allow(unused_variables)]
  1. 아이템 레벨 속성
    • 특정 함수, 변수, 구조체 등 개별 아이템에 적용된다.
#[allow(unused_variables)]

사용 예시

1. 크레이트 레벨에서 사용

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!("속성 테스트!");
}

경고가 사라진다.

2. 아이템 레벨에서 사용

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에 대해 컴파일러가 경고한다.

마무리

속성은 메타데이터로 컴파일러에게 원하는 동작을 알려주는 것이다.

0개의 댓글