Apply suggestions from code review

Co-authored-by: Camelid <camelidcamel@gmail.com>
This commit is contained in:
Max Sharnoff 2020-12-09 23:13:24 +00:00 committed by GitHub
parent 1c36bb2f69
commit 72a7f73610
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -17,11 +17,12 @@
//! # Smart pointers and `dyn Any`
//!
//! One piece of behavior to keep in mind when using `Any` as a trait object,
//! especially with types like `Box<dyn Any>` or `Arc<dyn Any>` is that simply
//! especially with types like `Box<dyn Any>` or `Arc<dyn Any>`, is that simply
//! calling `.type_id()` on the value will produce the `TypeId` of the
//! container, and not the underlying trait object. This can be avoided
//! *container*, not the underlying trait object. This can be avoided by
//! converting the smart pointer into a `&dyn Any` instead, which will return
//! the object's type id. For example:
//! the object's `TypeId`. For example:
//!
//! ```
//! use std::any::{Any, TypeId};
//!
@ -32,7 +33,6 @@
//! // ... than this:
//! let boxed_id = boxed.type_id();
//!
//! // Both of these assertions pass
//! assert_eq!(actual_id, TypeId::of::<i32>());
//! assert_eq!(boxed_id, TypeId::of::<Box<dyn Any>>());
//! ```