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.