轨道
/
Rust
Rust
/
练习
/
半结构化日志
半结构化日志

半结构化日志

学习练习

简介

枚举(enumeration 的缩写)是一种类型,用于限定某个数据所有可能的取值。enum所有可能的取值称为变体。枚举还能与match以及其他控制流运算符很好地配合,帮助你在 Rust 程序中表达意图。

说明

在这个练习中,你将生成半结构化的日志消息。

1. 输出半结构化消息

你会从一些桩函数和下面这个枚举开始:

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

你的目标是输出如下格式的日志消息:"[<LEVEL>]: <MESSAGE>"。 你需要实现与各个日志级别相对应的函数。

例如,下面的代码片段展示了log函数的预期输出。

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

再比如info:

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

玩得开心!

2. 可选的进阶练习

这个测试套件里有一个由特性门控的测试。 特性门控会完全禁止程序中某些部分的编译。 这些内容后面会讲到。 现在你只需要知道,有一个测试只在你使用特殊的测试调用方式时才会被构建和运行:

cargo test --features add-a-variant

这个测试的目的是向你展示如何为枚举添加一个变体。

通过 GitHub 编辑 链接将在新窗口或新标签页中打开
Rust Exercism

准备好开始 半结构化日志 了吗?

注册 Exercism,借助 99 个练习 和真人导师指导,学习并掌握 Rust,全部免费。