2
D-Bus를 통해 NetworkManager과 상호 작용하는 코드를 작성하고 있는데 키 - 값 방식처럼 enum
을 사용하고 싶습니다. 그렇게하는 가장 깨끗한, 가장 관용적 인 방법은 무엇양방향 조회 테이블로 Rust의 열거 형을 사용하십시오.
pub enum NetworkManagerState {
Unknown = 0,
Asleep = 10,
Disconnected = 20,
Disconnecting = 30,
Connecting = 40,
ConnectedLocal = 50,
ConnectedSite = 60,
ConnectedGlobal = 70,
}
:
예를 들어,이 enum
의 문자열 Unknown
를 사용하는 숫자 0으로 다른 맥락에서 값 0
를 사용하여 한 번에 원하는 ? 튜플 기반의 열거 형을 정의하여 각 항목이 (ConnectedSite, 60u32, "Connected")
처럼 보이고 컨텍스트에 따라 각 튜플 속성을 사용하는 방법이 있습니까?
매크로가 필요합니다. – Shepmaster
저는 녹 사용자가 아니지만 관용적 인 녹이 문자열 값을 피하는 것을 선호합니다 (성능상의 이유로). 처음 만났을 때 문자열 값을 구문 분석 한 다음 모든 후속 처리에 해당 열거 형 값을 사용할 수있는 방법이 있습니까? – Dai