/// Macro to define a "place" type compatible with deserialization.
///
/// [Refer to the `miniserde::de` documentation for examples.][crate::de]
///
/// This macro expands to:
///
/// ```rust
/// # macro_rules! make_place {
/// # ($name:ident) => {
/// struct $name<T> {
/// out: Option<T>,
/// }
///
/// impl<T> $name<T> {
/// fn new(out: &mut Option<T>) -> &mut Self {
/// /* ... */
/// # unimplemented!()
/// }
/// }
/// # };
/// # }
/// #
/// # make_place!(Place);
/// ```