skia-safe 0.99.0

Safe Skia Bindings for Rust
Documentation
pub mod direct_contexts {
    use skia_bindings as sb;

    use crate::{
        gpu::{ContextOptions, DirectContext, d3d},
        prelude::*,
    };

    #[allow(clippy::missing_safety_doc)]
    /// Makes a [`DirectContext`] which uses Direct3D as the backend. The Direct3D context
    /// must be kept alive until the returned [`DirectContext`] is first destroyed or abandoned.
    pub unsafe fn make_d3d<'a>(
        backend_context: &d3d::BackendContext,
        options: impl Into<Option<&'a ContextOptions>>,
    ) -> Option<DirectContext> {
        unsafe {
            DirectContext::from_ptr(sb::C_GrDirectContexts_MakeD3D(
                backend_context.native(),
                options.into().native_ptr_or_null(),
            ))
        }
    }
}