]> git.proxmox.com Git - rustc.git/blob - src/doc/rust-by-example/src/SUMMARY.md
New upstream version 1.68.2+dfsg1
[rustc.git] / src / doc / rust-by-example / src / SUMMARY.md
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)
30 - [Freezing](variable_bindings/freeze.md)
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)
39 - [`From` and `Into`](conversion/from_into.md)
40 - [`TryFrom` and `TryInto`](conversion/try_from_try_into.md)
41 - [To and from `String`s](conversion/string.md)
42
43 - [Expressions](expression.md)
44
45 - [Flow of Control](flow_control.md)
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)
55 - [arrays/slices](flow_control/match/destructuring/destructure_slice.md)
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 - [let-else](flow_control/let_else.md)
63 - [while let](flow_control/while_let.md)
64
65 - [Functions](fn.md)
66 - [Methods](fn/methods.md)
67 - [Closures](fn/closures.md)
68 - [Capturing](fn/closures/capture.md)
69 - [As input parameters](fn/closures/input_parameters.md)
70 - [Type anonymity](fn/closures/anonymity.md)
71 - [Input functions](fn/closures/input_functions.md)
72 - [As output parameters](fn/closures/output_parameters.md)
73 - [Examples in `std`](fn/closures/closure_examples.md)
74 - [Iterator::any](fn/closures/closure_examples/iter_any.md)
75 - [Searching through iterators](fn/closures/closure_examples/iter_find.md)
76 - [Higher Order Functions](fn/hof.md)
77 - [Diverging functions](fn/diverging.md)
78
79 - [Modules](mod.md)
80 - [Visibility](mod/visibility.md)
81 - [Struct visibility](mod/struct_visibility.md)
82 - [The `use` declaration](mod/use.md)
83 - [`super` and `self`](mod/super.md)
84 - [File hierarchy](mod/split.md)
85
86 - [Crates](crates.md)
87 - [Creating a Library](crates/lib.md)
88 - [Using a Library](crates/using_lib.md)
89
90 - [Cargo](cargo.md)
91 - [Dependencies](cargo/deps.md)
92 - [Conventions](cargo/conventions.md)
93 - [Tests](cargo/test.md)
94 - [Build Scripts](cargo/build_scripts.md)
95
96 - [Attributes](attribute.md)
97 - [`dead_code`](attribute/unused.md)
98 - [Crates](attribute/crate.md)
99 - [`cfg`](attribute/cfg.md)
100 - [Custom](attribute/cfg/custom.md)
101
102 - [Generics](generics.md)
103 - [Functions](generics/gen_fn.md)
104 - [Implementation](generics/impl.md)
105 - [Traits](generics/gen_trait.md)
106 - [Bounds](generics/bounds.md)
107 - [Testcase: empty bounds](generics/bounds/testcase_empty.md)
108 - [Multiple bounds](generics/multi_bounds.md)
109 - [Where clauses](generics/where.md)
110 - [New Type Idiom](generics/new_types.md)
111 - [Associated items](generics/assoc_items.md)
112 - [The Problem](generics/assoc_items/the_problem.md)
113 - [Associated types](generics/assoc_items/types.md)
114 - [Phantom type parameters](generics/phantom.md)
115 - [Testcase: unit clarification](generics/phantom/testcase_units.md)
116
117 - [Scoping rules](scope.md)
118 - [RAII](scope/raii.md)
119 - [Ownership and moves](scope/move.md)
120 - [Mutability](scope/move/mut.md)
121 - [Partial moves](scope/move/partial_move.md)
122 - [Borrowing](scope/borrow.md)
123 - [Mutability](scope/borrow/mut.md)
124 - [Aliasing](scope/borrow/alias.md)
125 - [The ref pattern](scope/borrow/ref.md)
126 - [Lifetimes](scope/lifetime.md)
127 - [Explicit annotation](scope/lifetime/explicit.md)
128 - [Functions](scope/lifetime/fn.md)
129 - [Methods](scope/lifetime/methods.md)
130 - [Structs](scope/lifetime/struct.md)
131 - [Traits](scope/lifetime/trait.md)
132 - [Bounds](scope/lifetime/lifetime_bounds.md)
133 - [Coercion](scope/lifetime/lifetime_coercion.md)
134 - [Static](scope/lifetime/static_lifetime.md)
135 - [Elision](scope/lifetime/elision.md)
136
137 - [Traits](trait.md)
138 - [Derive](trait/derive.md)
139 - [Returning Traits with `dyn`](trait/dyn.md)
140 - [Operator Overloading](trait/ops.md)
141 - [Drop](trait/drop.md)
142 - [Iterators](trait/iter.md)
143 - [`impl Trait`](trait/impl_trait.md)
144 - [Clone](trait/clone.md)
145 - [Supertraits](trait/supertraits.md)
146 - [Disambiguating overlapping traits](trait/disambiguating.md)
147
148 - [macro_rules!](macros.md)
149 - [Syntax](macros/syntax.md)
150 - [Designators](macros/designators.md)
151 - [Overload](macros/overload.md)
152 - [Repeat](macros/repeat.md)
153 - [DRY (Don't Repeat Yourself)](macros/dry.md)
154 - [DSL (Domain Specific Languages)](macros/dsl.md)
155 - [Variadics](macros/variadics.md)
156
157 - [Error handling](error.md)
158 - [`panic`](error/panic.md)
159 - [`abort` & `unwind`](error/abort_unwind.md)
160 - [`Option` & `unwrap`](error/option_unwrap.md)
161 - [Unpacking options with `?`](error/option_unwrap/question_mark.md)
162 - [Combinators: `map`](error/option_unwrap/map.md)
163 - [Combinators: `and_then`](error/option_unwrap/and_then.md)
164 - [Defaults: `or`, `or_else`, `get_or_insert`, 'get_or_insert_with`](error/option_unwrap/defaults.md)
165 - [`Result`](error/result.md)
166 - [`map` for `Result`](error/result/result_map.md)
167 - [aliases for `Result`](error/result/result_alias.md)
168 - [Early returns](error/result/early_returns.md)
169 - [Introducing `?`](error/result/enter_question_mark.md)
170 - [Multiple error types](error/multiple_error_types.md)
171 - [Pulling `Result`s out of `Option`s](error/multiple_error_types/option_result.md)
172 - [Defining an error type](error/multiple_error_types/define_error_type.md)
173 - [`Box`ing errors](error/multiple_error_types/boxing_errors.md)
174 - [Other uses of `?`](error/multiple_error_types/reenter_question_mark.md)
175 - [Wrapping errors](error/multiple_error_types/wrap_error.md)
176 - [Iterating over `Result`s](error/iter_result.md)
177
178 - [Std library types](std.md)
179 - [Box, stack and heap](std/box.md)
180 - [Vectors](std/vec.md)
181 - [Strings](std/str.md)
182 - [`Option`](std/option.md)
183 - [`Result`](std/result.md)
184 - [`?`](std/result/question_mark.md)
185 - [`panic!`](std/panic.md)
186 - [HashMap](std/hash.md)
187 - [Alternate/custom key types](std/hash/alt_key_types.md)
188 - [HashSet](std/hash/hashset.md)
189 - [`Rc`](std/rc.md)
190 - [`Arc`](std/arc.md)
191
192 - [Std misc](std_misc.md)
193 - [Threads](std_misc/threads.md)
194 - [Testcase: map-reduce](std_misc/threads/testcase_mapreduce.md)
195 - [Channels](std_misc/channels.md)
196 - [Path](std_misc/path.md)
197 - [File I/O](std_misc/file.md)
198 - [`open`](std_misc/file/open.md)
199 - [`create`](std_misc/file/create.md)
200 - [`read lines`](std_misc/file/read_lines.md)
201 - [Child processes](std_misc/process.md)
202 - [Pipes](std_misc/process/pipe.md)
203 - [Wait](std_misc/process/wait.md)
204 - [Filesystem Operations](std_misc/fs.md)
205 - [Program arguments](std_misc/arg.md)
206 - [Argument parsing](std_misc/arg/matching.md)
207 - [Foreign Function Interface](std_misc/ffi.md)
208
209 - [Testing](testing.md)
210 - [Unit testing](testing/unit_testing.md)
211 - [Documentation testing](testing/doc_testing.md)
212 - [Integration testing](testing/integration_testing.md)
213 - [Dev-dependencies](testing/dev_dependencies.md)
214
215 - [Unsafe Operations](unsafe.md)
216 - [Inline assembly](unsafe/asm.md)
217
218 - [Compatibility](compatibility.md)
219 - [Raw identifiers](compatibility/raw_identifiers.md)
220
221 - [Meta](meta.md)
222 - [Documentation](meta/doc.md)
223 - [Playground](meta/playground.md)