From 0d5ac818bc08a41d878402d3653e760ba2771d28 Mon Sep 17 00:00:00 2001 From: "Shangdian (King) Han" Date: Sun, 8 Jan 2023 01:48:50 +0800 Subject: [PATCH] Fix incorrect interpretation of compiler error --- src/ch15-05-interior-mutability.md | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/ch15-05-interior-mutability.md b/src/ch15-05-interior-mutability.md index 7b5e825d..d8f51b31 100644 --- a/src/ch15-05-interior-mutability.md +++ b/src/ch15-05-interior-mutability.md @@ -191,9 +191,10 @@ However, there’s one problem with this test, as shown here: We can’t modify the `MockMessenger` to keep track of the messages, because the `send` method takes an immutable reference to `self`. We also can’t take the -suggestion from the error text to use `&mut self` instead, because then the -signature of `send` wouldn’t match the signature in the `Messenger` trait -definition (feel free to try and see what error message you get). +suggestion from the error text to use `&mut self` instead, because we are +testing an API and it's not a good idea to modify the API for the sole purpose +of testing. Usually, the test engineers do not have permission to modify the +API they're testing. Feel free to try and see what error message you get. This is a situation in which interior mutability can help! We’ll store the `sent_messages` within a `RefCell`, and then the `send` method will be