mirror of https://github.com/rust-lang-ru/book.git
2851 changed files with 639 additions and 178682 deletions
@ -1,3 +0,0 @@
@@ -1,3 +0,0 @@
|
||||
[cargo-new] |
||||
name = "Your Name" |
||||
email = "you@example.com" |
||||
@ -1,2 +0,0 @@
@@ -1,2 +0,0 @@
|
||||
# Ran dprint fmt on the repo |
||||
3a30e4c1fbe641afc066b3af9eb01dcdf5ed8b24 |
||||
@ -1,6 +0,0 @@
@@ -1,6 +0,0 @@
|
||||
# Set the default behavior, in case people don't have core.autocrlf set. |
||||
* text=auto eol=lf |
||||
*.docx binary |
||||
*.odt binary |
||||
*.png binary |
||||
|
||||
@ -1,17 +0,0 @@
@@ -1,17 +0,0 @@
|
||||
--- |
||||
name: Bug report |
||||
about: Create a report to help us improve |
||||
--- |
||||
|
||||
- I have searched open and closed issues and pull requests for duplicates, using these search terms: |
||||
- |
||||
- |
||||
- |
||||
- I have checked the latest `main` branch to see if this has already been fixed, in this file: |
||||
- |
||||
|
||||
URL to the section(s) of the book with this problem: |
||||
|
||||
Description of the problem: |
||||
|
||||
Suggested fix: |
||||
@ -1,7 +0,0 @@
@@ -1,7 +0,0 @@
|
||||
--- |
||||
name: New translation |
||||
about: Let us know of a new language translation you're working on |
||||
--- |
||||
|
||||
Language your translation is for: |
||||
URL to the repo where you're working: |
||||
@ -1,104 +0,0 @@
@@ -1,104 +0,0 @@
|
||||
name: CI |
||||
on: [push, pull_request] |
||||
|
||||
jobs: |
||||
test: |
||||
name: Run tests |
||||
runs-on: ubuntu-latest |
||||
steps: |
||||
- uses: actions/checkout@master |
||||
- name: Update rustup |
||||
run: rustup self update |
||||
- name: Install Rust |
||||
run: | |
||||
rustup set profile minimal |
||||
rustup toolchain install 1.85 -c rust-docs |
||||
rustup default 1.85 |
||||
- name: Install mdbook |
||||
run: | |
||||
mkdir bin |
||||
curl -sSL https://github.com/rust-lang/mdBook/releases/download/v0.4.45/mdbook-v0.4.45-x86_64-unknown-linux-gnu.tar.gz | tar -xz --directory=bin |
||||
echo "$(pwd)/bin" >> "${GITHUB_PATH}" |
||||
- name: Report versions |
||||
run: | |
||||
rustup --version |
||||
rustc -Vv |
||||
mdbook --version |
||||
|
||||
# mdBook does not currently have particularly good support for “external” |
||||
# crates. To make the test suite work correctly with `trpl`, we must first |
||||
# build `trpl` itself (`mdbook` will not do it), and then explicitly pass |
||||
# its `deps` path as a library search path for `mdbook test`. That will make |
||||
# sure all the crates can be resolved when running the tests. |
||||
- name: Build `trpl` crate |
||||
run: | |
||||
cd packages/trpl |
||||
cargo build |
||||
- name: Run tests |
||||
run: |
||||
mdbook test --library-path packages/trpl/target/debug/deps |
||||
package_tests: |
||||
name: Run package tests |
||||
runs-on: ubuntu-latest |
||||
steps: |
||||
- uses: actions/checkout@master |
||||
- name: Update rustup |
||||
run: rustup self update |
||||
- name: Install Rust |
||||
run: | |
||||
rustup set profile minimal |
||||
rustup toolchain install 1.85 -c rust-docs |
||||
rustup default 1.85 |
||||
- name: Run `tools` package tests |
||||
run: | |
||||
cargo test |
||||
- name: Run `mdbook-trpl` package tests |
||||
working-directory: packages/mdbook-trpl |
||||
run: | |
||||
cargo test |
||||
lint: |
||||
name: Run lints |
||||
runs-on: ubuntu-latest |
||||
steps: |
||||
- uses: actions/checkout@master |
||||
- name: Update rustup |
||||
run: rustup self update |
||||
- name: Install Rust |
||||
run: | |
||||
rustup set profile minimal |
||||
rustup toolchain install nightly -c rust-docs |
||||
rustup override set nightly |
||||
- name: Install mdbook |
||||
run: | |
||||
mkdir bin |
||||
curl -sSL https://github.com/rust-lang/mdBook/releases/download/v0.4.45/mdbook-v0.4.45-x86_64-unknown-linux-gnu.tar.gz | tar -xz --directory=bin |
||||
echo "$(pwd)/bin" >> "${GITHUB_PATH}" |
||||
- name: Install mdbook-trpl binaries |
||||
run: cargo install --path packages/mdbook-trpl |
||||
- name: Install aspell |
||||
run: sudo apt-get install aspell |
||||
- name: Install shellcheck |
||||
run: sudo apt-get install shellcheck |
||||
- name: Report versions |
||||
run: | |
||||
rustup --version |
||||
rustc -Vv |
||||
mdbook --version |
||||
aspell --version |
||||
shellcheck --version |
||||
- name: Shellcheck |
||||
run: find . -name '*.sh' -print0 | xargs -0 shellcheck |
||||
- name: Spellcheck |
||||
run: bash ci/spellcheck.sh list |
||||
- name: Lint for local file paths |
||||
run: | |
||||
mdbook build |
||||
cargo run --bin lfp src |
||||
- name: Validate references |
||||
run: bash ci/validate.sh |
||||
- name: Check for broken links |
||||
run: | |
||||
curl -sSLo linkcheck.sh \ |
||||
https://raw.githubusercontent.com/rust-lang/rust/master/src/tools/linkchecker/linkcheck.sh |
||||
# Cannot use --all here because of the generated redirect pages aren't available. |
||||
sh linkcheck.sh book |
||||
@ -1,10 +0,0 @@
@@ -1,10 +0,0 @@
|
||||
book/ |
||||
*~ |
||||
.idea |
||||
.DS_Store |
||||
target |
||||
tmp |
||||
|
||||
.nova |
||||
.vscode |
||||
.zed |
||||
@ -1,7 +0,0 @@
@@ -1,7 +0,0 @@
|
||||
[book] |
||||
title = "The Rust Programming Language" |
||||
author = "Steve Klabnik and Carol Nichols, with Contributions from the Rust Community" |
||||
|
||||
[output.html] |
||||
additional-css = ["ferris.css"] |
||||
additional-js = ["ferris.js"] |
||||
@ -1,26 +0,0 @@
@@ -1,26 +0,0 @@
|
||||
digraph { |
||||
rankdir=LR; |
||||
overlap=false; |
||||
dpi=300.0; |
||||
node [shape="plaintext"]; |
||||
|
||||
table0[label=<<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> |
||||
<TR><TD COLSPAN="2" SIDES="B">s1</TD></TR> |
||||
<TR><TD>name</TD><TD>value</TD></TR> |
||||
<TR><TD>ptr</TD><TD PORT="pointer"></TD></TR> |
||||
<TR><TD>len</TD><TD>5</TD></TR> |
||||
<TR><TD>capacity</TD><TD>5</TD></TR> |
||||
</TABLE>>]; |
||||
table1[label=<<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> |
||||
<TR><TD>index</TD><TD>value</TD></TR> |
||||
<TR><TD PORT="pointee">0</TD><TD>h</TD></TR> |
||||
<TR><TD>1</TD><TD>e</TD></TR> |
||||
<TR><TD>2</TD><TD>l</TD></TR> |
||||
<TR><TD>3</TD><TD>l</TD></TR> |
||||
<TR><TD>4</TD><TD>o</TD></TR> |
||||
</TABLE>>]; |
||||
|
||||
edge[tailclip="false"]; |
||||
table0:pointer:c -> table1:pointee; |
||||
} |
||||
|
||||
@ -1,35 +0,0 @@
@@ -1,35 +0,0 @@
|
||||
digraph { |
||||
rankdir=LR; |
||||
overlap=false; |
||||
dpi=300.0; |
||||
node [shape="plaintext"]; |
||||
|
||||
table0[label=<<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> |
||||
<TR><TD COLSPAN="2" SIDES="B">s1</TD></TR> |
||||
<TR><TD>name</TD><TD>value</TD></TR> |
||||
<TR><TD>ptr</TD><TD PORT="pointer"></TD></TR> |
||||
<TR><TD>len</TD><TD>5</TD></TR> |
||||
<TR><TD>capacity</TD><TD>5</TD></TR> |
||||
</TABLE>>]; |
||||
table3[label=<<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> |
||||
<TR><TD COLSPAN="2" SIDES="B">s2</TD></TR> |
||||
<TR><TD>name</TD><TD>value</TD></TR> |
||||
<TR><TD>ptr</TD><TD PORT="pointer"></TD></TR> |
||||
<TR><TD>len</TD><TD>5</TD></TR> |
||||
<TR><TD>capacity</TD><TD>5</TD></TR> |
||||
</TABLE>>]; |
||||
|
||||
table1[label=<<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> |
||||
<TR><TD>index</TD><TD>value</TD></TR> |
||||
<TR><TD PORT="pointee">0</TD><TD>h</TD></TR> |
||||
<TR><TD>1</TD><TD>e</TD></TR> |
||||
<TR><TD>2</TD><TD>l</TD></TR> |
||||
<TR><TD>3</TD><TD>l</TD></TR> |
||||
<TR><TD>4</TD><TD>o</TD></TR> |
||||
</TABLE>>]; |
||||
|
||||
edge[tailclip="false"]; |
||||
table0:pointer:c -> table1:pointee; |
||||
table3:pointer:c -> table1:pointee; |
||||
} |
||||
|
||||
@ -1,44 +0,0 @@
@@ -1,44 +0,0 @@
|
||||
digraph { |
||||
rankdir=LR; |
||||
overlap=false; |
||||
dpi=300.0; |
||||
node [shape="plaintext"]; |
||||
|
||||
table0[label=<<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> |
||||
<TR><TD COLSPAN="2" SIDES="B">s2</TD></TR> |
||||
<TR><TD>name</TD><TD>value</TD></TR> |
||||
<TR><TD>ptr</TD><TD PORT="pointer"></TD></TR> |
||||
<TR><TD>len</TD><TD>5</TD></TR> |
||||
<TR><TD>capacity</TD><TD>5</TD></TR> |
||||
</TABLE>>]; |
||||
table1[label=<<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> |
||||
<TR><TD>index</TD><TD>value</TD></TR> |
||||
<TR><TD PORT="pointee">0</TD><TD>h</TD></TR> |
||||
<TR><TD>1</TD><TD>e</TD></TR> |
||||
<TR><TD>2</TD><TD>l</TD></TR> |
||||
<TR><TD>3</TD><TD>l</TD></TR> |
||||
<TR><TD>4</TD><TD>o</TD></TR> |
||||
</TABLE>>]; |
||||
|
||||
table3[label=<<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> |
||||
<TR><TD COLSPAN="2" SIDES="B">s1</TD></TR> |
||||
<TR><TD>name</TD><TD>value</TD></TR> |
||||
<TR><TD>ptr</TD><TD PORT="pointer"></TD></TR> |
||||
<TR><TD>len</TD><TD>5</TD></TR> |
||||
<TR><TD>capacity</TD><TD>5</TD></TR> |
||||
</TABLE>>]; |
||||
table4[label=<<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> |
||||
<TR><TD>index</TD><TD>value</TD></TR> |
||||
<TR><TD PORT="pointee">0</TD><TD>h</TD></TR> |
||||
<TR><TD>1</TD><TD>e</TD></TR> |
||||
<TR><TD>2</TD><TD>l</TD></TR> |
||||
<TR><TD>3</TD><TD>l</TD></TR> |
||||
<TR><TD>4</TD><TD>o</TD></TR> |
||||
</TABLE>>]; |
||||
|
||||
|
||||
edge[tailclip="false"]; |
||||
table0:pointer:c -> table1:pointee; |
||||
table3:pointer:c -> table4:pointee; |
||||
} |
||||
|
||||
@ -1,35 +0,0 @@
@@ -1,35 +0,0 @@
|
||||
digraph { |
||||
rankdir=LR; |
||||
overlap=false; |
||||
dpi=300.0; |
||||
node [shape="plaintext"]; |
||||
|
||||
table0[label=<<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0" BGCOLOR="gray"> |
||||
<TR><TD COLSPAN="2" SIDES="B">s1</TD></TR> |
||||
<TR><TD>name</TD><TD>value</TD></TR> |
||||
<TR><TD>ptr</TD><TD PORT="pointer"></TD></TR> |
||||
<TR><TD>len</TD><TD>5</TD></TR> |
||||
<TR><TD>capacity</TD><TD>5</TD></TR> |
||||
</TABLE>>]; |
||||
table3[label=<<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> |
||||
<TR><TD COLSPAN="2" SIDES="B">s2</TD></TR> |
||||
<TR><TD>name</TD><TD>value</TD></TR> |
||||
<TR><TD>ptr</TD><TD PORT="pointer"></TD></TR> |
||||
<TR><TD>len</TD><TD>5</TD></TR> |
||||
<TR><TD>capacity</TD><TD>5</TD></TR> |
||||
</TABLE>>]; |
||||
|
||||
table1[label=<<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> |
||||
<TR><TD>index</TD><TD>value</TD></TR> |
||||
<TR><TD PORT="pointee">0</TD><TD>h</TD></TR> |
||||
<TR><TD>1</TD><TD>e</TD></TR> |
||||
<TR><TD>2</TD><TD>l</TD></TR> |
||||
<TR><TD>3</TD><TD>l</TD></TR> |
||||
<TR><TD>4</TD><TD>o</TD></TR> |
||||
</TABLE>>]; |
||||
|
||||
edge[tailclip="false"]; |
||||
table0:pointer:c -> table1:pointee; |
||||
table3:pointer:c -> table1:pointee; |
||||
} |
||||
|
||||
@ -1,32 +0,0 @@
@@ -1,32 +0,0 @@
|
||||
digraph { |
||||
rankdir=LR; |
||||
overlap=false; |
||||
dpi=300.0; |
||||
node [shape="plaintext"]; |
||||
|
||||
table0[label=<<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> |
||||
<TR><TD COLSPAN="2" SIDES="B">s</TD></TR> |
||||
<TR><TD>name</TD><TD>value</TD></TR> |
||||
<TR><TD>ptr</TD><TD PORT="borrower"></TD></TR> |
||||
</TABLE>>]; |
||||
table1[label=<<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> |
||||
<TR><TD COLSPAN="2" SIDES="B">s1</TD></TR> |
||||
<TR><TD>name</TD><TD>value</TD></TR> |
||||
<TR><TD PORT="borrowee">ptr</TD><TD PORT="pointer"></TD></TR> |
||||
<TR><TD>len</TD><TD>5</TD></TR> |
||||
<TR><TD>capacity</TD><TD>5</TD></TR> |
||||
</TABLE>>]; |
||||
table2[label=<<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> |
||||
<TR><TD>index</TD><TD>value</TD></TR> |
||||
<TR><TD PORT="pointee">0</TD><TD>h</TD></TR> |
||||
<TR><TD>1</TD><TD>e</TD></TR> |
||||
<TR><TD>2</TD><TD>l</TD></TR> |
||||
<TR><TD>3</TD><TD>l</TD></TR> |
||||
<TR><TD>4</TD><TD>o</TD></TR> |
||||
</TABLE>>]; |
||||
|
||||
edge[tailclip="false"]; |
||||
table1:pointer:c -> table2:pointee; |
||||
table0:borrower:c -> table1:borrowee; |
||||
} |
||||
|
||||
@ -1,41 +0,0 @@
@@ -1,41 +0,0 @@
|
||||
digraph { |
||||
rankdir=LR; |
||||
overlap=false; |
||||
dpi=300.0; |
||||
node [shape="plaintext"]; |
||||
|
||||
table0[label=<<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> |
||||
<TR><TD COLSPAN="2" SIDES="B">world</TD></TR> |
||||
<TR><TD>name</TD><TD>value</TD></TR> |
||||
<TR><TD>ptr</TD><TD PORT="pointer2"></TD></TR> |
||||
<TR><TD>len</TD><TD>5</TD></TR> |
||||
</TABLE>>]; |
||||
|
||||
table3[label=<<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> |
||||
<TR><TD COLSPAN="2" SIDES="B">s</TD></TR> |
||||
<TR><TD>name</TD><TD>value</TD></TR> |
||||
<TR><TD>ptr</TD><TD PORT="pointer"></TD></TR> |
||||
<TR><TD>len</TD><TD>11</TD></TR> |
||||
<TR><TD>capacity</TD><TD>11</TD></TR> |
||||
</TABLE>>]; |
||||
table4[label=<<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> |
||||
<TR><TD>index</TD><TD>value</TD></TR> |
||||
<TR><TD PORT="pointee">0</TD><TD>h</TD></TR> |
||||
<TR><TD>1</TD><TD>e</TD></TR> |
||||
<TR><TD>2</TD><TD>l</TD></TR> |
||||
<TR><TD>3</TD><TD>l</TD></TR> |
||||
<TR><TD>4</TD><TD>o</TD></TR> |
||||
<TR><TD>5</TD><TD> </TD></TR> |
||||
<TR><TD PORT="pointee2">6</TD><TD>w</TD></TR> |
||||
<TR><TD>7</TD><TD>o</TD></TR> |
||||
<TR><TD>8</TD><TD>r</TD></TR> |
||||
<TR><TD>9</TD><TD>l</TD></TR> |
||||
<TR><TD>10</TD><TD>d</TD></TR> |
||||
</TABLE>>]; |
||||
|
||||
|
||||
edge[tailclip="false"]; |
||||
table0:pointer2:c -> table4:pointee2; |
||||
table3:pointer:c -> table4:pointee; |
||||
} |
||||
|
||||
@ -1,24 +0,0 @@
@@ -1,24 +0,0 @@
|
||||
digraph { |
||||
rankdir=LR; |
||||
overlap=false; |
||||
dpi=300.0; |
||||
node [shape="plaintext"]; |
||||
|
||||
table0[label=<<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> |
||||
<TR><TD COLSPAN="2" SIDES="B">Cons</TD></TR> |
||||
<TR><TD>i32</TD><TD><TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> |
||||
<TR><TD COLSPAN="2" SIDES="B">Cons</TD></TR> |
||||
<TR><TD>i32</TD><TD><TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> |
||||
<TR><TD COLSPAN="2" SIDES="B">Cons</TD></TR> |
||||
<TR><TD>i32</TD><TD><TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> |
||||
<TR><TD COLSPAN="2" SIDES="B">Cons</TD></TR> |
||||
<TR><TD>i32</TD><TD><TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> |
||||
<TR><TD COLSPAN="2" SIDES="B">Cons</TD></TR> |
||||
<TR><TD>i32</TD><TD>∞</TD></TR> |
||||
</TABLE></TD></TR> |
||||
</TABLE></TD></TR> |
||||
</TABLE></TD></TR> |
||||
</TABLE></TD></TR> |
||||
</TABLE>>]; |
||||
} |
||||
|
||||
@ -1,18 +0,0 @@
@@ -1,18 +0,0 @@
|
||||
digraph { |
||||
rankdir=LR; |
||||
overlap=false; |
||||
dpi=300.0; |
||||
node [shape="plaintext"]; |
||||
|
||||
table0[label=< |
||||
<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> |
||||
<TR><TD COLSPAN="2" SIDES="B">Cons</TD></TR> |
||||
<TR><TD>i32</TD><TD> |
||||
<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> |
||||
<TR><TD SIDES="B">Box</TD></TR> |
||||
<TR><TD>usize</TD></TR> |
||||
</TABLE> |
||||
</TD></TR> |
||||
</TABLE>>]; |
||||
} |
||||
|
||||
@ -1,51 +0,0 @@
@@ -1,51 +0,0 @@
|
||||
digraph { |
||||
rankdir=LR; |
||||
overlap=false; |
||||
dpi=300.0; |
||||
node [shape="plaintext"]; |
||||
|
||||
table4[label=<<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> |
||||
<TR><TD SIDES="B">b</TD><TD SIDES="B" PORT="ptr4"></TD></TR> |
||||
</TABLE>>]; |
||||
|
||||
table5[label=<<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> |
||||
<TR><TD PORT="pte4">3</TD><TD PORT="ptr5"> </TD></TR> |
||||
</TABLE>>]; |
||||
|
||||
|
||||
table0[label=<<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> |
||||
<TR><TD SIDES="B">a</TD><TD SIDES="B" PORT="ptr0"></TD></TR> |
||||
</TABLE>>]; |
||||
|
||||
table1[label=<<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> |
||||
<TR><TD PORT="pte0">5</TD><TD PORT="ptr1"> </TD></TR> |
||||
</TABLE>>]; |
||||
|
||||
table2[label=<<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> |
||||
<TR><TD PORT="pte1">10</TD><TD PORT="ptr2"> </TD></TR> |
||||
</TABLE>>]; |
||||
|
||||
table3[label=<<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> |
||||
<TR><TD PORT="pte2">Nil</TD></TR> |
||||
</TABLE>>]; |
||||
|
||||
|
||||
table6[label=<<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> |
||||
<TR><TD SIDES="B">c</TD><TD SIDES="B" PORT="ptr6"></TD></TR> |
||||
</TABLE>>]; |
||||
|
||||
table7[label=<<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> |
||||
<TR><TD PORT="pte6">4</TD><TD PORT="ptr7"> </TD></TR> |
||||
</TABLE>>]; |
||||
|
||||
|
||||
edge[tailclip="false"]; |
||||
table0:ptr0:c -> table1:pte0; |
||||
table1:ptr1:c -> table2:pte1; |
||||
table2:ptr2:c -> table3:pte2; |
||||
table4:ptr4:c -> table5:pte4; |
||||
table5:ptr5:c -> table1:pte0; |
||||
table6:ptr6:c -> table7:pte6; |
||||
table7:ptr7:c -> table1:pte0; |
||||
} |
||||
|
||||
@ -1,33 +0,0 @@
@@ -1,33 +0,0 @@
|
||||
body.light .does_not_compile, |
||||
body.light .panics, |
||||
body.light .not_desired_behavior, |
||||
body.rust .does_not_compile, |
||||
body.rust .panics, |
||||
body.rust .not_desired_behavior { |
||||
background: #fff1f1; |
||||
} |
||||
|
||||
body.coal .does_not_compile, |
||||
body.coal .panics, |
||||
body.coal .not_desired_behavior, |
||||
body.navy .does_not_compile, |
||||
body.navy .panics, |
||||
body.navy .not_desired_behavior, |
||||
body.ayu .does_not_compile, |
||||
body.ayu .panics, |
||||
body.ayu .not_desired_behavior { |
||||
background: #501f21; |
||||
} |
||||
|
||||
.ferris { |
||||
position: absolute; |
||||
z-index: 99; |
||||
right: 5px; |
||||
top: 30px; |
||||
width: 10%; |
||||
height: auto; |
||||
} |
||||
|
||||
.ferris-explain { |
||||
width: 100px; |
||||
} |
||||
@ -1,51 +0,0 @@
@@ -1,51 +0,0 @@
|
||||
var ferrisTypes = [ |
||||
{ |
||||
attr: 'does_not_compile', |
||||
title: 'This code does not compile!' |
||||
}, |
||||
{ |
||||
attr: 'panics', |
||||
title: 'This code panics!' |
||||
}, |
||||
{ |
||||
attr: 'unsafe', |
||||
title: 'This code block contains unsafe code.' |
||||
}, |
||||
{ |
||||
attr: 'not_desired_behavior', |
||||
title: 'This code does not produce the desired behavior.' |
||||
} |
||||
] |
||||
|
||||
document.addEventListener('DOMContentLoaded', () => { |
||||
for (var ferrisType of ferrisTypes) { |
||||
attachFerrises(ferrisType) |
||||
} |
||||
}) |
||||
|
||||
function attachFerrises (type) { |
||||
var elements = document.getElementsByClassName(type.attr) |
||||
|
||||
for (var codeBlock of elements) { |
||||
var lines = codeBlock.textContent.split(/\r|\r\n|\n/).length - 1; |
||||
|
||||
if (lines >= 4) { |
||||
attachFerris(codeBlock, type) |
||||
} |
||||
} |
||||
} |
||||
|
||||
function attachFerris (element, type) { |
||||
var a = document.createElement('a') |
||||
a.setAttribute('href', 'ch00-00-introduction.html#ferris') |
||||
a.setAttribute('target', '_blank') |
||||
|
||||
var img = document.createElement('img') |
||||
img.setAttribute('src', 'img/ferris/' + type.attr + '.svg') |
||||
img.setAttribute('title', type.title) |
||||
img.className = 'ferris' |
||||
|
||||
a.appendChild(img) |
||||
|
||||
element.parentElement.insertBefore(a, element) |
||||
} |
||||
@ -1,132 +0,0 @@
@@ -1,132 +0,0 @@
|
||||
# The Rust Programming Language |
||||
|
||||
[Foreword](foreword.md) |
||||
[Introduction](ch00-00-introduction.md) |
||||
|
||||
## Getting started |
||||
|
||||
- [Getting Started](ch01-00-getting-started.md) |
||||
- [Installation](ch01-01-installation.md) |
||||
- [Hello, World!](ch01-02-hello-world.md) |
||||
- [Hello, Cargo!](ch01-03-hello-cargo.md) |
||||
|
||||
- [Programming a Guessing Game](ch02-00-guessing-game-tutorial.md) |
||||
|
||||
- [Common Programming Concepts](ch03-00-common-programming-concepts.md) |
||||
- [Variables and Mutability](ch03-01-variables-and-mutability.md) |
||||
- [Data Types](ch03-02-data-types.md) |
||||
- [How Functions Work](ch03-03-how-functions-work.md) |
||||
- [Comments](ch03-04-comments.md) |
||||
- [Control Flow](ch03-05-control-flow.md) |
||||
|
||||
- [Understanding Ownership](ch04-00-understanding-ownership.md) |
||||
- [What is Ownership?](ch04-01-what-is-ownership.md) |
||||
- [References & Borrowing](ch04-02-references-and-borrowing.md) |
||||
- [Slices](ch04-03-slices.md) |
||||
|
||||
- [Using Structs to Structure Related Data](ch05-00-structs.md) |
||||
- [Defining and Instantiating Structs](ch05-01-defining-structs.md) |
||||
- [An Example Program Using Structs](ch05-02-example-structs.md) |
||||
- [Method Syntax](ch05-03-method-syntax.md) |
||||
|
||||
- [Enums and Pattern Matching](ch06-00-enums.md) |
||||
- [Defining an Enum](ch06-01-defining-an-enum.md) |
||||
- [The `match` Control Flow Operator](ch06-02-match.md) |
||||
- [Concise Control Flow with `if let`](ch06-03-if-let.md) |
||||
|
||||
## Basic Rust Literacy |
||||
|
||||
- [Packages, Crates, and Modules](ch07-00-packages-crates-and-modules.md) |
||||
- [Packages and crates for making libraries and executables](ch07-01-packages-and-crates-for-making-libraries-and-executables.md) |
||||
- [Modules and `use` to control scope and privacy](ch07-02-modules-and-use-to-control-scope-and-privacy.md) |
||||
|
||||
- [Common Collections](ch08-00-common-collections.md) |
||||
- [Vectors](ch08-01-vectors.md) |
||||
- [Strings](ch08-02-strings.md) |
||||
- [Hash Maps](ch08-03-hash-maps.md) |
||||
|
||||
- [Error Handling](ch09-00-error-handling.md) |
||||
- [Unrecoverable Errors with `panic!`](ch09-01-unrecoverable-errors-with-panic.md) |
||||
- [Recoverable Errors with `Result`](ch09-02-recoverable-errors-with-result.md) |
||||
- [To `panic!` or Not to `panic!`](ch09-03-to-panic-or-not-to-panic.md) |
||||
|
||||
- [Generic Types, Traits, and Lifetimes](ch10-00-generics.md) |
||||
- [Generic Data Types](ch10-01-syntax.md) |
||||
- [Traits: Defining Shared Behavior](ch10-02-traits.md) |
||||
- [Validating References with Lifetimes](ch10-03-lifetime-syntax.md) |
||||
|
||||
- [Testing](ch11-00-testing.md) |
||||
- [Writing tests](ch11-01-writing-tests.md) |
||||
- [Running tests](ch11-02-running-tests.md) |
||||
- [Test Organization](ch11-03-test-organization.md) |
||||
|
||||
- [An I/O Project: Building a Command Line Program](ch12-00-an-io-project.md) |
||||
- [Accepting Command Line Arguments](ch12-01-accepting-command-line-arguments.md) |
||||
- [Reading a File](ch12-02-reading-a-file.md) |
||||
- [Refactoring to Improve Modularity and Error Handling](ch12-03-improving-error-handling-and-modularity.md) |
||||
- [Developing the Library’s Functionality with Test Driven Development](ch12-04-testing-the-librarys-functionality.md) |
||||
- [Working with Environment Variables](ch12-05-working-with-environment-variables.md) |
||||
- [Writing Error Messages to Standard Error Instead of Standard Output](ch12-06-writing-to-stderr-instead-of-stdout.md) |
||||
|
||||
## Thinking in Rust |
||||
|
||||
- [Functional Language Features: Iterators and Closures](ch13-00-functional-features.md) |
||||
- [Closures: Anonymous Functions that Can Capture Their Environment](ch13-01-closures.md) |
||||
- [Processing a Series of Items with Iterators](ch13-02-iterators.md) |
||||
- [Improving Our I/O Project](ch13-03-improving-our-io-project.md) |
||||
- [Comparing Performance: Loops vs. Iterators](ch13-04-performance.md) |
||||
|
||||
- [More about Cargo and Crates.io](ch14-00-more-about-cargo.md) |
||||
- [Customizing Builds with Release Profiles](ch14-01-release-profiles.md) |
||||
- [Publishing a Crate to Crates.io](ch14-02-publishing-to-crates-io.md) |
||||
- [Cargo Workspaces](ch14-03-cargo-workspaces.md) |
||||
- [Installing Binaries from Crates.io with `cargo install`](ch14-04-installing-binaries.md) |
||||
- [Extending Cargo with Custom Commands](ch14-05-extending-cargo.md) |
||||
|
||||
- [Smart Pointers](ch15-00-smart-pointers.md) |
||||
- [`Box<T>` Points to Data on the Heap and Has a Known Size](ch15-01-box.md) |
||||
- [The `Deref` Trait Allows Access to the Data Through a Reference](ch15-02-deref.md) |
||||
- [The `Drop` Trait Runs Code on Cleanup](ch15-03-drop.md) |
||||
- [`Rc<T>`, the Reference Counted Smart Pointer](ch15-04-rc.md) |
||||
- [`RefCell<T>` and the Interior Mutability Pattern](ch15-05-interior-mutability.md) |
||||
- [Creating Reference Cycles and Leaking Memory is Safe](ch15-06-reference-cycles.md) |
||||
|
||||
- [Fearless Concurrency](ch16-00-concurrency.md) |
||||
- [Threads](ch16-01-threads.md) |
||||
- [Message Passing](ch16-02-message-passing.md) |
||||
- [Shared State](ch16-03-shared-state.md) |
||||
- [Extensible Concurrency: `Sync` and `Send`](ch16-04-extensible-concurrency-sync-and-send.md) |
||||
|
||||
- [Object Oriented Programming Features of Rust](ch17-00-oop.md) |
||||
- [Characteristics of Object-Oriented Languages](ch17-01-what-is-oo.md) |
||||
- [Using Trait Objects that Allow for Values of Different Types](ch17-02-trait-objects.md) |
||||
- [Implementing an Object-Oriented Design Pattern](ch17-03-oo-design-patterns.md) |
||||
|
||||
## Advanced Topics |
||||
|
||||
- [Patterns Match the Structure of Values](ch18-00-patterns.md) |
||||
- [All the Places Patterns May be Used](ch18-01-all-the-places-for-patterns.md) |
||||
- [Refutability: Whether a Pattern Might Fail to Match](ch18-02-refutability.md) |
||||
- [All the Pattern Syntax](ch18-03-pattern-syntax.md) |
||||
|
||||
- [Advanced Features](ch19-00-advanced-features.md) |
||||
- [Unsafe Rust](ch19-01-unsafe-rust.md) |
||||
- [Advanced Lifetimes](ch19-02-advanced-lifetimes.md) |
||||
- [Advanced Traits](ch19-03-advanced-traits.md) |
||||
- [Advanced Types](ch19-04-advanced-types.md) |
||||
- [Advanced Functions & Closures](ch19-05-advanced-functions-and-closures.md) |
||||
- [Macros](ch19-06-macros.md) |
||||
|
||||
- [Final Project: Building a Multithreaded Web Server](ch20-00-final-project-a-web-server.md) |
||||
- [A Single Threaded Web Server](ch20-01-single-threaded.md) |
||||
- [Turning our Single Threaded Server into a Multithreaded Server](ch20-02-multithreaded.md) |
||||
- [Graceful Shutdown and Cleanup](ch20-03-graceful-shutdown-and-cleanup.md) |
||||
|
||||
- [Appendix](appendix-00.md) |
||||
- [A - Keywords](appendix-01-keywords.md) |
||||
- [B - Operators and Symbols](appendix-02-operators.md) |
||||
- [C - Derivable Traits](appendix-03-derivable-traits.md) |
||||
- [D - Useful Development Tools](appendix-04-useful-development-tools.md) |
||||
- [E - Editions](appendix-05-editions.md) |
||||
- [F - Translations](appendix-06-translation.md) |
||||
- [G - How Rust is Made and “Nightly Rust”](appendix-07-nightly-rust.md) |
||||
@ -1,10 +0,0 @@
@@ -1,10 +0,0 @@
|
||||
# Appendix |
||||
|
||||
The 2018 edition of the book is no longer distributed with Rust's documentation. |
||||
|
||||
If you came here via a link or web search, you may want to check out [the current |
||||
version of the book](../appendix-00.html) instead. |
||||
|
||||
If you have an internet connection, you can [find a copy distributed with |
||||
Rust |
||||
1.30](https://doc.rust-lang.org/1.30.0/book/2018-edition/appendix-00.html). |
||||
@ -1,10 +0,0 @@
@@ -1,10 +0,0 @@
|
||||
## Appendix A: Keywords |
||||
|
||||
The 2018 edition of the book is no longer distributed with Rust's documentation. |
||||
|
||||
If you came here via a link or web search, you may want to check out [the current |
||||
version of the book](../appendix-01-keywords.html) instead. |
||||
|
||||
If you have an internet connection, you can [find a copy distributed with |
||||
Rust |
||||
1.30](https://doc.rust-lang.org/1.30.0/book/2018-edition/appendix-01-keywords.html). |
||||
@ -1,10 +0,0 @@
@@ -1,10 +0,0 @@
|
||||
## Appendix B: Operators and Symbols |
||||
|
||||
The 2018 edition of the book is no longer distributed with Rust's documentation. |
||||
|
||||
If you came here via a link or web search, you may want to check out [the current |
||||
version of the book](../appendix-02-operators.html) instead. |
||||
|
||||
If you have an internet connection, you can [find a copy distributed with |
||||
Rust |
||||
1.30](https://doc.rust-lang.org/1.30.0/book/2018-edition/appendix-02-operators.html). |
||||
@ -1,10 +0,0 @@
@@ -1,10 +0,0 @@
|
||||
## Appendix C: Derivable Traits |
||||
|
||||
The 2018 edition of the book is no longer distributed with Rust's documentation. |
||||
|
||||
If you came here via a link or web search, you may want to check out [the current |
||||
version of the book](../appendix-03-derivable-traits.html) instead. |
||||
|
||||
If you have an internet connection, you can [find a copy distributed with |
||||
Rust |
||||
1.30](https://doc.rust-lang.org/1.30.0/book/2018-edition/appendix-03-derivable-traits.html). |
||||
@ -1,10 +0,0 @@
@@ -1,10 +0,0 @@
|
||||
# Appendix D - Useful Development Tools |
||||
|
||||
The 2018 edition of the book is no longer distributed with Rust's documentation. |
||||
|
||||
If you came here via a link or web search, you may want to check out [the current |
||||
version of the book](../appendix-04-useful-development-tools.html) instead. |
||||
|
||||
If you have an internet connection, you can [find a copy distributed with |
||||
Rust |
||||
1.30](https://doc.rust-lang.org/1.30.0/book/2018-edition/appendix-04-useful-development-tools.html). |
||||
@ -1,10 +0,0 @@
@@ -1,10 +0,0 @@
|
||||
# Appendix E - Editions |
||||
|
||||
The 2018 edition of the book is no longer distributed with Rust's documentation. |
||||
|
||||
If you came here via a link or web search, you may want to check out [the current |
||||
version of the book](../appendix-05-editions.html) instead. |
||||
|
||||
If you have an internet connection, you can [find a copy distributed with |
||||
Rust |
||||
1.30](https://doc.rust-lang.org/1.30.0/book/2018-edition/appendix-05-editions.html). |
||||
@ -1,10 +0,0 @@
@@ -1,10 +0,0 @@
|
||||
## Appendix F: Translations of the Book |
||||
|
||||
The 2018 edition of the book is no longer distributed with Rust's documentation. |
||||
|
||||
If you came here via a link or web search, you may want to check out [the current |
||||
version of the book](../appendix-06-translation.html) instead. |
||||
|
||||
If you have an internet connection, you can [find a copy distributed with |
||||
Rust |
||||
1.30](https://doc.rust-lang.org/1.30.0/book/2018-edition/appendix-06-translation.html). |
||||
@ -1,10 +0,0 @@
@@ -1,10 +0,0 @@
|
||||
# Appendix G - How Rust is Made and “Nightly Rust” |
||||
|
||||
The 2018 edition of the book is no longer distributed with Rust's documentation. |
||||
|
||||
If you came here via a link or web search, you may want to check out [the current |
||||
version of the book](../appendix-07-nightly-rust.html) instead. |
||||
|
||||
If you have an internet connection, you can [find a copy distributed with |
||||
Rust |
||||
1.30](https://doc.rust-lang.org/1.30.0/book/2018-edition/appendix-07-nightly-rust.html). |
||||
@ -1,10 +0,0 @@
@@ -1,10 +0,0 @@
|
||||
# Introduction |
||||
|
||||
The 2018 edition of the book is no longer distributed with Rust's documentation. |
||||
|
||||
If you came here via a link or web search, you may want to check out [the current |
||||
version of the book](../ch00-00-introduction.html) instead. |
||||
|
||||
If you have an internet connection, you can [find a copy distributed with |
||||
Rust |
||||
1.30](https://doc.rust-lang.org/1.30.0/book/2018-edition/ch00-00-introduction.html). |
||||
@ -1,10 +0,0 @@
@@ -1,10 +0,0 @@
|
||||
# Getting Started |
||||
|
||||
The 2018 edition of the book is no longer distributed with Rust's documentation. |
||||
|
||||
If you came here via a link or web search, you may want to check out [the current |
||||
version of the book](../ch01-00-getting-started.html) instead. |
||||
|
||||
If you have an internet connection, you can [find a copy distributed with |
||||
Rust |
||||
1.30](https://doc.rust-lang.org/1.30.0/book/2018-edition/ch10-00-getting-started.html). |
||||
@ -1,10 +0,0 @@
@@ -1,10 +0,0 @@
|
||||
## Installation |
||||
|
||||
The 2018 edition of the book is no longer distributed with Rust's documentation. |
||||
|
||||
If you came here via a link or web search, you may want to check out [the current |
||||
version of the book](../ch01-01-installation.html) instead. |
||||
|
||||
If you have an internet connection, you can [find a copy distributed with |
||||
Rust |
||||
1.30](https://doc.rust-lang.org/1.30.0/book/2018-edition/ch01-01-installation.html). |
||||
@ -1,10 +0,0 @@
@@ -1,10 +0,0 @@
|
||||
## Hello, World! |
||||
|
||||
The 2018 edition of the book is no longer distributed with Rust's documentation. |
||||
|
||||
If you came here via a link or web search, you may want to check out [the current |
||||
version of the book](../ch01-02-hello-world.html) instead. |
||||
|
||||
If you have an internet connection, you can [find a copy distributed with |
||||
Rust |
||||
1.30](https://doc.rust-lang.org/1.30.0/book/2018-edition/ch01-02-hello-world.html). |
||||
@ -1,10 +0,0 @@
@@ -1,10 +0,0 @@
|
||||
## Hello, Cargo! |
||||
|
||||
The 2018 edition of the book is no longer distributed with Rust's documentation. |
||||
|
||||
If you came here via a link or web search, you may want to check out [the current |
||||
version of the book](../ch01-03-hello-cargo.html) instead. |
||||
|
||||
If you have an internet connection, you can [find a copy distributed with |
||||
Rust |
||||
1.30](https://doc.rust-lang.org/1.30.0/book/2018-edition/ch01-03-hello-cargo.html). |
||||
@ -1,10 +0,0 @@
@@ -1,10 +0,0 @@
|
||||
# Programming a Guessing Game |
||||
|
||||
The 2018 edition of the book is no longer distributed with Rust's documentation. |
||||
|
||||
If you came here via a link or web search, you may want to check out [the current |
||||
version of the book](../ch02-00-guessing-game-tutorial.html) instead. |
||||
|
||||
If you have an internet connection, you can [find a copy distributed with |
||||
Rust |
||||
1.30](https://doc.rust-lang.org/1.30.0/book/2018-edition/ch02-00-guessing-game-tutorial.html). |
||||
@ -1,10 +0,0 @@
@@ -1,10 +0,0 @@
|
||||
# Common Programming Concepts |
||||
|
||||
The 2018 edition of the book is no longer distributed with Rust's documentation. |
||||
|
||||
If you came here via a link or web search, you may want to check out [the current |
||||
version of the book](../ch03-00-common-programming-concepts.html) instead. |
||||
|
||||
If you have an internet connection, you can [find a copy distributed with |
||||
Rust |
||||
1.30](https://doc.rust-lang.org/1.30.0/book/2018-edition/ch03-00-common-programming-concepts.html). |
||||
@ -1,10 +0,0 @@
@@ -1,10 +0,0 @@
|
||||
## Variables and Mutability |
||||
|
||||
The 2018 edition of the book is no longer distributed with Rust's documentation. |
||||
|
||||
If you came here via a link or web search, you may want to check out [the current |
||||
version of the book](../ch03-01-variables-and-mutability.html) instead. |
||||
|
||||
If you have an internet connection, you can [find a copy distributed with |
||||
Rust |
||||
1.30](https://doc.rust-lang.org/1.30.0/book/2018-edition/ch03-01-variables-and-mutability.html). |
||||
@ -1,10 +0,0 @@
@@ -1,10 +0,0 @@
|
||||
## Data Types |
||||
|
||||
The 2018 edition of the book is no longer distributed with Rust's documentation. |
||||
|
||||
If you came here via a link or web search, you may want to check out [the current |
||||
version of the book](../ch03-02-data-types.html) instead. |
||||
|
||||
If you have an internet connection, you can [find a copy distributed with |
||||
Rust |
||||
1.30](https://doc.rust-lang.org/1.30.0/book/2018-edition/ch03-02-data-types.html). |
||||
@ -1,10 +0,0 @@
@@ -1,10 +0,0 @@
|
||||
## Functions |
||||
|
||||
The 2018 edition of the book is no longer distributed with Rust's documentation. |
||||
|
||||
If you came here via a link or web search, you may want to check out [the current |
||||
version of the book](../ch03-03-how-functions-work.html) instead. |
||||
|
||||
If you have an internet connection, you can [find a copy distributed with |
||||
Rust |
||||
1.30](https://doc.rust-lang.org/1.30.0/book/2018-edition/ch03-03-how-functions-work.html). |
||||
@ -1,10 +0,0 @@
@@ -1,10 +0,0 @@
|
||||
## Comments |
||||
|
||||
The 2018 edition of the book is no longer distributed with Rust's documentation. |
||||
|
||||
If you came here via a link or web search, you may want to check out [the current |
||||
version of the book](../ch03-04-comments.html) instead. |
||||
|
||||
If you have an internet connection, you can [find a copy distributed with |
||||
Rust |
||||
1.30](https://doc.rust-lang.org/1.30.0/book/2018-edition/ch03-04-comments.html). |
||||
@ -1,10 +0,0 @@
@@ -1,10 +0,0 @@
|
||||
## Control Flow |
||||
|
||||
The 2018 edition of the book is no longer distributed with Rust's documentation. |
||||
|
||||
If you came here via a link or web search, you may want to check out [the current |
||||
version of the book](../ch03-05-control-flow.html) instead. |
||||
|
||||
If you have an internet connection, you can [find a copy distributed with |
||||
Rust |
||||
1.30](https://doc.rust-lang.org/1.30.0/book/2018-edition/ch03-05-control-flow.html). |
||||
@ -1,10 +0,0 @@
@@ -1,10 +0,0 @@
|
||||
# Understanding Ownership |
||||
|
||||
The 2018 edition of the book is no longer distributed with Rust's documentation. |
||||
|
||||
If you came here via a link or web search, you may want to check out [the current |
||||
version of the book](../ch04-00-understanding-ownership.html) instead. |
||||
|
||||
If you have an internet connection, you can [find a copy distributed with |
||||
Rust |
||||
1.30](https://doc.rust-lang.org/1.30.0/book/2018-edition/ch04-00-understanding-ownership.html). |
||||
@ -1,10 +0,0 @@
@@ -1,10 +0,0 @@
|
||||
## What Is Ownership? |
||||
|
||||
The 2018 edition of the book is no longer distributed with Rust's documentation. |
||||
|
||||
If you came here via a link or web search, you may want to check out [the current |
||||
version of the book](../ch04-01-what-is-ownership.html) instead. |
||||
|
||||
If you have an internet connection, you can [find a copy distributed with |
||||
Rust |
||||
1.30](https://doc.rust-lang.org/1.30.0/book/2018-edition/ch04-01-what-is-ownership.html). |
||||
@ -1,10 +0,0 @@
@@ -1,10 +0,0 @@
|
||||
## References and Borrowing |
||||
|
||||
The 2018 edition of the book is no longer distributed with Rust's documentation. |
||||
|
||||
If you came here via a link or web search, you may want to check out [the current |
||||
version of the book](../ch04-02-references-and-borrowing.html) instead. |
||||
|
||||
If you have an internet connection, you can [find a copy distributed with |
||||
Rust |
||||
1.30](https://doc.rust-lang.org/1.30.0/book/2018-edition/ch04-02-references-and-borrowing.html). |
||||
@ -1,10 +0,0 @@
@@ -1,10 +0,0 @@
|
||||
## The Slice Type |
||||
|
||||
The 2018 edition of the book is no longer distributed with Rust's documentation. |
||||
|
||||
If you came here via a link or web search, you may want to check out [the current |
||||
version of the book](../ch04-03-slices.html) instead. |
||||
|
||||
If you have an internet connection, you can [find a copy distributed with |
||||
Rust |
||||
1.30](https://doc.rust-lang.org/1.30.0/book/2018-edition/ch04-03-slices.html). |
||||
@ -1,10 +0,0 @@
@@ -1,10 +0,0 @@
|
||||
# Using Structs to Structure Related Data |
||||
|
||||
The 2018 edition of the book is no longer distributed with Rust's documentation. |
||||
|
||||
If you came here via a link or web search, you may want to check out [the current |
||||
version of the book](../ch05-00-structs.html) instead. |
||||
|
||||
If you have an internet connection, you can [find a copy distributed with |
||||
Rust |
||||
1.30](https://doc.rust-lang.org/1.30.0/book/2018-edition/ch05-00-structs.html). |
||||
@ -1,10 +0,0 @@
@@ -1,10 +0,0 @@
|
||||
## Defining and Instantiating Structs |
||||
|
||||
The 2018 edition of the book is no longer distributed with Rust's documentation. |
||||
|
||||
If you came here via a link or web search, you may want to check out [the current |
||||
version of the book](../ch05-01-defining-structs.html) instead. |
||||
|
||||
If you have an internet connection, you can [find a copy distributed with |
||||
Rust |
||||
1.30](https://doc.rust-lang.org/1.30.0/book/2018-edition/ch05-01-defining-structs.html). |
||||
@ -1,10 +0,0 @@
@@ -1,10 +0,0 @@
|
||||
## An Example Program Using Structs |
||||
|
||||
The 2018 edition of the book is no longer distributed with Rust's documentation. |
||||
|
||||
If you came here via a link or web search, you may want to check out [the current |
||||
version of the book](../ch05-02-example-structs.html) instead. |
||||
|
||||
If you have an internet connection, you can [find a copy distributed with |
||||
Rust |
||||
1.30](https://doc.rust-lang.org/1.30.0/book/2018-edition/ch05-02-example-structs.html). |
||||
@ -1,10 +0,0 @@
@@ -1,10 +0,0 @@
|
||||
## Method Syntax |
||||
|
||||
The 2018 edition of the book is no longer distributed with Rust's documentation. |
||||
|
||||
If you came here via a link or web search, you may want to check out [the current |
||||
version of the book](../ch05-03-method-syntax.html) instead. |
||||
|
||||
If you have an internet connection, you can [find a copy distributed with |
||||
Rust |
||||
1.30](https://doc.rust-lang.org/1.30.0/book/2018-edition/ch05-03-method-syntax.html). |
||||
@ -1,10 +0,0 @@
@@ -1,10 +0,0 @@
|
||||
# Enums and Pattern Matching |
||||
|
||||
The 2018 edition of the book is no longer distributed with Rust's documentation. |
||||
|
||||
If you came here via a link or web search, you may want to check out [the current |
||||
version of the book](../ch06-00-enums.html) instead. |
||||
|
||||
If you have an internet connection, you can [find a copy distributed with |
||||
Rust |
||||
1.30](https://doc.rust-lang.org/1.30.0/book/2018-edition/ch06-00-enums.html). |
||||
@ -1,10 +0,0 @@
@@ -1,10 +0,0 @@
|
||||
## Defining an Enum |
||||
|
||||
The 2018 edition of the book is no longer distributed with Rust's documentation. |
||||
|
||||
If you came here via a link or web search, you may want to check out [the current |
||||
version of the book](../ch06-01-defining-an-enum.html) instead. |
||||
|
||||
If you have an internet connection, you can [find a copy distributed with |
||||
Rust |
||||
1.30](https://doc.rust-lang.org/1.30.0/book/2018-edition/ch06-01-defining-an-enum.html). |
||||
@ -1,10 +0,0 @@
@@ -1,10 +0,0 @@
|
||||
## The `match` Control Flow Operator |
||||
|
||||
The 2018 edition of the book is no longer distributed with Rust's documentation. |
||||
|
||||
If you came here via a link or web search, you may want to check out [the current |
||||
version of the book](../ch06-02-match.html) instead. |
||||
|
||||
If you have an internet connection, you can [find a copy distributed with |
||||
Rust |
||||
1.30](https://doc.rust-lang.org/1.30.0/book/2018-edition/ch06-02-match.html). |
||||
@ -1,10 +0,0 @@
@@ -1,10 +0,0 @@
|
||||
## Concise Control Flow with `if let` |
||||
|
||||
The 2018 edition of the book is no longer distributed with Rust's documentation. |
||||
|
||||
If you came here via a link or web search, you may want to check out [the current |
||||
version of the book](../ch06-03-if-let.html) instead. |
||||
|
||||
If you have an internet connection, you can [find a copy distributed with |
||||
Rust |
||||
1.30](https://doc.rust-lang.org/1.30.0/book/2018-edition/ch06-03-if-let.html). |
||||
@ -1,10 +0,0 @@
@@ -1,10 +0,0 @@
|
||||
# Packages, Crates, and Modules |
||||
|
||||
The 2018 edition of the book is no longer distributed with Rust's documentation. |
||||
|
||||
If you came here via a link or web search, you may want to check out [the current |
||||
version of the book](../index.html) instead. |
||||
|
||||
If you have an internet connection, you can [find a copy distributed with |
||||
Rust |
||||
1.30](https://doc.rust-lang.org/1.30.0/book/2018-edition/ch07-00-packages-crates-and-modules.html). |
||||
@ -1,10 +0,0 @@
@@ -1,10 +0,0 @@
|
||||
## Packages and Crates for Making Libraries and Executables |
||||
|
||||
The 2018 edition of the book is no longer distributed with Rust's documentation. |
||||
|
||||
If you came here via a link or web search, you may want to check out [the current |
||||
version of the book](../index.html) instead. |
||||
|
||||
If you have an internet connection, you can [find a copy distributed with |
||||
Rust |
||||
1.30](https://doc.rust-lang.org/1.30.0/book/2018-edition/ch07-01-packages-and-crates-for-making-libraries-and-executables.html). |
||||
@ -1,10 +0,0 @@
@@ -1,10 +0,0 @@
|
||||
## The Module System to Control Scope and Privacy |
||||
|
||||
The 2018 edition of the book is no longer distributed with Rust's documentation. |
||||
|
||||
If you came here via a link or web search, you may want to check out [the current |
||||
version of the book](../index.html) instead. |
||||
|
||||
If you have an internet connection, you can [find a copy distributed with |
||||
Rust |
||||
1.30](https://doc.rust-lang.org/1.30.0/book/2018-edition/ch07-02-modules-and-use-to-control-scope-and-privacy.html). |
||||
@ -1,10 +0,0 @@
@@ -1,10 +0,0 @@
|
||||
# Common Collections |
||||
|
||||
The 2018 edition of the book is no longer distributed with Rust's documentation. |
||||
|
||||
If you came here via a link or web search, you may want to check out [the current |
||||
version of the book](../ch08-00-common-collections.html) instead. |
||||
|
||||
If you have an internet connection, you can [find a copy distributed with |
||||
Rust |
||||
1.30](https://doc.rust-lang.org/1.30.0/book/2018-edition/ch08-00-common-collections.html). |
||||
@ -1,10 +0,0 @@
@@ -1,10 +0,0 @@
|
||||
## Storing Lists of Values with Vectors |
||||
|
||||
The 2018 edition of the book is no longer distributed with Rust's documentation. |
||||
|
||||
If you came here via a link or web search, you may want to check out [the current |
||||
version of the book](../ch08-01-vectors.html) instead. |
||||
|
||||
If you have an internet connection, you can [find a copy distributed with |
||||
Rust |
||||
1.30](https://doc.rust-lang.org/1.30.0/book/2018-edition/ch08-01-vectors.html). |
||||
@ -1,10 +0,0 @@
@@ -1,10 +0,0 @@
|
||||
## Storing UTF-8 Encoded Text with Strings |
||||
|
||||
The 2018 edition of the book is no longer distributed with Rust's documentation. |
||||
|
||||
If you came here via a link or web search, you may want to check out [the current |
||||
version of the book](../ch08-02-strings.html) instead. |
||||
|
||||
If you have an internet connection, you can [find a copy distributed with |
||||
Rust |
||||
1.30](https://doc.rust-lang.org/1.30.0/book/2018-edition/ch08-02-strings.html). |
||||
@ -1,10 +0,0 @@
@@ -1,10 +0,0 @@
|
||||
## Storing Keys with Associated Values in Hash Maps |
||||
|
||||
The 2018 edition of the book is no longer distributed with Rust's documentation. |
||||
|
||||
If you came here via a link or web search, you may want to check out [the current |
||||
version of the book](../ch08-03-hash-maps.html) instead. |
||||
|
||||
If you have an internet connection, you can [find a copy distributed with |
||||
Rust |
||||
1.30](https://doc.rust-lang.org/1.30.0/book/2018-edition/ch08-03-hash-maps.html). |
||||
@ -1,10 +0,0 @@
@@ -1,10 +0,0 @@
|
||||
# Error Handling |
||||
|
||||
The 2018 edition of the book is no longer distributed with Rust's documentation. |
||||
|
||||
If you came here via a link or web search, you may want to check out [the current |
||||
version of the book](../ch09-00-error-handling.html) instead. |
||||
|
||||
If you have an internet connection, you can [find a copy distributed with |
||||
Rust |
||||
1.30](https://doc.rust-lang.org/1.30.0/book/2018-edition/ch09-00-error-handling.html). |
||||
@ -1,10 +0,0 @@
@@ -1,10 +0,0 @@
|
||||
## Unrecoverable Errors with `panic!` |
||||
|
||||
The 2018 edition of the book is no longer distributed with Rust's documentation. |
||||
|
||||
If you came here via a link or web search, you may want to check out [the current |
||||
version of the book](../ch09-01-unrecoverable-errors-with-panic.html) instead. |
||||
|
||||
If you have an internet connection, you can [find a copy distributed with |
||||
Rust |
||||
1.30](https://doc.rust-lang.org/1.30.0/book/2018-edition/ch09-01-unrecoverable-errors-with-panic.html). |
||||
@ -1,10 +0,0 @@
@@ -1,10 +0,0 @@
|
||||
## Recoverable Errors with `Result` |
||||
|
||||
The 2018 edition of the book is no longer distributed with Rust's documentation. |
||||
|
||||
If you came here via a link or web search, you may want to check out [the current |
||||
version of the book](../ch09-02-recoverable-errors-with-result.html) instead. |
||||
|
||||
If you have an internet connection, you can [find a copy distributed with |
||||
Rust |
||||
1.30](https://doc.rust-lang.org/1.30.0/book/2018-edition/ch09-02-recoverable-errors-with-result.html). |
||||
@ -1,10 +0,0 @@
@@ -1,10 +0,0 @@
|
||||
## To `panic!` or Not to `panic!` |
||||
|
||||
The 2018 edition of the book is no longer distributed with Rust's documentation. |
||||
|
||||
If you came here via a link or web search, you may want to check out [the current |
||||
version of the book](../ch09-03-to-panic-or-not-to-panic.html) instead. |
||||
|
||||
If you have an internet connection, you can [find a copy distributed with |
||||
Rust |
||||
1.30](https://doc.rust-lang.org/1.30.0/book/2018-edition/ch09-03-to-panic-or-not-to-panic.html). |
||||
@ -1,10 +0,0 @@
@@ -1,10 +0,0 @@
|
||||
# Generic Types, Traits, and Lifetimes |
||||
|
||||
The 2018 edition of the book is no longer distributed with Rust's documentation. |
||||
|
||||
If you came here via a link or web search, you may want to check out [the current |
||||
version of the book](../ch10-00-generics.html) instead. |
||||
|
||||
If you have an internet connection, you can [find a copy distributed with |
||||
Rust |
||||
1.30](https://doc.rust-lang.org/1.30.0/book/2018-edition/ch10-00-generics.html). |
||||
@ -1,10 +0,0 @@
@@ -1,10 +0,0 @@
|
||||
## Generic Data Types |
||||
|
||||
The 2018 edition of the book is no longer distributed with Rust's documentation. |
||||
|
||||
If you came here via a link or web search, you may want to check out [the current |
||||
version of the book](../ch10-01-syntax.html) instead. |
||||
|
||||
If you have an internet connection, you can [find a copy distributed with |
||||
Rust |
||||
1.30](https://doc.rust-lang.org/1.30.0/book/2018-edition/ch10-01-syntax.html). |
||||
@ -1,10 +0,0 @@
@@ -1,10 +0,0 @@
|
||||
## Traits: Defining Shared Behavior |
||||
|
||||
The 2018 edition of the book is no longer distributed with Rust's documentation. |
||||
|
||||
If you came here via a link or web search, you may want to check out [the current |
||||
version of the book](../ch10-02-traits.html) instead. |
||||
|
||||
If you have an internet connection, you can [find a copy distributed with |
||||
Rust |
||||
1.30](https://doc.rust-lang.org/1.30.0/book/2018-edition/ch10-02-traits.html). |
||||
@ -1,10 +0,0 @@
@@ -1,10 +0,0 @@
|
||||
## Validating References with Lifetimes |
||||
|
||||
The 2018 edition of the book is no longer distributed with Rust's documentation. |
||||
|
||||
If you came here via a link or web search, you may want to check out [the current |
||||
version of the book](../ch10-03-lifetime-syntax.html) instead. |
||||
|
||||
If you have an internet connection, you can [find a copy distributed with |
||||
Rust |
||||
1.30](https://doc.rust-lang.org/1.30.0/book/2018-edition/ch10-03-lifetime-syntax.html). |
||||
@ -1,10 +0,0 @@
@@ -1,10 +0,0 @@
|
||||
# Writing Automated Tests |
||||
|
||||
The 2018 edition of the book is no longer distributed with Rust's documentation. |
||||
|
||||
If you came here via a link or web search, you may want to check out [the current |
||||
version of the book](../ch11-00-testing.html) instead. |
||||
|
||||
If you have an internet connection, you can [find a copy distributed with |
||||
Rust |
||||
1.30](https://doc.rust-lang.org/1.30.0/book/2018-edition/ch11-00-testing.html). |
||||
@ -1,10 +0,0 @@
@@ -1,10 +0,0 @@
|
||||
## How to Write Tests |
||||
|
||||
The 2018 edition of the book is no longer distributed with Rust's documentation. |
||||
|
||||
If you came here via a link or web search, you may want to check out [the current |
||||
version of the book](../ch11-01-writing-tests.html) instead. |
||||
|
||||
If you have an internet connection, you can [find a copy distributed with |
||||
Rust |
||||
1.30](https://doc.rust-lang.org/1.30.0/book/2018-edition/ch11-01-writing-tests.html). |
||||
@ -1,10 +0,0 @@
@@ -1,10 +0,0 @@
|
||||
## Controlling How Tests Are Run |
||||
|
||||
The 2018 edition of the book is no longer distributed with Rust's documentation. |
||||
|
||||
If you came here via a link or web search, you may want to check out [the current |
||||
version of the book](../ch11-02-running-tests.html) instead. |
||||
|
||||
If you have an internet connection, you can [find a copy distributed with |
||||
Rust |
||||
1.30](https://doc.rust-lang.org/1.30.0/book/2018-edition/ch11-02-running-tests.html). |
||||
@ -1,10 +0,0 @@
@@ -1,10 +0,0 @@
|
||||
## Test Organization |
||||
|
||||
The 2018 edition of the book is no longer distributed with Rust's documentation. |
||||
|
||||
If you came here via a link or web search, you may want to check out [the current |
||||
version of the book](../ch11-03-test-organization.html) instead. |
||||
|
||||
If you have an internet connection, you can [find a copy distributed with |
||||
Rust |
||||
1.30](https://doc.rust-lang.org/1.30.0/book/2018-edition/ch11-03-test-organization.html). |
||||
@ -1,10 +0,0 @@
@@ -1,10 +0,0 @@
|
||||
# An I/O Project: Building a Command Line Program |
||||
|
||||
The 2018 edition of the book is no longer distributed with Rust's documentation. |
||||
|
||||
If you came here via a link or web search, you may want to check out [the current |
||||
version of the book](../ch12-00-an-io-project.html) instead. |
||||
|
||||
If you have an internet connection, you can [find a copy distributed with |
||||
Rust |
||||
1.30](https://doc.rust-lang.org/1.30.0/book/2018-edition/ch12-00-an-io-project.html). |
||||
@ -1,10 +0,0 @@
@@ -1,10 +0,0 @@
|
||||
## Accepting Command Line Arguments |
||||
|
||||
The 2018 edition of the book is no longer distributed with Rust's documentation. |
||||
|
||||
If you came here via a link or web search, you may want to check out [the current |
||||
version of the book](../ch12-01-accepting-command-line-arguments.html) instead. |
||||
|
||||
If you have an internet connection, you can [find a copy distributed with |
||||
Rust |
||||
1.30](https://doc.rust-lang.org/1.30.0/book/2018-edition/ch12-01-accepting-command-line-arguments.html). |
||||
@ -1,10 +0,0 @@
@@ -1,10 +0,0 @@
|
||||
## Reading a File |
||||
|
||||
The 2018 edition of the book is no longer distributed with Rust's documentation. |
||||
|
||||
If you came here via a link or web search, you may want to check out [the current |
||||
version of the book](../ch12-02-reading-a-file.html) instead. |
||||
|
||||
If you have an internet connection, you can [find a copy distributed with |
||||
Rust |
||||
1.30](https://doc.rust-lang.org/1.30.0/book/2018-edition/ch12-02-reading-a-file.html). |
||||
@ -1,10 +0,0 @@
@@ -1,10 +0,0 @@
|
||||
## Refactoring to Improve Modularity and Error Handling |
||||
|
||||
The 2018 edition of the book is no longer distributed with Rust's documentation. |
||||
|
||||
If you came here via a link or web search, you may want to check out [the current |
||||
version of the book](../ch12-03-improving-error-handling-and-modularity.html) instead. |
||||
|
||||
If you have an internet connection, you can [find a copy distributed with |
||||
Rust |
||||
1.30](https://doc.rust-lang.org/1.30.0/book/2018-edition/ch12-03-improving-error-handling-and-modularity.html). |
||||
@ -1,10 +0,0 @@
@@ -1,10 +0,0 @@
|
||||
## Developing the Library’s Functionality with Test-Driven Development |
||||
|
||||
The 2018 edition of the book is no longer distributed with Rust's documentation. |
||||
|
||||
If you came here via a link or web search, you may want to check out [the current |
||||
version of the book](../ch12-04-testing-the-librarys-functionality.html) instead. |
||||
|
||||
If you have an internet connection, you can [find a copy distributed with |
||||
Rust |
||||
1.30](https://doc.rust-lang.org/1.30.0/book/2018-edition/ch12-04-testing-the-librarys-functionality.html). |
||||
@ -1,10 +0,0 @@
@@ -1,10 +0,0 @@
|
||||
## Working with Environment Variables |
||||
|
||||
The 2018 edition of the book is no longer distributed with Rust's documentation. |
||||
|
||||
If you came here via a link or web search, you may want to check out [the current |
||||
version of the book](../ch12-05-working-with-environment-variables.html) instead. |
||||
|
||||
If you have an internet connection, you can [find a copy distributed with |
||||
Rust |
||||
1.30](https://doc.rust-lang.org/1.30.0/book/2018-edition/ch12-05-working-with-environment-variables.html). |
||||
@ -1,10 +0,0 @@
@@ -1,10 +0,0 @@
|
||||
## Writing Error Messages to Standard Error Instead of Standard Output |
||||
|
||||
The 2018 edition of the book is no longer distributed with Rust's documentation. |
||||
|
||||
If you came here via a link or web search, you may want to check out [the current |
||||
version of the book](../ch12-06-writing-to-stderr-instead-of-stdout.html) instead. |
||||
|
||||
If you have an internet connection, you can [find a copy distributed with |
||||
Rust |
||||
1.30](https://doc.rust-lang.org/1.30.0/book/2018-edition/ch12-06-writing-to-stderr-instead-of-stdout.html). |
||||
@ -1,10 +0,0 @@
@@ -1,10 +0,0 @@
|
||||
# Functional Language Features: Iterators and Closures |
||||
|
||||
The 2018 edition of the book is no longer distributed with Rust's documentation. |
||||
|
||||
If you came here via a link or web search, you may want to check out [the current |
||||
version of the book](../ch13-00-functional-features.html) instead. |
||||
|
||||
If you have an internet connection, you can [find a copy distributed with |
||||
Rust |
||||
1.30](https://doc.rust-lang.org/1.30.0/book/2018-edition/ch13-00-functional-features.html). |
||||
@ -1,10 +0,0 @@
@@ -1,10 +0,0 @@
|
||||
## Closures: Anonymous Functions that Can Capture Their Environment |
||||
|
||||
The 2018 edition of the book is no longer distributed with Rust's documentation. |
||||
|
||||
If you came here via a link or web search, you may want to check out [the current |
||||
version of the book](../ch13-01-closures.html) instead. |
||||
|
||||
If you have an internet connection, you can [find a copy distributed with |
||||
Rust |
||||
1.30](https://doc.rust-lang.org/1.30.0/book/2018-edition/ch13-01-closures.html). |
||||
@ -1,10 +0,0 @@
@@ -1,10 +0,0 @@
|
||||
## Processing a Series of Items with Iterators |
||||
|
||||
The 2018 edition of the book is no longer distributed with Rust's documentation. |
||||
|
||||
If you came here via a link or web search, you may want to check out [the current |
||||
version of the book](../ch13-02-iterators.html) instead. |
||||
|
||||
If you have an internet connection, you can [find a copy distributed with |
||||
Rust |
||||
1.30](https://doc.rust-lang.org/1.30.0/book/2018-edition/ch13-02-iterators.html). |
||||
@ -1,10 +0,0 @@
@@ -1,10 +0,0 @@
|
||||
## Improving Our I/O Project |
||||
|
||||
The 2018 edition of the book is no longer distributed with Rust's documentation. |
||||
|
||||
If you came here via a link or web search, you may want to check out [the current |
||||
version of the book](../ch13-03-improving-our-io-project.html) instead. |
||||
|
||||
If you have an internet connection, you can [find a copy distributed with |
||||
Rust |
||||
1.30](https://doc.rust-lang.org/1.30.0/book/2018-edition/ch13-03-improving-our-io-project.html). |
||||
@ -1,10 +0,0 @@
@@ -1,10 +0,0 @@
|
||||
## Comparing Performance: Loops vs. Iterators |
||||
|
||||
The 2018 edition of the book is no longer distributed with Rust's documentation. |
||||
|
||||
If you came here via a link or web search, you may want to check out [the current |
||||
version of the book](../ch13-04-performance.html) instead. |
||||
|
||||
If you have an internet connection, you can [find a copy distributed with |
||||
Rust |
||||
1.30](https://doc.rust-lang.org/1.30.0/book/2018-edition/ch13-04-performance.html). |
||||
@ -1,10 +0,0 @@
@@ -1,10 +0,0 @@
|
||||
# More About Cargo and Crates.io |
||||
|
||||
The 2018 edition of the book is no longer distributed with Rust's documentation. |
||||
|
||||
If you came here via a link or web search, you may want to check out [the current |
||||
version of the book](../ch14-00-more-about-cargo.html) instead. |
||||
|
||||
If you have an internet connection, you can [find a copy distributed with |
||||
Rust |
||||
1.30](https://doc.rust-lang.org/1.30.0/book/2018-edition/ch14-00-more-about-cargo.html). |
||||
@ -1,10 +0,0 @@
@@ -1,10 +0,0 @@
|
||||
## Customizing Builds with Release Profiles |
||||
|
||||
The 2018 edition of the book is no longer distributed with Rust's documentation. |
||||
|
||||
If you came here via a link or web search, you may want to check out [the current |
||||
version of the book](../ch14-01-release-profiles.html) instead. |
||||
|
||||
If you have an internet connection, you can [find a copy distributed with |
||||
Rust |
||||
1.30](https://doc.rust-lang.org/1.30.0/book/2018-edition/ch14-01-release-profiles.html). |
||||
@ -1,10 +0,0 @@
@@ -1,10 +0,0 @@
|
||||
## Publishing a Crate to Crates.io |
||||
|
||||
The 2018 edition of the book is no longer distributed with Rust's documentation. |
||||
|
||||
If you came here via a link or web search, you may want to check out [the current |
||||
version of the book](../ch14-02-publishing-to-crates-io.html) instead. |
||||
|
||||
If you have an internet connection, you can [find a copy distributed with |
||||
Rust |
||||
1.30](https://doc.rust-lang.org/1.30.0/book/2018-edition/ch14-02-publishing-to-crates-io.html). |
||||
@ -1,10 +0,0 @@
@@ -1,10 +0,0 @@
|
||||
## Cargo Workspaces |
||||
|
||||
The 2018 edition of the book is no longer distributed with Rust's documentation. |
||||
|
||||
If you came here via a link or web search, you may want to check out [the current |
||||
version of the book](../ch14-03-cargo-workspaces.html) instead. |
||||
|
||||
If you have an internet connection, you can [find a copy distributed with |
||||
Rust |
||||
1.30](https://doc.rust-lang.org/1.30.0/book/2018-edition/ch14-03-cargo-workspaces.html). |
||||
@ -1,10 +0,0 @@
@@ -1,10 +0,0 @@
|
||||
## Installing Binaries from Crates.io with `cargo install` |
||||
|
||||
The 2018 edition of the book is no longer distributed with Rust's documentation. |
||||
|
||||
If you came here via a link or web search, you may want to check out [the current |
||||
version of the book](../ch14-04-installing-binaries.html) instead. |
||||
|
||||
If you have an internet connection, you can [find a copy distributed with |
||||
Rust |
||||
1.30](https://doc.rust-lang.org/1.30.0/book/2018-edition/ch14-04-installing-binaries.html). |
||||
@ -1,10 +0,0 @@
@@ -1,10 +0,0 @@
|
||||
## Extending Cargo with Custom Commands |
||||
|
||||
The 2018 edition of the book is no longer distributed with Rust's documentation. |
||||
|
||||
If you came here via a link or web search, you may want to check out [the current |
||||
version of the book](../ch14-05-extending-cargo.html) instead. |
||||
|
||||
If you have an internet connection, you can [find a copy distributed with |
||||
Rust |
||||
1.30](https://doc.rust-lang.org/1.30.0/book/2018-edition/ch14-05-extending-cargo.html). |
||||
@ -1,10 +0,0 @@
@@ -1,10 +0,0 @@
|
||||
# Smart Pointers |
||||
|
||||
The 2018 edition of the book is no longer distributed with Rust's documentation. |
||||
|
||||
If you came here via a link or web search, you may want to check out [the current |
||||
version of the book](../ch15-00-smart-pointers.html) instead. |
||||
|
||||
If you have an internet connection, you can [find a copy distributed with |
||||
Rust |
||||
1.30](https://doc.rust-lang.org/1.30.0/book/2018-edition/ch15-00-smart-pointers.html). |
||||
@ -1,10 +0,0 @@
@@ -1,10 +0,0 @@
|
||||
## Using `Box<T>` to Point to Data on the Heap |
||||
|
||||
The 2018 edition of the book is no longer distributed with Rust's documentation. |
||||
|
||||
If you came here via a link or web search, you may want to check out [the current |
||||
version of the book](../ch15-01-box.html) instead. |
||||
|
||||
If you have an internet connection, you can [find a copy distributed with |
||||
Rust |
||||
1.30](https://doc.rust-lang.org/1.30.0/book/2018-edition/ch15-01-box.html). |
||||
@ -1,10 +0,0 @@
@@ -1,10 +0,0 @@
|
||||
## Treating Smart Pointers Like Regular References with the `Deref` Trait |
||||
|
||||
The 2018 edition of the book is no longer distributed with Rust's documentation. |
||||
|
||||
If you came here via a link or web search, you may want to check out [the current |
||||
version of the book](../ch15-02-deref.html) instead. |
||||
|
||||
If you have an internet connection, you can [find a copy distributed with |
||||
Rust |
||||
1.30](https://doc.rust-lang.org/1.30.0/book/2018-edition/ch15-02-deref.html). |
||||
@ -1,10 +0,0 @@
@@ -1,10 +0,0 @@
|
||||
## Running Code on Cleanup with the `Drop` Trait |
||||
|
||||
The 2018 edition of the book is no longer distributed with Rust's documentation. |
||||
|
||||
If you came here via a link or web search, you may want to check out [the current |
||||
version of the book](../ch15-03-drop.html) instead. |
||||
|
||||
If you have an internet connection, you can [find a copy distributed with |
||||
Rust |
||||
1.30](https://doc.rust-lang.org/1.30.0/book/2018-edition/ch15-03-drop.html). |
||||
@ -1,10 +0,0 @@
@@ -1,10 +0,0 @@
|
||||
## `Rc<T>`, the Reference Counted Smart Pointer |
||||
|
||||
The 2018 edition of the book is no longer distributed with Rust's documentation. |
||||
|
||||
If you came here via a link or web search, you may want to check out [the current |
||||
version of the book](../ch15-04-rc.html) instead. |
||||
|
||||
If you have an internet connection, you can [find a copy distributed with |
||||
Rust |
||||
1.30](https://doc.rust-lang.org/1.30.0/book/2018-edition/ch15-04-rc.html). |
||||
@ -1,10 +0,0 @@
@@ -1,10 +0,0 @@
|
||||
## `RefCell<T>` and the Interior Mutability Pattern |
||||
|
||||
The 2018 edition of the book is no longer distributed with Rust's documentation. |
||||
|
||||
If you came here via a link or web search, you may want to check out [the current |
||||
version of the book](../ch15-05-interior-mutability.html) instead. |
||||
|
||||
If you have an internet connection, you can [find a copy distributed with |
||||
Rust |
||||
1.30](https://doc.rust-lang.org/1.30.0/book/2018-edition/ch15-05-interior-mutability.html). |
||||
@ -1,10 +0,0 @@
@@ -1,10 +0,0 @@
|
||||
## Reference Cycles Can Leak Memory |
||||
|
||||
The 2018 edition of the book is no longer distributed with Rust's documentation. |
||||
|
||||
If you came here via a link or web search, you may want to check out [the current |
||||
version of the book](../ch15-06-reference-cycles.html) instead. |
||||
|
||||
If you have an internet connection, you can [find a copy distributed with |
||||
Rust |
||||
1.30](https://doc.rust-lang.org/1.30.0/book/2018-edition/ch15-06-reference-cycles.html). |
||||
@ -1,10 +0,0 @@
@@ -1,10 +0,0 @@
|
||||
# Fearless Concurrency |
||||
|
||||
The 2018 edition of the book is no longer distributed with Rust's documentation. |
||||
|
||||
If you came here via a link or web search, you may want to check out [the current |
||||
version of the book](../ch16-00-concurrency.html) instead. |
||||
|
||||
If you have an internet connection, you can [find a copy distributed with |
||||
Rust |
||||
1.30](https://doc.rust-lang.org/1.30.0/book/2018-edition/ch16-00-concurrency.html). |
||||
@ -1,10 +0,0 @@
@@ -1,10 +0,0 @@
|
||||
## Using Threads to Run Code Simultaneously |
||||
|
||||
The 2018 edition of the book is no longer distributed with Rust's documentation. |
||||
|
||||
If you came here via a link or web search, you may want to check out [the current |
||||
version of the book](../ch16-01-threads.html) instead. |
||||
|
||||
If you have an internet connection, you can [find a copy distributed with |
||||
Rust |
||||
1.30](https://doc.rust-lang.org/1.30.0/book/2018-edition/ch16-01-threads.html). |
||||
@ -1,10 +0,0 @@
@@ -1,10 +0,0 @@
|
||||
## Using Message Passing to Transfer Data Between Threads |
||||
|
||||
The 2018 edition of the book is no longer distributed with Rust's documentation. |
||||
|
||||
If you came here via a link or web search, you may want to check out [the current |
||||
version of the book](../ch16-02-message-passing.html) instead. |
||||
|
||||
If you have an internet connection, you can [find a copy distributed with |
||||
Rust |
||||
1.30](https://doc.rust-lang.org/1.30.0/book/2018-edition/ch16-02-message-passing.html). |
||||
@ -1,10 +0,0 @@
@@ -1,10 +0,0 @@
|
||||
## Shared-State Concurrency |
||||
|
||||
The 2018 edition of the book is no longer distributed with Rust's documentation. |
||||
|
||||
If you came here via a link or web search, you may want to check out [the current |
||||
version of the book](../ch16-03-shared-state.html) instead. |
||||
|
||||
If you have an internet connection, you can [find a copy distributed with |
||||
Rust |
||||
1.30](https://doc.rust-lang.org/1.30.0/book/2018-edition/ch16-03-shared-state.html). |
||||
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in new issue