doc(array,vec): add notes about side effects when empty-initializing

This commit is contained in:
William Woodruff 2020-12-10 17:47:28 -05:00
parent d32c320d7e
commit 9cf2516251
No known key found for this signature in database
GPG Key ID: 70F70A3979DDCED3
2 changed files with 6 additions and 0 deletions

View File

@ -29,6 +29,9 @@
/// to the same boxed integer value, not five references pointing to independently
/// boxed integers.
///
/// Also, note that `[T; 0]` is a valid initializer. This will initialize (or call)
/// `T` but not populate the vector with it, so be mindful of side effects.
///
/// [`Vec`]: crate::vec::Vec
#[cfg(not(test))]
#[macro_export]

View File

@ -489,6 +489,9 @@ mod prim_pointer {}
/// * A repeat expression `[x; N]`, which produces an array with `N` copies of `x`.
/// The type of `x` must be [`Copy`].
///
/// Note that `[x; 0]` is a valid repeat expression. This will produce an empty array
/// but will also initialize (or call) `x`, which may produce side effects.
///
/// Arrays of *any* size implement the following traits if the element type allows it:
///
/// - [`Copy`]