From e765159be1515194b766cb382bcccf95cb28fa23 Mon Sep 17 00:00:00 2001 From: "Dustin J. Mitchell" Date: Mon, 11 Dec 2023 14:12:40 -0500 Subject: [PATCH] Clarify completion condition for elevator exercise (#1574) Addresses the first part of #1565. --- src/user-defined-types/exercise.md | 15 +++++++++++---- src/user-defined-types/exercise.rs | 4 ++++ 2 files changed, 15 insertions(+), 4 deletions(-) diff --git a/src/user-defined-types/exercise.md b/src/user-defined-types/exercise.md index 902defaf6fc..3918b9a69aa 100644 --- a/src/user-defined-types/exercise.md +++ b/src/user-defined-types/exercise.md @@ -8,7 +8,17 @@ We will create a data structure to represent an event in an elevator control system. It is up to you to define the types and functions to construct various events. Use `#[derive(Debug)]` to allow the types to be formatted with `{:?}`. -```rust,compile_fail +This exercise only requires creating and populating data structures so that +`main` runs without errors. The next part of the course will cover getting data +out of these structures. + +```rust,should_panic +{{#include exercise.rs:event}} + // TODO: add required variants +} + +{{#include exercise.rs:direction}} + {{#include exercise.rs:car_arrived}} todo!() } @@ -31,6 +41,3 @@ events. Use `#[derive(Debug)]` to allow the types to be formatted with `{:?}`. {{#include exercise.rs:main}} ``` - -This exercise only requires creating data structures. The next part of the -course will cover getting data out of these structures. diff --git a/src/user-defined-types/exercise.rs b/src/user-defined-types/exercise.rs index ad1f0a1dbb8..400999048f8 100644 --- a/src/user-defined-types/exercise.rs +++ b/src/user-defined-types/exercise.rs @@ -15,9 +15,11 @@ #![allow(dead_code)] // ANCHOR: solution +// ANCHOR: event #[derive(Debug)] /// An event in the elevator system that the controller must react to. enum Event { + // ANCHOR_END: event /// A button was pressed. ButtonPressed(Button), @@ -34,12 +36,14 @@ enum Event { /// A floor is represented as an integer. type Floor = i32; +// ANCHOR: direction /// A direction of travel. #[derive(Debug)] enum Direction { Up, Down, } +// ANCHOR_END: direction /// A user-accessible button. #[derive(Debug)]