windows::Win32::Graphics::Direct3D::Dxc

Trait IDxcLibrary_Impl

pub trait IDxcLibrary_Impl: IUnknownImpl {
    // Required methods
    fn SetMalloc(&self, pmalloc: Ref<'_, IMalloc>) -> Result<()>;
    fn CreateBlobFromBlob(
        &self,
        pblob: Ref<'_, IDxcBlob>,
        offset: u32,
        length: u32,
    ) -> Result<IDxcBlob>;
    fn CreateBlobFromFile(
        &self,
        pfilename: &PCWSTR,
        codepage: *const DXC_CP,
    ) -> Result<IDxcBlobEncoding>;
    fn CreateBlobWithEncodingFromPinned(
        &self,
        ptext: *const c_void,
        size: u32,
        codepage: DXC_CP,
    ) -> Result<IDxcBlobEncoding>;
    fn CreateBlobWithEncodingOnHeapCopy(
        &self,
        ptext: *const c_void,
        size: u32,
        codepage: DXC_CP,
    ) -> Result<IDxcBlobEncoding>;
    fn CreateBlobWithEncodingOnMalloc(
        &self,
        ptext: *const c_void,
        pimalloc: Ref<'_, IMalloc>,
        size: u32,
        codepage: DXC_CP,
    ) -> Result<IDxcBlobEncoding>;
    fn CreateIncludeHandler(&self) -> Result<IDxcIncludeHandler>;
    fn CreateStreamFromBlobReadOnly(
        &self,
        pblob: Ref<'_, IDxcBlob>,
    ) -> Result<IStream>;
    fn GetBlobAsUtf8(
        &self,
        pblob: Ref<'_, IDxcBlob>,
    ) -> Result<IDxcBlobEncoding>;
    fn GetBlobAsUtf16(
        &self,
        pblob: Ref<'_, IDxcBlob>,
    ) -> Result<IDxcBlobEncoding>;
}

Required Methods§

fn SetMalloc(&self, pmalloc: Ref<'_, IMalloc>) -> Result<()>

fn CreateBlobFromBlob( &self, pblob: Ref<'_, IDxcBlob>, offset: u32, length: u32, ) -> Result<IDxcBlob>

fn CreateBlobFromFile( &self, pfilename: &PCWSTR, codepage: *const DXC_CP, ) -> Result<IDxcBlobEncoding>

fn CreateBlobWithEncodingFromPinned( &self, ptext: *const c_void, size: u32, codepage: DXC_CP, ) -> Result<IDxcBlobEncoding>

fn CreateBlobWithEncodingOnHeapCopy( &self, ptext: *const c_void, size: u32, codepage: DXC_CP, ) -> Result<IDxcBlobEncoding>

fn CreateBlobWithEncodingOnMalloc( &self, ptext: *const c_void, pimalloc: Ref<'_, IMalloc>, size: u32, codepage: DXC_CP, ) -> Result<IDxcBlobEncoding>

fn CreateIncludeHandler(&self) -> Result<IDxcIncludeHandler>

fn CreateStreamFromBlobReadOnly( &self, pblob: Ref<'_, IDxcBlob>, ) -> Result<IStream>

fn GetBlobAsUtf8(&self, pblob: Ref<'_, IDxcBlob>) -> Result<IDxcBlobEncoding>

fn GetBlobAsUtf16(&self, pblob: Ref<'_, IDxcBlob>) -> Result<IDxcBlobEncoding>

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§