macro_rules! proxy_struct {
    ($(
      $(#[$attr:meta])*
      $name:ident($rustc:expr) {
        $($field:ident : $rustc_ty:ty  => $proxy_ty:ty , $proxy_str:expr),*
      }
    )*) => { ... };
}
Expand description

Generates a struct that is a proxy for a Rustc type.

This works by telling Serde to the proxy struct as “remote” for the Rustc type. Each field of the struct is either the actual Rustc type if the “rustc” feature is enabled, or the proxy type otherwise.