// Note: This can be a derive macro, but requires to be placed in seperate proc-macro crate, which is an overkill
// for this simple utility.
/// A Utility macro to implement [`TryFrom`] for [`serde_json::Value`].
///
/// Now we can replace [`serde_json::to_value`] with [`TryInto::try_into`] in our code.
///
/// ### Example:
/// ```rust
/// impl_tryfrom_serde_value!(ChangeRoomOptions EditRoomOptions DestroyRoomMsg JoinRoomOptions);
/// ```