File tree 6 files changed +30
-5
lines changed
6 files changed +30
-5
lines changed Original file line number Diff line number Diff line change 8
8
// option. This file may not be copied, modified, or distributed
9
9
// except according to those terms.
10
10
11
+ //! Unsafe casting functions
12
+
11
13
pub mod rusti {
12
14
#[ abi = "rust-intrinsic" ]
13
15
#[ link_name = "rusti" ]
Original file line number Diff line number Diff line change 8
8
// option. This file may not be copied, modified, or distributed
9
9
// except according to those terms.
10
10
11
+ //! A mutable, nullable memory location
12
+
11
13
use cast:: transmute;
12
14
use option;
13
15
use prelude:: * ;
14
16
15
- /// A dynamic, mutable location.
16
- ///
17
- /// Similar to a mutable option type, but friendlier.
17
+ /*
18
+ A dynamic, mutable location.
19
+
20
+ Similar to a mutable option type, but friendlier.
21
+ */
18
22
19
23
pub struct Cell < T > {
20
24
mut value : Option < T >
Original file line number Diff line number Diff line change 8
8
// option. This file may not be copied, modified, or distributed
9
9
// except according to those terms.
10
10
11
- /**
12
- Clonable types are copied with the clone method
11
+ /*! The Clone trait for types that cannot be "implicitly copied"
12
+
13
+ In Rust, some simple types are "implicitly copyable" and when you
14
+ assign them or pass them as arguments, the receiver will get a copy,
15
+ leaving the original value in place. These types do not require
16
+ allocation to copy and do not have finalizers (i.e. they do not
17
+ contain owned pointers or implement `Drop`), so the compiler considers
18
+ them cheap and safe to copy and automatically implements the `Copy`
19
+ trait for them. For other types copies must be made explicitly,
20
+ by convention implementing the `Clone` trait and calling the
21
+ `clone` method.
22
+
13
23
*/
24
+
14
25
pub trait Clone {
15
26
fn clone ( & self ) -> Self ;
16
27
}
Original file line number Diff line number Diff line change 8
8
// option. This file may not be copied, modified, or distributed
9
9
// except according to those terms.
10
10
11
+ /*!
12
+ Message passing
13
+ */
14
+
11
15
use cast;
12
16
use either:: { Either , Left , Right } ;
13
17
use kinds:: Owned ;
Original file line number Diff line number Diff line change 8
8
// option. This file may not be copied, modified, or distributed
9
9
// except according to those terms.
10
10
11
+ /*! Condition handling */
12
+
11
13
use prelude:: * ;
12
14
use task;
13
15
use task:: local_data:: { local_data_pop, local_data_set} ;
Original file line number Diff line number Diff line change 8
8
// option. This file may not be copied, modified, or distributed
9
9
// except according to those terms.
10
10
11
+ #[ doc( hidden) ] ;
12
+
11
13
use libc:: c_char;
12
14
13
15
// Some basic logging
You can’t perform that action at this time.
0 commit comments