Skip to content

Commit 29dcb0c

Browse files
authored
Exercise: method and traits: change output (#2383)
In this exercise, the original StderrLogger output to stderr, which user cannot see the original log but "No output" in frontend". Change `eprintln!` to `println!` to make it see-able in the frontend. Also, due to the change, rename the logger struct. Close: #2382 Signed-off-by: Alx-Lai <[email protected]>
1 parent 0fe2722 commit 29dcb0c

File tree

2 files changed

+6
-6
lines changed

2 files changed

+6
-6
lines changed

src/methods-and-traits/exercise.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ method. Code which might log its progress can then take an `&impl Logger`. In
99
testing, this might put messages in the test logfile, while in a production
1010
build it would send messages to a log server.
1111

12-
However, the `StderrLogger` given below logs all messages, regardless of
12+
However, the `StdoutLogger` given below logs all messages, regardless of
1313
verbosity. Your task is to write a `VerbosityFilter` type that will ignore
1414
messages above a maximum verbosity.
1515

src/methods-and-traits/exercise.rs

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -19,19 +19,19 @@ pub trait Logger {
1919
fn log(&self, verbosity: u8, message: &str);
2020
}
2121

22-
struct StderrLogger;
22+
struct StdoutLogger;
2323

24-
impl Logger for StderrLogger {
24+
impl Logger for StdoutLogger {
2525
fn log(&self, verbosity: u8, message: &str) {
26-
eprintln!("verbosity={verbosity}: {message}");
26+
println!("verbosity={verbosity}: {message}");
2727
}
2828
}
2929
// ANCHOR_END: setup
3030

3131
/// Only log messages up to the given verbosity level.
3232
struct VerbosityFilter {
3333
max_verbosity: u8,
34-
inner: StderrLogger,
34+
inner: StdoutLogger,
3535
}
3636

3737
impl Logger for VerbosityFilter {
@@ -44,7 +44,7 @@ impl Logger for VerbosityFilter {
4444

4545
// ANCHOR: main
4646
fn main() {
47-
let logger = VerbosityFilter { max_verbosity: 3, inner: StderrLogger };
47+
let logger = VerbosityFilter { max_verbosity: 3, inner: StdoutLogger };
4848
logger.log(5, "FYI");
4949
logger.log(2, "Uhoh");
5050
}

0 commit comments

Comments
 (0)