use
use 선언을 통해 수동으로 스코핑하지 않고도 내부 상수를 이용할 수 있습니다:
// An attribute to hide warnings for unused code.
#![allow(dead_code)]
enum Stage {
Beginner,
Advanced,
}
enum Role {
Student,
Teacher,
}
fn main() {
// 각각을 `use`함으로서 스코핑 없이 사용하도록 합니다
use crate::Stage::{Beginner, Advanced};
// `Role` 안의 모든 항목을 자동으로 `use`합니다
use crate::Role::*;
//`Stage::Beginner`와 동일
let stage = Beginner;
// `Role::Student`와 동일
let role = Student;
match stage {
// 위에서 `use`를 사용함으로서 수동 스코핑이 없음을 주목하세요
Beginner => println!("Beginners are starting their learning journey!"),
Advanced => println!("Advanced learners are mastering their subjects..."),
}
match role {
// Note again the lack of scoping.
Student => println!("Students are acquiring knowledge!"),
Teacher => println!("Teachers are spreading knowledge!"),
}
}