pub trait ITypeLib_Impl: Sized {
    // Required methods
    fn GetTypeInfoCount(&self) -> u32;
    fn GetTypeInfo(&self, index: u32) -> Result<ITypeInfo>;
    fn GetTypeInfoType(&self, index: u32) -> Result<TYPEKIND>;
    fn GetTypeInfoOfGuid(&self, guid: *const GUID) -> Result<ITypeInfo>;
    fn GetLibAttr(&self) -> Result<*mut TLIBATTR>;
    fn GetTypeComp(&self) -> Result<ITypeComp>;
    fn GetDocumentation(
        &self,
        index: i32,
        pbstrname: *mut BSTR,
        pbstrdocstring: *mut BSTR,
        pdwhelpcontext: *mut u32,
        pbstrhelpfile: *mut BSTR
    ) -> Result<()>;
    fn IsName(
        &self,
        sznamebuf: &PWSTR,
        lhashval: u32,
        pfname: *mut BOOL
    ) -> Result<()>;
    fn FindName(
        &self,
        sznamebuf: &PWSTR,
        lhashval: u32,
        pptinfo: *mut Option<ITypeInfo>,
        rgmemid: *mut i32,
        pcfound: *mut u16
    ) -> Result<()>;
    fn ReleaseTLibAttr(&self, ptlibattr: *const TLIBATTR);
}

Required Methods§

fn GetTypeInfoCount(&self) -> u32

fn GetTypeInfo(&self, index: u32) -> Result<ITypeInfo>

fn GetTypeInfoType(&self, index: u32) -> Result<TYPEKIND>

fn GetTypeInfoOfGuid(&self, guid: *const GUID) -> Result<ITypeInfo>

fn GetLibAttr(&self) -> Result<*mut TLIBATTR>

fn GetTypeComp(&self) -> Result<ITypeComp>

fn GetDocumentation( &self, index: i32, pbstrname: *mut BSTR, pbstrdocstring: *mut BSTR, pdwhelpcontext: *mut u32, pbstrhelpfile: *mut BSTR ) -> Result<()>

fn IsName( &self, sznamebuf: &PWSTR, lhashval: u32, pfname: *mut BOOL ) -> Result<()>

fn FindName( &self, sznamebuf: &PWSTR, lhashval: u32, pptinfo: *mut Option<ITypeInfo>, rgmemid: *mut i32, pcfound: *mut u16 ) -> Result<()>

fn ReleaseTLibAttr(&self, ptlibattr: *const TLIBATTR)

Object Safety§

This trait is not object safe.

Implementors§