]> git.proxmox.com Git - rustc.git/blame - src/doc/rust-by-example/src/SUMMARY.md
New upstream version 1.65.0+dfsg1
[rustc.git] / src / doc / rust-by-example / src / SUMMARY.md
CommitLineData
2c00a5a8
XL
1# Summary
2
3[Introduction](index.md)
4
5- [Hello World](hello.md)
6 - [Comments](hello/comment.md)
7 - [Formatted print](hello/print.md)
8 - [Debug](hello/print/print_debug.md)
9 - [Display](hello/print/print_display.md)
10 - [Testcase: List](hello/print/print_display/testcase_list.md)
11 - [Formatting](hello/print/fmt.md)
12
13- [Primitives](primitives.md)
14 - [Literals and operators](primitives/literals.md)
15 - [Tuples](primitives/tuples.md)
16 - [Arrays and Slices](primitives/array.md)
17
18- [Custom Types](custom_types.md)
19 - [Structures](custom_types/structs.md)
20 - [Enums](custom_types/enum.md)
21 - [use](custom_types/enum/enum_use.md)
22 - [C-like](custom_types/enum/c_like.md)
23 - [Testcase: linked-list](custom_types/enum/testcase_linked_list.md)
24 - [constants](custom_types/constants.md)
25
26- [Variable Bindings](variable_bindings.md)
27 - [Mutability](variable_bindings/mut.md)
28 - [Scope and Shadowing](variable_bindings/scope.md)
29 - [Declare first](variable_bindings/declare.md)
ba9703b0 30 - [Freezing](variable_bindings/freeze.md)
2c00a5a8
XL
31
32- [Types](types.md)
33 - [Casting](types/cast.md)
34 - [Literals](types/literals.md)
35 - [Inference](types/inference.md)
36 - [Aliasing](types/alias.md)
37
38- [Conversion](conversion.md)
83c7162d 39 - [`From` and `Into`](conversion/from_into.md)
e1599b0c 40 - [`TryFrom` and `TryInto`](conversion/try_from_try_into.md)
83c7162d 41 - [To and from `String`s](conversion/string.md)
2c00a5a8
XL
42
43- [Expressions](expression.md)
44
dc9dc135 45- [Flow of Control](flow_control.md)
2c00a5a8
XL
46 - [if/else](flow_control/if_else.md)
47 - [loop](flow_control/loop.md)
48 - [Nesting and labels](flow_control/loop/nested.md)
49 - [Returning from loops](flow_control/loop/return.md)
50 - [while](flow_control/while.md)
51 - [for and range](flow_control/for.md)
52 - [match](flow_control/match.md)
53 - [Destructuring](flow_control/match/destructuring.md)
54 - [tuples](flow_control/match/destructuring/destructure_tuple.md)
a2a8927a 55 - [arrays/slices](flow_control/match/destructuring/destructure_slice.md)
2c00a5a8
XL
56 - [enums](flow_control/match/destructuring/destructure_enum.md)
57 - [pointers/ref](flow_control/match/destructuring/destructure_pointers.md)
58 - [structs](flow_control/match/destructuring/destructure_structures.md)
59 - [Guards](flow_control/match/guard.md)
60 - [Binding](flow_control/match/binding.md)
61 - [if let](flow_control/if_let.md)
62 - [while let](flow_control/while_let.md)
63
64- [Functions](fn.md)
65 - [Methods](fn/methods.md)
66 - [Closures](fn/closures.md)
67 - [Capturing](fn/closures/capture.md)
68 - [As input parameters](fn/closures/input_parameters.md)
69 - [Type anonymity](fn/closures/anonymity.md)
70 - [Input functions](fn/closures/input_functions.md)
71 - [As output parameters](fn/closures/output_parameters.md)
72 - [Examples in `std`](fn/closures/closure_examples.md)
73 - [Iterator::any](fn/closures/closure_examples/iter_any.md)
e74abb32 74 - [Searching through iterators](fn/closures/closure_examples/iter_find.md)
2c00a5a8 75 - [Higher Order Functions](fn/hof.md)
0531ce1d 76 - [Diverging functions](fn/diverging.md)
2c00a5a8
XL
77
78- [Modules](mod.md)
79 - [Visibility](mod/visibility.md)
80 - [Struct visibility](mod/struct_visibility.md)
81 - [The `use` declaration](mod/use.md)
82 - [`super` and `self`](mod/super.md)
83 - [File hierarchy](mod/split.md)
84
85- [Crates](crates.md)
1b1a35ee
XL
86 - [Creating a Library](crates/lib.md)
87 - [Using a Library](crates/using_lib.md)
2c00a5a8
XL
88
89- [Cargo](cargo.md)
90 - [Dependencies](cargo/deps.md)
91 - [Conventions](cargo/conventions.md)
92 - [Tests](cargo/test.md)
0bf4aa26 93 - [Build Scripts](cargo/build_scripts.md)
2c00a5a8
XL
94
95- [Attributes](attribute.md)
96 - [`dead_code`](attribute/unused.md)
97 - [Crates](attribute/crate.md)
98 - [`cfg`](attribute/cfg.md)
99 - [Custom](attribute/cfg/custom.md)
100
101- [Generics](generics.md)
102 - [Functions](generics/gen_fn.md)
103 - [Implementation](generics/impl.md)
104 - [Traits](generics/gen_trait.md)
105 - [Bounds](generics/bounds.md)
106 - [Testcase: empty bounds](generics/bounds/testcase_empty.md)
107 - [Multiple bounds](generics/multi_bounds.md)
108 - [Where clauses](generics/where.md)
109 - [New Type Idiom](generics/new_types.md)
110 - [Associated items](generics/assoc_items.md)
111 - [The Problem](generics/assoc_items/the_problem.md)
112 - [Associated types](generics/assoc_items/types.md)
113 - [Phantom type parameters](generics/phantom.md)
114 - [Testcase: unit clarification](generics/phantom/testcase_units.md)
115
116- [Scoping rules](scope.md)
117 - [RAII](scope/raii.md)
118 - [Ownership and moves](scope/move.md)
119 - [Mutability](scope/move/mut.md)
29967ef6 120 - [Partial moves](scope/move/partial_move.md)
2c00a5a8
XL
121 - [Borrowing](scope/borrow.md)
122 - [Mutability](scope/borrow/mut.md)
2c00a5a8
XL
123 - [Aliasing](scope/borrow/alias.md)
124 - [The ref pattern](scope/borrow/ref.md)
125 - [Lifetimes](scope/lifetime.md)
126 - [Explicit annotation](scope/lifetime/explicit.md)
127 - [Functions](scope/lifetime/fn.md)
128 - [Methods](scope/lifetime/methods.md)
129 - [Structs](scope/lifetime/struct.md)
532ac7d7 130 - [Traits](scope/lifetime/trait.md)
2c00a5a8
XL
131 - [Bounds](scope/lifetime/lifetime_bounds.md)
132 - [Coercion](scope/lifetime/lifetime_coercion.md)
83c7162d
XL
133 - [Static](scope/lifetime/static_lifetime.md)
134 - [Elision](scope/lifetime/elision.md)
2c00a5a8
XL
135
136- [Traits](trait.md)
137 - [Derive](trait/derive.md)
e1599b0c 138 - [Returning Traits with `dyn`](trait/dyn.md)
2c00a5a8
XL
139 - [Operator Overloading](trait/ops.md)
140 - [Drop](trait/drop.md)
141 - [Iterators](trait/iter.md)
e1599b0c 142 - [`impl Trait`](trait/impl_trait.md)
2c00a5a8 143 - [Clone](trait/clone.md)
e74abb32
XL
144 - [Supertraits](trait/supertraits.md)
145 - [Disambiguating overlapping traits](trait/disambiguating.md)
2c00a5a8
XL
146
147- [macro_rules!](macros.md)
148 - [Syntax](macros/syntax.md)
149 - [Designators](macros/designators.md)
150 - [Overload](macros/overload.md)
151 - [Repeat](macros/repeat.md)
152 - [DRY (Don't Repeat Yourself)](macros/dry.md)
153 - [DSL (Domain Specific Languages)](macros/dsl.md)
154 - [Variadics](macros/variadics.md)
155
156- [Error handling](error.md)
157 - [`panic`](error/panic.md)
5e7ed085 158 - [`abort` & `unwind`](error/abort_unwind.md)
2c00a5a8 159 - [`Option` & `unwrap`](error/option_unwrap.md)
e1599b0c 160 - [Unpacking options with `?`](error/option_unwrap/question_mark.md)
2c00a5a8
XL
161 - [Combinators: `map`](error/option_unwrap/map.md)
162 - [Combinators: `and_then`](error/option_unwrap/and_then.md)
064997fb 163 - [Defaults: `or`, `or_else`, `get_or_insert`, 'get_or_insert_with`](error/option_unwrap/defaults.md)
2c00a5a8
XL
164 - [`Result`](error/result.md)
165 - [`map` for `Result`](error/result/result_map.md)
166 - [aliases for `Result`](error/result/result_alias.md)
167 - [Early returns](error/result/early_returns.md)
168 - [Introducing `?`](error/result/enter_question_mark.md)
169 - [Multiple error types](error/multiple_error_types.md)
170 - [Pulling `Result`s out of `Option`s](error/multiple_error_types/option_result.md)
171 - [Defining an error type](error/multiple_error_types/define_error_type.md)
172 - [`Box`ing errors](error/multiple_error_types/boxing_errors.md)
173 - [Other uses of `?`](error/multiple_error_types/reenter_question_mark.md)
174 - [Wrapping errors](error/multiple_error_types/wrap_error.md)
175 - [Iterating over `Result`s](error/iter_result.md)
176
177- [Std library types](std.md)
178 - [Box, stack and heap](std/box.md)
179 - [Vectors](std/vec.md)
180 - [Strings](std/str.md)
181 - [`Option`](std/option.md)
182 - [`Result`](std/result.md)
183 - [`?`](std/result/question_mark.md)
184 - [`panic!`](std/panic.md)
185 - [HashMap](std/hash.md)
186 - [Alternate/custom key types](std/hash/alt_key_types.md)
187 - [HashSet](std/hash/hashset.md)
416331ca 188 - [`Rc`](std/rc.md)
3dfed10e 189 - [`Arc`](std/arc.md)
2c00a5a8
XL
190
191- [Std misc](std_misc.md)
192 - [Threads](std_misc/threads.md)
193 - [Testcase: map-reduce](std_misc/threads/testcase_mapreduce.md)
194 - [Channels](std_misc/channels.md)
195 - [Path](std_misc/path.md)
196 - [File I/O](std_misc/file.md)
197 - [`open`](std_misc/file/open.md)
198 - [`create`](std_misc/file/create.md)
48663c56 199 - [`read lines`](std_misc/file/read_lines.md)
2c00a5a8
XL
200 - [Child processes](std_misc/process.md)
201 - [Pipes](std_misc/process/pipe.md)
202 - [Wait](std_misc/process/wait.md)
203 - [Filesystem Operations](std_misc/fs.md)
204 - [Program arguments](std_misc/arg.md)
205 - [Argument parsing](std_misc/arg/matching.md)
206 - [Foreign Function Interface](std_misc/ffi.md)
207
208- [Testing](testing.md)
209 - [Unit testing](testing/unit_testing.md)
210 - [Documentation testing](testing/doc_testing.md)
211 - [Integration testing](testing/integration_testing.md)
212 - [Dev-dependencies](testing/dev_dependencies.md)
213
b7449926 214- [Unsafe Operations](unsafe.md)
a2a8927a 215 - [Inline assembly](unsafe/asm.md)
b7449926
XL
216
217- [Compatibility](compatibility.md)
218 - [Raw identifiers](compatibility/raw_identifiers.md)
219
2c00a5a8
XL
220- [Meta](meta.md)
221 - [Documentation](meta/doc.md)
f2b60f7d 222 - [Playground](meta/playground.md)