트랙
/
Cairo
Cairo
/
연습 문제
/
반정형 로그
반정형 로그

반정형 로그

쉬움

소개

Enum은 enumeration의 줄임말로, 어떤 데이터가 가질 수 있는 모든 값을 제한하는 타입이에요. enum이 가질 수 있는 값들은 배리언트라고 해요. Enum은 match를 비롯한 다른 제어 흐름 연산자와도 잘 어울려서, Cairo 프로그램에서 의도한 바를 표현하는 데 도움이 돼요.

지침

이 연습 문제에서는 반정형 로그 메시지를 만들어요.

반정형 메시지 출력하기

몇 가지 스텁 함수와 아래 열거형으로 시작해요.

#[derive(Drop, Clone, PartialEq, Debug)]
pub enum LogLevel {
    Info,
    Warning,
    Error,
    Debug
}

목표는 "[<LEVEL>]: <MESSAGE>" 형식으로 로그 메시지를 출력하는 거예요. 각 로그 레벨에 대응하는 함수를 구현해야 해요.

예를 들어, 아래 코드 조각은 log 함수의 예상 출력을 보여줘요.

log(LogLevel::Error, "Stack overflow")
// Returns: "[ERROR]: Stack overflow"

그리고 info는 이렇게요.

info("Timezone changed")
// Returns: "[INFO]: Timezone changed"

즐겁게 해봐요!

GitHub에서 편집 링크가 새 창이나 탭에서 열려요
Cairo Exercism

반정형 로그 문제를 시작해 볼 준비가 됐나요?

Exercism에 가입하고 Cairo 트랙을 개념 25개연습 문제 68개, 그리고 실제 사람의 멘토링과 함께 배우고 익혀 보세요. 모두 무료예요.