public-api 0.51.0

List and diff the public API of Rust library crates. Relies on rustdoc JSON output from the nightly toolchain.
Documentation
PublicApiDiff {
    removed: [],
    changed: [
        ChangedPublicItem {
            old: pub struct example_api::Struct,
            new: #[non_exhaustive] pub struct example_api::Struct,
        },
        ChangedPublicItem {
            old: pub fn example_api::function(v1_param: example_api::Struct),
            new: pub fn example_api::function(v1_param: example_api::Struct, v2_param: usize),
        },
    ],
    added: [
        pub example_api::Struct::v2_field: usize,
        pub struct example_api::StructV2,
        pub example_api::StructV2::field: usize,
        impl core::marker::Freeze for example_api::StructV2,
        impl core::marker::Send for example_api::StructV2,
        impl core::marker::Sync for example_api::StructV2,
        impl core::marker::Unpin for example_api::StructV2,
        impl core::marker::UnsafeUnpin for example_api::StructV2,
        impl core::panic::unwind_safe::RefUnwindSafe for example_api::StructV2,
        impl core::panic::unwind_safe::UnwindSafe for example_api::StructV2,
        impl<T, U> core::convert::Into<U> for example_api::StructV2 where U: core::convert::From<T>,
        pub fn example_api::StructV2::into(self) -> U,
        impl<T, U> core::convert::TryFrom<U> for example_api::StructV2 where U: core::convert::Into<T>,
        pub type example_api::StructV2::Error = core::convert::Infallible,
        pub fn example_api::StructV2::try_from(value: U) -> core::result::Result<T, <T as core::convert::TryFrom<U>>::Error>,
        impl<T, U> core::convert::TryInto<U> for example_api::StructV2 where U: core::convert::TryFrom<T>,
        pub type example_api::StructV2::Error = <U as core::convert::TryFrom<T>>::Error,
        pub fn example_api::StructV2::try_into(self) -> core::result::Result<U, <U as core::convert::TryFrom<T>>::Error>,
        impl<T> core::any::Any for example_api::StructV2 where T: 'static + ?core::marker::Sized,
        pub fn example_api::StructV2::type_id(&self) -> core::any::TypeId,
        impl<T> core::borrow::Borrow<T> for example_api::StructV2 where T: ?core::marker::Sized,
        pub fn example_api::StructV2::borrow(&self) -> &T,
        impl<T> core::borrow::BorrowMut<T> for example_api::StructV2 where T: ?core::marker::Sized,
        pub fn example_api::StructV2::borrow_mut(&mut self) -> &mut T,
        impl<T> core::convert::From<T> for example_api::StructV2,
        pub fn example_api::StructV2::from(t: T) -> T,
    ],
}