summaryrefslogtreecommitdiffstats
path: root/src/doc/book/listings/ch07-managing-growing-projects/listing-07-03
diff options
context:
space:
mode:
Diffstat (limited to 'src/doc/book/listings/ch07-managing-growing-projects/listing-07-03')
-rw-r--r--src/doc/book/listings/ch07-managing-growing-projects/listing-07-03/Cargo.lock6
-rw-r--r--src/doc/book/listings/ch07-managing-growing-projects/listing-07-03/Cargo.toml6
-rw-r--r--src/doc/book/listings/ch07-managing-growing-projects/listing-07-03/output.txt28
-rw-r--r--src/doc/book/listings/ch07-managing-growing-projects/listing-07-03/src/lib.rs13
4 files changed, 53 insertions, 0 deletions
diff --git a/src/doc/book/listings/ch07-managing-growing-projects/listing-07-03/Cargo.lock b/src/doc/book/listings/ch07-managing-growing-projects/listing-07-03/Cargo.lock
new file mode 100644
index 000000000..f25ab358f
--- /dev/null
+++ b/src/doc/book/listings/ch07-managing-growing-projects/listing-07-03/Cargo.lock
@@ -0,0 +1,6 @@
+# This file is automatically @generated by Cargo.
+# It is not intended for manual editing.
+[[package]]
+name = "restaurant"
+version = "0.1.0"
+
diff --git a/src/doc/book/listings/ch07-managing-growing-projects/listing-07-03/Cargo.toml b/src/doc/book/listings/ch07-managing-growing-projects/listing-07-03/Cargo.toml
new file mode 100644
index 000000000..60cec7cb0
--- /dev/null
+++ b/src/doc/book/listings/ch07-managing-growing-projects/listing-07-03/Cargo.toml
@@ -0,0 +1,6 @@
+[package]
+name = "restaurant"
+version = "0.1.0"
+edition = "2021"
+
+[dependencies]
diff --git a/src/doc/book/listings/ch07-managing-growing-projects/listing-07-03/output.txt b/src/doc/book/listings/ch07-managing-growing-projects/listing-07-03/output.txt
new file mode 100644
index 000000000..481dcb3f7
--- /dev/null
+++ b/src/doc/book/listings/ch07-managing-growing-projects/listing-07-03/output.txt
@@ -0,0 +1,28 @@
+$ cargo build
+ Compiling restaurant v0.1.0 (file:///projects/restaurant)
+error[E0603]: module `hosting` is private
+ --> src/lib.rs:9:28
+ |
+9 | crate::front_of_house::hosting::add_to_waitlist();
+ | ^^^^^^^ private module
+ |
+note: the module `hosting` is defined here
+ --> src/lib.rs:2:5
+ |
+2 | mod hosting {
+ | ^^^^^^^^^^^
+
+error[E0603]: module `hosting` is private
+ --> src/lib.rs:12:21
+ |
+12 | front_of_house::hosting::add_to_waitlist();
+ | ^^^^^^^ private module
+ |
+note: the module `hosting` is defined here
+ --> src/lib.rs:2:5
+ |
+2 | mod hosting {
+ | ^^^^^^^^^^^
+
+For more information about this error, try `rustc --explain E0603`.
+error: could not compile `restaurant` due to 2 previous errors
diff --git a/src/doc/book/listings/ch07-managing-growing-projects/listing-07-03/src/lib.rs b/src/doc/book/listings/ch07-managing-growing-projects/listing-07-03/src/lib.rs
new file mode 100644
index 000000000..0b8a43c6b
--- /dev/null
+++ b/src/doc/book/listings/ch07-managing-growing-projects/listing-07-03/src/lib.rs
@@ -0,0 +1,13 @@
+mod front_of_house {
+ mod hosting {
+ fn add_to_waitlist() {}
+ }
+}
+
+pub fn eat_at_restaurant() {
+ // Absolute path
+ crate::front_of_house::hosting::add_to_waitlist();
+
+ // Relative path
+ front_of_house::hosting::add_to_waitlist();
+}