File tree Expand file tree Collapse file tree 2 files changed +12
-17
lines changed Expand file tree Collapse file tree 2 files changed +12
-17
lines changed Original file line number Diff line number Diff line change 1
1
---
2
- refs/heads/master: bed37a1dc915cbc8e7333ee6822b03b096347356
2
+ refs/heads/master: 6cf2f89452675d231956324333180810273625b0
3
3
refs/heads/snap-stage1: e33de59e47c5076a89eadeb38f4934f58a3618a6
4
4
refs/heads/snap-stage3: cd6f24f9d14ac90d167386a56e7a6ac1f0318195
5
5
refs/heads/try: ffbe0e0e00374358b789b0037bcb3a577cd218be
Original file line number Diff line number Diff line change @@ -44,13 +44,14 @@ pure fn get_ref<T>(opt: &r/option<T>) -> &r/T {
44
44
}
45
45
46
46
pure fn expect < T : copy > ( opt : option < T > , reason : ~str ) -> T {
47
- #[ doc = "
48
- Gets the value out of an option, printing a specified message on failure
49
-
50
- # Failure
51
-
52
- Fails if the value equals `none`
53
- " ] ;
47
+ /*!
48
+ * Gets the value out of an option, printing a specified message on
49
+ * failure
50
+ *
51
+ * # Failure
52
+ *
53
+ * Fails if the value equals `none`
54
+ */
54
55
match opt { some( x) => x, none => fail reason }
55
56
}
56
57
@@ -165,15 +166,9 @@ pure fn unwrap<T>(+opt: option<T>) -> T {
165
166
* Useful primarily for getting strings, vectors and unique pointers out
166
167
* of option types without copying them.
167
168
*/
168
-
169
- unsafe {
170
- let addr = match opt {
171
- some( x) => ptr:: addr_of ( x) ,
172
- none => fail ~"option:: unwrap none"
173
- } ;
174
- let liberated_value = unsafe :: reinterpret_cast ( * addr) ;
175
- unsafe :: forget ( opt) ;
176
- return liberated_value;
169
+ match move opt {
170
+ some( move x) => x,
171
+ none => fail ~"option:: unwrap none"
177
172
}
178
173
}
179
174
You can’t perform that action at this time.
0 commit comments