Struct IMetaDataImport
pub struct IMetaDataImport(/* private fields */);
Implementations§
§impl IMetaDataImport
impl IMetaDataImport
pub unsafe fn CloseEnum(&self, henum: *mut c_void)
pub unsafe fn CountEnum( &self, henum: *mut c_void, pulcount: *mut u32, ) -> Result<()>
pub unsafe fn ResetEnum(&self, henum: *mut c_void, ulpos: u32) -> Result<()>
pub unsafe fn EnumTypeDefs( &self, phenum: *mut *mut c_void, rtypedefs: *mut u32, cmax: u32, pctypedefs: *mut u32, ) -> Result<()>
pub unsafe fn EnumInterfaceImpls( &self, phenum: *mut *mut c_void, td: u32, rimpls: *mut u32, cmax: u32, pcimpls: *mut u32, ) -> Result<()>
pub unsafe fn EnumTypeRefs( &self, phenum: *mut *mut c_void, rtyperefs: *mut u32, cmax: u32, pctyperefs: *mut u32, ) -> Result<()>
pub unsafe fn FindTypeDefByName<P0>(
&self,
sztypedef: P0,
tkenclosingclass: u32,
ptd: *mut u32,
) -> Result<()>where
P0: Param<PCWSTR>,
pub unsafe fn GetScopeProps( &self, szname: Option<&mut [u16]>, pchname: *mut u32, pmvid: *mut GUID, ) -> Result<()>
pub unsafe fn GetModuleFromScope(&self, pmd: *mut u32) -> Result<()>
pub unsafe fn GetTypeDefProps( &self, td: u32, sztypedef: Option<&mut [u16]>, pchtypedef: *mut u32, pdwtypedefflags: *mut u32, ptkextends: *mut u32, ) -> Result<()>
pub unsafe fn GetInterfaceImplProps( &self, iiimpl: u32, pclass: *mut u32, ptkiface: *mut u32, ) -> Result<()>
pub unsafe fn GetTypeRefProps( &self, tr: u32, ptkresolutionscope: *mut u32, szname: Option<&mut [u16]>, pchname: *mut u32, ) -> Result<()>
pub unsafe fn ResolveTypeRef( &self, tr: u32, riid: *const GUID, ppiscope: *mut Option<IUnknown>, ptd: *mut u32, ) -> Result<()>
pub unsafe fn EnumMembers( &self, phenum: *mut *mut c_void, cl: u32, rmembers: *mut u32, cmax: u32, pctokens: *mut u32, ) -> Result<()>
pub unsafe fn EnumMembersWithName<P2>(
&self,
phenum: *mut *mut c_void,
cl: u32,
szname: P2,
rmembers: *mut u32,
cmax: u32,
pctokens: *mut u32,
) -> Result<()>where
P2: Param<PCWSTR>,
pub unsafe fn EnumMethods( &self, phenum: *mut *mut c_void, cl: u32, rmethods: *mut u32, cmax: u32, pctokens: *mut u32, ) -> Result<()>
pub unsafe fn EnumMethodsWithName<P2>(
&self,
phenum: *mut *mut c_void,
cl: u32,
szname: P2,
rmethods: *mut u32,
cmax: u32,
pctokens: *mut u32,
) -> Result<()>where
P2: Param<PCWSTR>,
pub unsafe fn EnumFields( &self, phenum: *mut *mut c_void, cl: u32, rfields: *mut u32, cmax: u32, pctokens: *mut u32, ) -> Result<()>
pub unsafe fn EnumFieldsWithName<P2>(
&self,
phenum: *mut *mut c_void,
cl: u32,
szname: P2,
rfields: *mut u32,
cmax: u32,
pctokens: *mut u32,
) -> Result<()>where
P2: Param<PCWSTR>,
pub unsafe fn EnumParams( &self, phenum: *mut *mut c_void, mb: u32, rparams: *mut u32, cmax: u32, pctokens: *mut u32, ) -> Result<()>
pub unsafe fn EnumMemberRefs( &self, phenum: *mut *mut c_void, tkparent: u32, rmemberrefs: *mut u32, cmax: u32, pctokens: *mut u32, ) -> Result<()>
pub unsafe fn EnumMethodImpls( &self, phenum: *mut *mut c_void, td: u32, rmethodbody: *mut u32, rmethoddecl: *mut u32, cmax: u32, pctokens: *mut u32, ) -> Result<()>
pub unsafe fn EnumPermissionSets( &self, phenum: *mut *mut c_void, tk: u32, dwactions: u32, rpermission: *mut u32, cmax: u32, pctokens: *mut u32, ) -> Result<()>
pub unsafe fn FindMember<P1>(
&self,
td: u32,
szname: P1,
pvsigblob: *mut u8,
cbsigblob: u32,
pmb: *mut u32,
) -> Result<()>where
P1: Param<PCWSTR>,
pub unsafe fn FindMethod<P1>(
&self,
td: u32,
szname: P1,
pvsigblob: *mut u8,
cbsigblob: u32,
pmb: *mut u32,
) -> Result<()>where
P1: Param<PCWSTR>,
pub unsafe fn FindField<P1>(
&self,
td: u32,
szname: P1,
pvsigblob: *mut u8,
cbsigblob: u32,
pmb: *mut u32,
) -> Result<()>where
P1: Param<PCWSTR>,
pub unsafe fn FindMemberRef<P1>(
&self,
td: u32,
szname: P1,
pvsigblob: *mut u8,
cbsigblob: u32,
pmr: *mut u32,
) -> Result<()>where
P1: Param<PCWSTR>,
pub unsafe fn GetMethodProps( &self, mb: u32, pclass: *mut u32, szmethod: Option<&mut [u16]>, pchmethod: *mut u32, pdwattr: *mut u32, ppvsigblob: *mut *mut u8, pcbsigblob: *mut u32, pulcoderva: *mut u32, pdwimplflags: *mut u32, ) -> Result<()>
pub unsafe fn GetMemberRefProps( &self, mr: u32, ptk: *mut u32, szmember: Option<&mut [u16]>, pchmember: *mut u32, ppvsigblob: *mut *mut u8, pbsig: *mut u32, ) -> Result<()>
pub unsafe fn EnumProperties( &self, phenum: *mut *mut c_void, td: u32, rproperties: *mut u32, cmax: u32, pcproperties: *mut u32, ) -> Result<()>
pub unsafe fn EnumEvents( &self, phenum: *mut *mut c_void, td: u32, revents: *mut u32, cmax: u32, pcevents: *mut u32, ) -> Result<()>
pub unsafe fn GetEventProps<P2>(
&self,
ev: u32,
pclass: *mut u32,
szevent: P2,
cchevent: u32,
pchevent: *mut u32,
pdweventflags: *mut u32,
ptkeventtype: *mut u32,
pmdaddon: *mut u32,
pmdremoveon: *mut u32,
pmdfire: *mut u32,
rmdothermethod: *mut u32,
cmax: u32,
pcothermethod: *mut u32,
) -> Result<()>where
P2: Param<PCWSTR>,
pub unsafe fn EnumMethodSemantics( &self, phenum: *mut *mut c_void, mb: u32, reventprop: *mut u32, cmax: u32, pceventprop: *mut u32, ) -> Result<()>
pub unsafe fn GetMethodSemantics( &self, mb: u32, tkeventprop: u32, pdwsemanticsflags: *mut u32, ) -> Result<()>
pub unsafe fn GetClassLayout( &self, td: u32, pdwpacksize: *mut u32, rfieldoffset: *mut COR_FIELD_OFFSET, cmax: u32, pcfieldoffset: *mut u32, pulclasssize: *mut u32, ) -> Result<()>
pub unsafe fn GetFieldMarshal( &self, tk: u32, ppvnativetype: *mut *mut u8, pcbnativetype: *mut u32, ) -> Result<()>
pub unsafe fn GetRVA( &self, tk: u32, pulcoderva: *mut u32, pdwimplflags: *mut u32, ) -> Result<()>
pub unsafe fn GetPermissionSetProps( &self, pm: u32, pdwaction: *mut u32, ppvpermission: *const *const c_void, pcbpermission: *mut u32, ) -> Result<()>
pub unsafe fn GetSigFromToken( &self, mdsig: u32, ppvsig: *mut *mut u8, pcbsig: *mut u32, ) -> Result<()>
pub unsafe fn GetModuleRefProps( &self, mur: u32, szname: Option<&mut [u16]>, pchname: *mut u32, ) -> Result<()>
pub unsafe fn EnumModuleRefs( &self, phenum: *mut *mut c_void, rmodulerefs: *mut u32, cmax: u32, pcmodulerefs: *mut u32, ) -> Result<()>
pub unsafe fn GetTypeSpecFromToken( &self, typespec: u32, ppvsig: *mut *mut u8, pcbsig: *mut u32, ) -> Result<()>
pub unsafe fn GetNameFromToken( &self, tk: u32, pszutf8nameptr: *mut *mut i8, ) -> Result<()>
pub unsafe fn EnumUnresolvedMethods( &self, phenum: *mut *mut c_void, rmethods: *mut u32, cmax: u32, pctokens: *mut u32, ) -> Result<()>
pub unsafe fn GetUserString( &self, stk: u32, szstring: Option<&mut [u16]>, pchstring: *mut u32, ) -> Result<()>
pub unsafe fn GetPinvokeMap( &self, tk: u32, pdwmappingflags: *mut u32, szimportname: Option<&mut [u16]>, pchimportname: *mut u32, pmrimportdll: *mut u32, ) -> Result<()>
pub unsafe fn EnumSignatures( &self, phenum: *mut *mut c_void, rsignatures: *mut u32, cmax: u32, pcsignatures: *mut u32, ) -> Result<()>
pub unsafe fn EnumTypeSpecs( &self, phenum: *mut *mut c_void, rtypespecs: *mut u32, cmax: u32, pctypespecs: *mut u32, ) -> Result<()>
pub unsafe fn EnumUserStrings( &self, phenum: *mut *mut c_void, rstrings: *mut u32, cmax: u32, pcstrings: *mut u32, ) -> Result<()>
pub unsafe fn GetParamForMethodIndex( &self, md: u32, ulparamseq: u32, ppd: *mut u32, ) -> Result<()>
pub unsafe fn EnumCustomAttributes( &self, phenum: *mut *mut c_void, tk: u32, tktype: u32, rcustomattributes: *mut u32, cmax: u32, pccustomattributes: *mut u32, ) -> Result<()>
pub unsafe fn GetCustomAttributeProps( &self, cv: u32, ptkobj: *mut u32, ptktype: *mut u32, ppblob: *const *const c_void, pcbsize: *mut u32, ) -> Result<()>
pub unsafe fn FindTypeRef<P1>(
&self,
tkresolutionscope: u32,
szname: P1,
ptr: *mut u32,
) -> Result<()>where
P1: Param<PCWSTR>,
pub unsafe fn GetMemberProps( &self, mb: u32, pclass: *mut u32, szmember: Option<&mut [u16]>, pchmember: *mut u32, pdwattr: *mut u32, ppvsigblob: *mut *mut u8, pcbsigblob: *mut u32, pulcoderva: *mut u32, pdwimplflags: *mut u32, pdwcplustypeflag: *mut u32, ppvalue: *mut *mut c_void, pcchvalue: *mut u32, ) -> Result<()>
pub unsafe fn GetFieldProps( &self, mb: u32, pclass: *mut u32, szfield: Option<&mut [u16]>, pchfield: *mut u32, pdwattr: *mut u32, ppvsigblob: *mut *mut u8, pcbsigblob: *mut u32, pdwcplustypeflag: *mut u32, ppvalue: *mut *mut c_void, pcchvalue: *mut u32, ) -> Result<()>
pub unsafe fn GetPropertyProps<P2>(
&self,
prop: u32,
pclass: *mut u32,
szproperty: P2,
cchproperty: u32,
pchproperty: *mut u32,
pdwpropflags: *mut u32,
ppvsig: *mut *mut u8,
pbsig: *mut u32,
pdwcplustypeflag: *mut u32,
ppdefaultvalue: *mut *mut c_void,
pcchdefaultvalue: *mut u32,
pmdsetter: *mut u32,
pmdgetter: *mut u32,
rmdothermethod: *mut u32,
cmax: u32,
pcothermethod: *mut u32,
) -> Result<()>where
P2: Param<PCWSTR>,
pub unsafe fn GetParamProps( &self, tk: u32, pmd: *mut u32, pulsequence: *mut u32, szname: Option<&mut [u16]>, pchname: *mut u32, pdwattr: *mut u32, pdwcplustypeflag: *mut u32, ppvalue: *mut *mut c_void, pcchvalue: *mut u32, ) -> Result<()>
pub unsafe fn GetCustomAttributeByName<P1>(
&self,
tkobj: u32,
szname: P1,
ppdata: *const *const c_void,
pcbdata: *mut u32,
) -> Result<()>where
P1: Param<PCWSTR>,
pub unsafe fn IsValidToken(&self, tk: u32) -> BOOL
pub unsafe fn GetNestedClassProps( &self, tdnestedclass: u32, ptdenclosingclass: *mut u32, ) -> Result<()>
pub unsafe fn GetNativeCallConvFromSig( &self, pvsig: *const c_void, cbsig: u32, pcallconv: *mut u32, ) -> Result<()>
pub unsafe fn IsGlobal(&self, pd: u32, pbglobal: *mut i32) -> Result<()>
Trait Implementations§
§impl CanInto<IMetaDataImport> for IMetaDataImport2
impl CanInto<IMetaDataImport> for IMetaDataImport2
§impl CanInto<IUnknown> for IMetaDataImport
impl CanInto<IUnknown> for IMetaDataImport
§impl Clone for IMetaDataImport
impl Clone for IMetaDataImport
§fn clone(&self) -> IMetaDataImport
fn clone(&self) -> IMetaDataImport
Returns a copy of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read more§impl Debug for IMetaDataImport
impl Debug for IMetaDataImport
§impl From<&IMetaDataImport> for &IUnknown
impl From<&IMetaDataImport> for &IUnknown
§fn from(value: &IMetaDataImport) -> Self
fn from(value: &IMetaDataImport) -> Self
Converts to this type from the input type.
§impl From<&IMetaDataImport2> for &IMetaDataImport
impl From<&IMetaDataImport2> for &IMetaDataImport
§fn from(value: &IMetaDataImport2) -> Self
fn from(value: &IMetaDataImport2) -> Self
Converts to this type from the input type.
§impl From<IMetaDataImport> for IUnknown
impl From<IMetaDataImport> for IUnknown
§fn from(value: IMetaDataImport) -> Self
fn from(value: IMetaDataImport) -> Self
Converts to this type from the input type.
§impl From<IMetaDataImport2> for IMetaDataImport
impl From<IMetaDataImport2> for IMetaDataImport
§fn from(value: IMetaDataImport2) -> Self
fn from(value: IMetaDataImport2) -> Self
Converts to this type from the input type.
§impl Interface for IMetaDataImport
impl Interface for IMetaDataImport
§fn as_raw(&self) -> *mut c_void
fn as_raw(&self) -> *mut c_void
Returns the raw COM interface pointer. The resulting pointer continues to be owned by the
Interface
implementation.§fn into_raw(self) -> *mut c_void
fn into_raw(self) -> *mut c_void
Returns the raw COM interface pointer and releases ownership. It the caller’s responsibility to release the COM interface pointer.
§unsafe fn from_raw_borrowed(raw: &*mut c_void) -> Option<&Self>
unsafe fn from_raw_borrowed(raw: &*mut c_void) -> Option<&Self>
§fn cast<T>(&self) -> Result<T, Error>where
T: Interface,
fn cast<T>(&self) -> Result<T, Error>where
T: Interface,
Attempts to cast the current interface to another interface using
QueryInterface
. Read more§fn cast_to_any<T>(&self) -> Result<&(dyn Any + 'static), Error>where
T: ComObjectInner,
<T as ComObjectInner>::Outer: Any + 'static + IUnknownImpl<Impl = T>,
fn cast_to_any<T>(&self) -> Result<&(dyn Any + 'static), Error>where
T: ComObjectInner,
<T as ComObjectInner>::Outer: Any + 'static + IUnknownImpl<Impl = T>,
This casts the given COM interface to [
&dyn Any
]. Read more§fn is_object<T>(&self) -> boolwhere
T: ComObjectInner,
<T as ComObjectInner>::Outer: Any + 'static + IUnknownImpl<Impl = T>,
fn is_object<T>(&self) -> boolwhere
T: ComObjectInner,
<T as ComObjectInner>::Outer: Any + 'static + IUnknownImpl<Impl = T>,
§fn cast_object_ref<T>(&self) -> Result<&<T as ComObjectInner>::Outer, Error>where
T: ComObjectInner,
<T as ComObjectInner>::Outer: Any + 'static + IUnknownImpl<Impl = T>,
fn cast_object_ref<T>(&self) -> Result<&<T as ComObjectInner>::Outer, Error>where
T: ComObjectInner,
<T as ComObjectInner>::Outer: Any + 'static + IUnknownImpl<Impl = T>,
This casts the given COM interface to [
&dyn Any
]. It returns a reference to the “outer”
object, e.g. &MyApp_Impl
, not the inner &MyApp
object. Read more§fn cast_object<T>(&self) -> Result<ComObject<T>, Error>where
T: ComObjectInner,
<T as ComObjectInner>::Outer: Any + 'static + IUnknownImpl<Impl = T>,
fn cast_object<T>(&self) -> Result<ComObject<T>, Error>where
T: ComObjectInner,
<T as ComObjectInner>::Outer: Any + 'static + IUnknownImpl<Impl = T>,
This casts the given COM interface to [
&dyn Any
]. It returns a reference to the “outer”
object, e.g. MyApp_Impl
, not the inner MyApp
object. Read more§fn downgrade(&self) -> Result<Weak<Self>, Error>
fn downgrade(&self) -> Result<Weak<Self>, Error>
Attempts to create a [
Weak
] reference to this object.§impl PartialEq for IMetaDataImport
impl PartialEq for IMetaDataImport
impl Eq for IMetaDataImport
impl StructuralPartialEq for IMetaDataImport
Auto Trait Implementations§
impl Freeze for IMetaDataImport
impl RefUnwindSafe for IMetaDataImport
impl !Send for IMetaDataImport
impl !Sync for IMetaDataImport
impl Unpin for IMetaDataImport
impl UnwindSafe for IMetaDataImport
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more