#![allow(
    warnings,
    deprecated,
    unused_qualifications,
    clippy::all,
    clippy::pedantic
)]

use num_enum::{IntoPrimitive, TryFromPrimitive};

#[cfg(feature = "nccl_2_28")]
use singe_cuda_sys::runtime::cudaStream_t;

#[cfg(feature = "nccl_2_28")]
include!("sys_22807.rs");

#[cfg(test)]
mod tests {
    use super::*;

    #[test]
    fn version_is_available() {
        let mut version = 0;
        unsafe {
            assert_eq!(ncclGetVersion(&raw mut version), ncclResult_t::ncclSuccess);
        }
        println!("NCCL version: {version}");
        assert_ne!(version, 0);
    }
}
