#[doc = "*Required features: `\"Foundation\"`, `\"implement\"`*"] pub trait IAsyncAction_Impl: Sized + IAsyncInfo_Impl { fn SetCompleted(&self, handler: ::core::option::Option<&AsyncActionCompletedHandler>) -> ::windows::core::Result<()>; fn Completed(&self) -> ::windows::core::Result; fn GetResults(&self) -> ::windows::core::Result<()>; } impl ::windows::core::RuntimeName for IAsyncAction { const NAME: &'static str = "Windows.Foundation.IAsyncAction"; } impl IAsyncAction_Vtbl { pub const fn new, Impl: IAsyncAction_Impl, const OFFSET: isize>() -> IAsyncAction_Vtbl { unsafe extern "system" fn SetCompleted, Impl: IAsyncAction_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, handler: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); this.SetCompleted(::windows::core::from_raw_borrowed(&handler)).into() } unsafe extern "system" fn Completed, Impl: IAsyncAction_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); match this.Completed() { ::core::result::Result::Ok(ok__) => { ::core::ptr::write(result__, ::core::mem::transmute_copy(&ok__)); ::core::mem::forget(ok__); ::windows::core::HRESULT(0) } ::core::result::Result::Err(err) => err.into(), } } unsafe extern "system" fn GetResults, Impl: IAsyncAction_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); this.GetResults().into() } Self { base__: ::windows::core::IInspectable_Vtbl::new::(), SetCompleted: SetCompleted::, Completed: Completed::, GetResults: GetResults::, } } pub fn matches(iid: &windows::core::GUID) -> bool { iid == &::IID } } #[doc = "*Required features: `\"Foundation\"`, `\"implement\"`*"] pub trait IAsyncActionWithProgress_Impl: Sized + IAsyncInfo_Impl where TProgress: ::windows::core::RuntimeType + 'static, { fn SetProgress(&self, handler: ::core::option::Option<&AsyncActionProgressHandler>) -> ::windows::core::Result<()>; fn Progress(&self) -> ::windows::core::Result>; fn SetCompleted(&self, handler: ::core::option::Option<&AsyncActionWithProgressCompletedHandler>) -> ::windows::core::Result<()>; fn Completed(&self) -> ::windows::core::Result>; fn GetResults(&self) -> ::windows::core::Result<()>; } impl ::windows::core::RuntimeName for IAsyncActionWithProgress { const NAME: &'static str = "Windows.Foundation.IAsyncActionWithProgress"; } impl IAsyncActionWithProgress_Vtbl { pub const fn new, Impl: IAsyncActionWithProgress_Impl, const OFFSET: isize>() -> IAsyncActionWithProgress_Vtbl { unsafe extern "system" fn SetProgress, Impl: IAsyncActionWithProgress_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, handler: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); this.SetProgress(::windows::core::from_raw_borrowed(&handler)).into() } unsafe extern "system" fn Progress, Impl: IAsyncActionWithProgress_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); match this.Progress() { ::core::result::Result::Ok(ok__) => { ::core::ptr::write(result__, ::core::mem::transmute_copy(&ok__)); ::core::mem::forget(ok__); ::windows::core::HRESULT(0) } ::core::result::Result::Err(err) => err.into(), } } unsafe extern "system" fn SetCompleted, Impl: IAsyncActionWithProgress_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, handler: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); this.SetCompleted(::windows::core::from_raw_borrowed(&handler)).into() } unsafe extern "system" fn Completed, Impl: IAsyncActionWithProgress_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); match this.Completed() { ::core::result::Result::Ok(ok__) => { ::core::ptr::write(result__, ::core::mem::transmute_copy(&ok__)); ::core::mem::forget(ok__); ::windows::core::HRESULT(0) } ::core::result::Result::Err(err) => err.into(), } } unsafe extern "system" fn GetResults, Impl: IAsyncActionWithProgress_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); this.GetResults().into() } Self { base__: ::windows::core::IInspectable_Vtbl::new::, OFFSET>(), SetProgress: SetProgress::, Progress: Progress::, SetCompleted: SetCompleted::, Completed: Completed::, GetResults: GetResults::, TProgress: ::core::marker::PhantomData::, } } pub fn matches(iid: &windows::core::GUID) -> bool { iid == & as ::windows::core::ComInterface>::IID } } #[doc = "*Required features: `\"Foundation\"`, `\"implement\"`*"] pub trait IAsyncInfo_Impl: Sized { fn Id(&self) -> ::windows::core::Result; fn Status(&self) -> ::windows::core::Result; fn ErrorCode(&self) -> ::windows::core::Result<::windows::core::HRESULT>; fn Cancel(&self) -> ::windows::core::Result<()>; fn Close(&self) -> ::windows::core::Result<()>; } impl ::windows::core::RuntimeName for IAsyncInfo { const NAME: &'static str = "Windows.Foundation.IAsyncInfo"; } impl IAsyncInfo_Vtbl { pub const fn new, Impl: IAsyncInfo_Impl, const OFFSET: isize>() -> IAsyncInfo_Vtbl { unsafe extern "system" fn Id, Impl: IAsyncInfo_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, result__: *mut u32) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); match this.Id() { ::core::result::Result::Ok(ok__) => { ::core::ptr::write(result__, ::core::mem::transmute_copy(&ok__)); ::core::mem::forget(ok__); ::windows::core::HRESULT(0) } ::core::result::Result::Err(err) => err.into(), } } unsafe extern "system" fn Status, Impl: IAsyncInfo_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, result__: *mut AsyncStatus) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); match this.Status() { ::core::result::Result::Ok(ok__) => { ::core::ptr::write(result__, ::core::mem::transmute_copy(&ok__)); ::core::mem::forget(ok__); ::windows::core::HRESULT(0) } ::core::result::Result::Err(err) => err.into(), } } unsafe extern "system" fn ErrorCode, Impl: IAsyncInfo_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, result__: *mut ::windows::core::HRESULT) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); match this.ErrorCode() { ::core::result::Result::Ok(ok__) => { ::core::ptr::write(result__, ::core::mem::transmute_copy(&ok__)); ::core::mem::forget(ok__); ::windows::core::HRESULT(0) } ::core::result::Result::Err(err) => err.into(), } } unsafe extern "system" fn Cancel, Impl: IAsyncInfo_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); this.Cancel().into() } unsafe extern "system" fn Close, Impl: IAsyncInfo_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); this.Close().into() } Self { base__: ::windows::core::IInspectable_Vtbl::new::(), Id: Id::, Status: Status::, ErrorCode: ErrorCode::, Cancel: Cancel::, Close: Close::, } } pub fn matches(iid: &windows::core::GUID) -> bool { iid == &::IID } } #[doc = "*Required features: `\"Foundation\"`, `\"implement\"`*"] pub trait IAsyncOperation_Impl: Sized + IAsyncInfo_Impl where TResult: ::windows::core::RuntimeType + 'static, { fn SetCompleted(&self, handler: ::core::option::Option<&AsyncOperationCompletedHandler>) -> ::windows::core::Result<()>; fn Completed(&self) -> ::windows::core::Result>; fn GetResults(&self) -> ::windows::core::Result; } impl ::windows::core::RuntimeName for IAsyncOperation { const NAME: &'static str = "Windows.Foundation.IAsyncOperation"; } impl IAsyncOperation_Vtbl { pub const fn new, Impl: IAsyncOperation_Impl, const OFFSET: isize>() -> IAsyncOperation_Vtbl { unsafe extern "system" fn SetCompleted, Impl: IAsyncOperation_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, handler: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); this.SetCompleted(::windows::core::from_raw_borrowed(&handler)).into() } unsafe extern "system" fn Completed, Impl: IAsyncOperation_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); match this.Completed() { ::core::result::Result::Ok(ok__) => { ::core::ptr::write(result__, ::core::mem::transmute_copy(&ok__)); ::core::mem::forget(ok__); ::windows::core::HRESULT(0) } ::core::result::Result::Err(err) => err.into(), } } unsafe extern "system" fn GetResults, Impl: IAsyncOperation_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, result__: *mut ::windows::core::AbiType) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); match this.GetResults() { ::core::result::Result::Ok(ok__) => { ::core::ptr::write(result__, ::core::mem::transmute_copy(&ok__)); ::core::mem::forget(ok__); ::windows::core::HRESULT(0) } ::core::result::Result::Err(err) => err.into(), } } Self { base__: ::windows::core::IInspectable_Vtbl::new::, OFFSET>(), SetCompleted: SetCompleted::, Completed: Completed::, GetResults: GetResults::, TResult: ::core::marker::PhantomData::, } } pub fn matches(iid: &windows::core::GUID) -> bool { iid == & as ::windows::core::ComInterface>::IID } } #[doc = "*Required features: `\"Foundation\"`, `\"implement\"`*"] pub trait IAsyncOperationWithProgress_Impl: Sized + IAsyncInfo_Impl where TResult: ::windows::core::RuntimeType + 'static, TProgress: ::windows::core::RuntimeType + 'static, { fn SetProgress(&self, handler: ::core::option::Option<&AsyncOperationProgressHandler>) -> ::windows::core::Result<()>; fn Progress(&self) -> ::windows::core::Result>; fn SetCompleted(&self, handler: ::core::option::Option<&AsyncOperationWithProgressCompletedHandler>) -> ::windows::core::Result<()>; fn Completed(&self) -> ::windows::core::Result>; fn GetResults(&self) -> ::windows::core::Result; } impl ::windows::core::RuntimeName for IAsyncOperationWithProgress { const NAME: &'static str = "Windows.Foundation.IAsyncOperationWithProgress"; } impl IAsyncOperationWithProgress_Vtbl { pub const fn new, Impl: IAsyncOperationWithProgress_Impl, const OFFSET: isize>() -> IAsyncOperationWithProgress_Vtbl { unsafe extern "system" fn SetProgress, Impl: IAsyncOperationWithProgress_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, handler: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); this.SetProgress(::windows::core::from_raw_borrowed(&handler)).into() } unsafe extern "system" fn Progress, Impl: IAsyncOperationWithProgress_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); match this.Progress() { ::core::result::Result::Ok(ok__) => { ::core::ptr::write(result__, ::core::mem::transmute_copy(&ok__)); ::core::mem::forget(ok__); ::windows::core::HRESULT(0) } ::core::result::Result::Err(err) => err.into(), } } unsafe extern "system" fn SetCompleted, Impl: IAsyncOperationWithProgress_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, handler: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); this.SetCompleted(::windows::core::from_raw_borrowed(&handler)).into() } unsafe extern "system" fn Completed, Impl: IAsyncOperationWithProgress_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); match this.Completed() { ::core::result::Result::Ok(ok__) => { ::core::ptr::write(result__, ::core::mem::transmute_copy(&ok__)); ::core::mem::forget(ok__); ::windows::core::HRESULT(0) } ::core::result::Result::Err(err) => err.into(), } } unsafe extern "system" fn GetResults, Impl: IAsyncOperationWithProgress_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, result__: *mut ::windows::core::AbiType) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); match this.GetResults() { ::core::result::Result::Ok(ok__) => { ::core::ptr::write(result__, ::core::mem::transmute_copy(&ok__)); ::core::mem::forget(ok__); ::windows::core::HRESULT(0) } ::core::result::Result::Err(err) => err.into(), } } Self { base__: ::windows::core::IInspectable_Vtbl::new::, OFFSET>(), SetProgress: SetProgress::, Progress: Progress::, SetCompleted: SetCompleted::, Completed: Completed::, GetResults: GetResults::, TResult: ::core::marker::PhantomData::, TProgress: ::core::marker::PhantomData::, } } pub fn matches(iid: &windows::core::GUID) -> bool { iid == & as ::windows::core::ComInterface>::IID } } #[doc = "*Required features: `\"Foundation\"`, `\"implement\"`*"] pub trait IClosable_Impl: Sized { fn Close(&self) -> ::windows::core::Result<()>; } impl ::windows::core::RuntimeName for IClosable { const NAME: &'static str = "Windows.Foundation.IClosable"; } impl IClosable_Vtbl { pub const fn new, Impl: IClosable_Impl, const OFFSET: isize>() -> IClosable_Vtbl { unsafe extern "system" fn Close, Impl: IClosable_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); this.Close().into() } Self { base__: ::windows::core::IInspectable_Vtbl::new::(), Close: Close:: } } pub fn matches(iid: &windows::core::GUID) -> bool { iid == &::IID } } #[doc = "*Required features: `\"Foundation\"`, `\"implement\"`*"] pub trait IGetActivationFactory_Impl: Sized { fn GetActivationFactory(&self, activatableclassid: &::windows::core::HSTRING) -> ::windows::core::Result<::windows::core::IInspectable>; } impl ::windows::core::RuntimeName for IGetActivationFactory { const NAME: &'static str = "Windows.Foundation.IGetActivationFactory"; } impl IGetActivationFactory_Vtbl { pub const fn new, Impl: IGetActivationFactory_Impl, const OFFSET: isize>() -> IGetActivationFactory_Vtbl { unsafe extern "system" fn GetActivationFactory, Impl: IGetActivationFactory_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, activatableclassid: ::std::mem::MaybeUninit<::windows::core::HSTRING>, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); match this.GetActivationFactory(::core::mem::transmute(&activatableclassid)) { ::core::result::Result::Ok(ok__) => { ::core::ptr::write(result__, ::core::mem::transmute_copy(&ok__)); ::core::mem::forget(ok__); ::windows::core::HRESULT(0) } ::core::result::Result::Err(err) => err.into(), } } Self { base__: ::windows::core::IInspectable_Vtbl::new::(), GetActivationFactory: GetActivationFactory::, } } pub fn matches(iid: &windows::core::GUID) -> bool { iid == &::IID } } #[doc = "*Required features: `\"Foundation\"`, `\"implement\"`*"] pub trait IMemoryBuffer_Impl: Sized + IClosable_Impl { fn CreateReference(&self) -> ::windows::core::Result; } impl ::windows::core::RuntimeName for IMemoryBuffer { const NAME: &'static str = "Windows.Foundation.IMemoryBuffer"; } impl IMemoryBuffer_Vtbl { pub const fn new, Impl: IMemoryBuffer_Impl, const OFFSET: isize>() -> IMemoryBuffer_Vtbl { unsafe extern "system" fn CreateReference, Impl: IMemoryBuffer_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, result__: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); match this.CreateReference() { ::core::result::Result::Ok(ok__) => { ::core::ptr::write(result__, ::core::mem::transmute_copy(&ok__)); ::core::mem::forget(ok__); ::windows::core::HRESULT(0) } ::core::result::Result::Err(err) => err.into(), } } Self { base__: ::windows::core::IInspectable_Vtbl::new::(), CreateReference: CreateReference:: } } pub fn matches(iid: &windows::core::GUID) -> bool { iid == &::IID } } #[doc = "*Required features: `\"Foundation\"`, `\"implement\"`*"] pub trait IMemoryBufferReference_Impl: Sized + IClosable_Impl { fn Capacity(&self) -> ::windows::core::Result; fn Closed(&self, handler: ::core::option::Option<&TypedEventHandler>) -> ::windows::core::Result; fn RemoveClosed(&self, cookie: &EventRegistrationToken) -> ::windows::core::Result<()>; } impl ::windows::core::RuntimeName for IMemoryBufferReference { const NAME: &'static str = "Windows.Foundation.IMemoryBufferReference"; } impl IMemoryBufferReference_Vtbl { pub const fn new, Impl: IMemoryBufferReference_Impl, const OFFSET: isize>() -> IMemoryBufferReference_Vtbl { unsafe extern "system" fn Capacity, Impl: IMemoryBufferReference_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, result__: *mut u32) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); match this.Capacity() { ::core::result::Result::Ok(ok__) => { ::core::ptr::write(result__, ::core::mem::transmute_copy(&ok__)); ::core::mem::forget(ok__); ::windows::core::HRESULT(0) } ::core::result::Result::Err(err) => err.into(), } } unsafe extern "system" fn Closed, Impl: IMemoryBufferReference_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, handler: *mut ::core::ffi::c_void, result__: *mut EventRegistrationToken) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); match this.Closed(::windows::core::from_raw_borrowed(&handler)) { ::core::result::Result::Ok(ok__) => { ::core::ptr::write(result__, ::core::mem::transmute_copy(&ok__)); ::core::mem::forget(ok__); ::windows::core::HRESULT(0) } ::core::result::Result::Err(err) => err.into(), } } unsafe extern "system" fn RemoveClosed, Impl: IMemoryBufferReference_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, cookie: EventRegistrationToken) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); this.RemoveClosed(::core::mem::transmute(&cookie)).into() } Self { base__: ::windows::core::IInspectable_Vtbl::new::(), Capacity: Capacity::, Closed: Closed::, RemoveClosed: RemoveClosed::, } } pub fn matches(iid: &windows::core::GUID) -> bool { iid == &::IID } } #[doc = "*Required features: `\"Foundation\"`, `\"implement\"`*"] pub trait IPropertyValue_Impl: Sized { fn Type(&self) -> ::windows::core::Result; fn IsNumericScalar(&self) -> ::windows::core::Result; fn GetUInt8(&self) -> ::windows::core::Result; fn GetInt16(&self) -> ::windows::core::Result; fn GetUInt16(&self) -> ::windows::core::Result; fn GetInt32(&self) -> ::windows::core::Result; fn GetUInt32(&self) -> ::windows::core::Result; fn GetInt64(&self) -> ::windows::core::Result; fn GetUInt64(&self) -> ::windows::core::Result; fn GetSingle(&self) -> ::windows::core::Result; fn GetDouble(&self) -> ::windows::core::Result; fn GetChar16(&self) -> ::windows::core::Result; fn GetBoolean(&self) -> ::windows::core::Result; fn GetString(&self) -> ::windows::core::Result<::windows::core::HSTRING>; fn GetGuid(&self) -> ::windows::core::Result<::windows::core::GUID>; fn GetDateTime(&self) -> ::windows::core::Result; fn GetTimeSpan(&self) -> ::windows::core::Result; fn GetPoint(&self) -> ::windows::core::Result; fn GetSize(&self) -> ::windows::core::Result; fn GetRect(&self) -> ::windows::core::Result; fn GetUInt8Array(&self, value: &mut ::windows::core::Array) -> ::windows::core::Result<()>; fn GetInt16Array(&self, value: &mut ::windows::core::Array) -> ::windows::core::Result<()>; fn GetUInt16Array(&self, value: &mut ::windows::core::Array) -> ::windows::core::Result<()>; fn GetInt32Array(&self, value: &mut ::windows::core::Array) -> ::windows::core::Result<()>; fn GetUInt32Array(&self, value: &mut ::windows::core::Array) -> ::windows::core::Result<()>; fn GetInt64Array(&self, value: &mut ::windows::core::Array) -> ::windows::core::Result<()>; fn GetUInt64Array(&self, value: &mut ::windows::core::Array) -> ::windows::core::Result<()>; fn GetSingleArray(&self, value: &mut ::windows::core::Array) -> ::windows::core::Result<()>; fn GetDoubleArray(&self, value: &mut ::windows::core::Array) -> ::windows::core::Result<()>; fn GetChar16Array(&self, value: &mut ::windows::core::Array) -> ::windows::core::Result<()>; fn GetBooleanArray(&self, value: &mut ::windows::core::Array) -> ::windows::core::Result<()>; fn GetStringArray(&self, value: &mut ::windows::core::Array<::windows::core::HSTRING>) -> ::windows::core::Result<()>; fn GetInspectableArray(&self, value: &mut ::windows::core::Array<::windows::core::IInspectable>) -> ::windows::core::Result<()>; fn GetGuidArray(&self, value: &mut ::windows::core::Array<::windows::core::GUID>) -> ::windows::core::Result<()>; fn GetDateTimeArray(&self, value: &mut ::windows::core::Array) -> ::windows::core::Result<()>; fn GetTimeSpanArray(&self, value: &mut ::windows::core::Array) -> ::windows::core::Result<()>; fn GetPointArray(&self, value: &mut ::windows::core::Array) -> ::windows::core::Result<()>; fn GetSizeArray(&self, value: &mut ::windows::core::Array) -> ::windows::core::Result<()>; fn GetRectArray(&self, value: &mut ::windows::core::Array) -> ::windows::core::Result<()>; } impl ::windows::core::RuntimeName for IPropertyValue { const NAME: &'static str = "Windows.Foundation.IPropertyValue"; } impl IPropertyValue_Vtbl { pub const fn new, Impl: IPropertyValue_Impl, const OFFSET: isize>() -> IPropertyValue_Vtbl { unsafe extern "system" fn Type, Impl: IPropertyValue_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, result__: *mut PropertyType) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); match this.Type() { ::core::result::Result::Ok(ok__) => { ::core::ptr::write(result__, ::core::mem::transmute_copy(&ok__)); ::core::mem::forget(ok__); ::windows::core::HRESULT(0) } ::core::result::Result::Err(err) => err.into(), } } unsafe extern "system" fn IsNumericScalar, Impl: IPropertyValue_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, result__: *mut bool) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); match this.IsNumericScalar() { ::core::result::Result::Ok(ok__) => { ::core::ptr::write(result__, ::core::mem::transmute_copy(&ok__)); ::core::mem::forget(ok__); ::windows::core::HRESULT(0) } ::core::result::Result::Err(err) => err.into(), } } unsafe extern "system" fn GetUInt8, Impl: IPropertyValue_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, result__: *mut u8) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); match this.GetUInt8() { ::core::result::Result::Ok(ok__) => { ::core::ptr::write(result__, ::core::mem::transmute_copy(&ok__)); ::core::mem::forget(ok__); ::windows::core::HRESULT(0) } ::core::result::Result::Err(err) => err.into(), } } unsafe extern "system" fn GetInt16, Impl: IPropertyValue_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, result__: *mut i16) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); match this.GetInt16() { ::core::result::Result::Ok(ok__) => { ::core::ptr::write(result__, ::core::mem::transmute_copy(&ok__)); ::core::mem::forget(ok__); ::windows::core::HRESULT(0) } ::core::result::Result::Err(err) => err.into(), } } unsafe extern "system" fn GetUInt16, Impl: IPropertyValue_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, result__: *mut u16) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); match this.GetUInt16() { ::core::result::Result::Ok(ok__) => { ::core::ptr::write(result__, ::core::mem::transmute_copy(&ok__)); ::core::mem::forget(ok__); ::windows::core::HRESULT(0) } ::core::result::Result::Err(err) => err.into(), } } unsafe extern "system" fn GetInt32, Impl: IPropertyValue_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, result__: *mut i32) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); match this.GetInt32() { ::core::result::Result::Ok(ok__) => { ::core::ptr::write(result__, ::core::mem::transmute_copy(&ok__)); ::core::mem::forget(ok__); ::windows::core::HRESULT(0) } ::core::result::Result::Err(err) => err.into(), } } unsafe extern "system" fn GetUInt32, Impl: IPropertyValue_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, result__: *mut u32) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); match this.GetUInt32() { ::core::result::Result::Ok(ok__) => { ::core::ptr::write(result__, ::core::mem::transmute_copy(&ok__)); ::core::mem::forget(ok__); ::windows::core::HRESULT(0) } ::core::result::Result::Err(err) => err.into(), } } unsafe extern "system" fn GetInt64, Impl: IPropertyValue_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, result__: *mut i64) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); match this.GetInt64() { ::core::result::Result::Ok(ok__) => { ::core::ptr::write(result__, ::core::mem::transmute_copy(&ok__)); ::core::mem::forget(ok__); ::windows::core::HRESULT(0) } ::core::result::Result::Err(err) => err.into(), } } unsafe extern "system" fn GetUInt64, Impl: IPropertyValue_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, result__: *mut u64) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); match this.GetUInt64() { ::core::result::Result::Ok(ok__) => { ::core::ptr::write(result__, ::core::mem::transmute_copy(&ok__)); ::core::mem::forget(ok__); ::windows::core::HRESULT(0) } ::core::result::Result::Err(err) => err.into(), } } unsafe extern "system" fn GetSingle, Impl: IPropertyValue_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, result__: *mut f32) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); match this.GetSingle() { ::core::result::Result::Ok(ok__) => { ::core::ptr::write(result__, ::core::mem::transmute_copy(&ok__)); ::core::mem::forget(ok__); ::windows::core::HRESULT(0) } ::core::result::Result::Err(err) => err.into(), } } unsafe extern "system" fn GetDouble, Impl: IPropertyValue_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, result__: *mut f64) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); match this.GetDouble() { ::core::result::Result::Ok(ok__) => { ::core::ptr::write(result__, ::core::mem::transmute_copy(&ok__)); ::core::mem::forget(ok__); ::windows::core::HRESULT(0) } ::core::result::Result::Err(err) => err.into(), } } unsafe extern "system" fn GetChar16, Impl: IPropertyValue_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, result__: *mut u16) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); match this.GetChar16() { ::core::result::Result::Ok(ok__) => { ::core::ptr::write(result__, ::core::mem::transmute_copy(&ok__)); ::core::mem::forget(ok__); ::windows::core::HRESULT(0) } ::core::result::Result::Err(err) => err.into(), } } unsafe extern "system" fn GetBoolean, Impl: IPropertyValue_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, result__: *mut bool) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); match this.GetBoolean() { ::core::result::Result::Ok(ok__) => { ::core::ptr::write(result__, ::core::mem::transmute_copy(&ok__)); ::core::mem::forget(ok__); ::windows::core::HRESULT(0) } ::core::result::Result::Err(err) => err.into(), } } unsafe extern "system" fn GetString, Impl: IPropertyValue_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, result__: *mut ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); match this.GetString() { ::core::result::Result::Ok(ok__) => { ::core::ptr::write(result__, ::core::mem::transmute_copy(&ok__)); ::core::mem::forget(ok__); ::windows::core::HRESULT(0) } ::core::result::Result::Err(err) => err.into(), } } unsafe extern "system" fn GetGuid, Impl: IPropertyValue_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, result__: *mut ::windows::core::GUID) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); match this.GetGuid() { ::core::result::Result::Ok(ok__) => { ::core::ptr::write(result__, ::core::mem::transmute_copy(&ok__)); ::core::mem::forget(ok__); ::windows::core::HRESULT(0) } ::core::result::Result::Err(err) => err.into(), } } unsafe extern "system" fn GetDateTime, Impl: IPropertyValue_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, result__: *mut DateTime) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); match this.GetDateTime() { ::core::result::Result::Ok(ok__) => { ::core::ptr::write(result__, ::core::mem::transmute_copy(&ok__)); ::core::mem::forget(ok__); ::windows::core::HRESULT(0) } ::core::result::Result::Err(err) => err.into(), } } unsafe extern "system" fn GetTimeSpan, Impl: IPropertyValue_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, result__: *mut TimeSpan) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); match this.GetTimeSpan() { ::core::result::Result::Ok(ok__) => { ::core::ptr::write(result__, ::core::mem::transmute_copy(&ok__)); ::core::mem::forget(ok__); ::windows::core::HRESULT(0) } ::core::result::Result::Err(err) => err.into(), } } unsafe extern "system" fn GetPoint, Impl: IPropertyValue_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, result__: *mut Point) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); match this.GetPoint() { ::core::result::Result::Ok(ok__) => { ::core::ptr::write(result__, ::core::mem::transmute_copy(&ok__)); ::core::mem::forget(ok__); ::windows::core::HRESULT(0) } ::core::result::Result::Err(err) => err.into(), } } unsafe extern "system" fn GetSize, Impl: IPropertyValue_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, result__: *mut Size) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); match this.GetSize() { ::core::result::Result::Ok(ok__) => { ::core::ptr::write(result__, ::core::mem::transmute_copy(&ok__)); ::core::mem::forget(ok__); ::windows::core::HRESULT(0) } ::core::result::Result::Err(err) => err.into(), } } unsafe extern "system" fn GetRect, Impl: IPropertyValue_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, result__: *mut Rect) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); match this.GetRect() { ::core::result::Result::Ok(ok__) => { ::core::ptr::write(result__, ::core::mem::transmute_copy(&ok__)); ::core::mem::forget(ok__); ::windows::core::HRESULT(0) } ::core::result::Result::Err(err) => err.into(), } } unsafe extern "system" fn GetUInt8Array, Impl: IPropertyValue_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, value_array_size: *mut u32, value: *mut *mut u8) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); this.GetUInt8Array(::windows::core::ArrayProxy::from_raw_parts(::core::mem::transmute_copy(&value), value_array_size).as_array()).into() } unsafe extern "system" fn GetInt16Array, Impl: IPropertyValue_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, value_array_size: *mut u32, value: *mut *mut i16) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); this.GetInt16Array(::windows::core::ArrayProxy::from_raw_parts(::core::mem::transmute_copy(&value), value_array_size).as_array()).into() } unsafe extern "system" fn GetUInt16Array, Impl: IPropertyValue_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, value_array_size: *mut u32, value: *mut *mut u16) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); this.GetUInt16Array(::windows::core::ArrayProxy::from_raw_parts(::core::mem::transmute_copy(&value), value_array_size).as_array()).into() } unsafe extern "system" fn GetInt32Array, Impl: IPropertyValue_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, value_array_size: *mut u32, value: *mut *mut i32) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); this.GetInt32Array(::windows::core::ArrayProxy::from_raw_parts(::core::mem::transmute_copy(&value), value_array_size).as_array()).into() } unsafe extern "system" fn GetUInt32Array, Impl: IPropertyValue_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, value_array_size: *mut u32, value: *mut *mut u32) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); this.GetUInt32Array(::windows::core::ArrayProxy::from_raw_parts(::core::mem::transmute_copy(&value), value_array_size).as_array()).into() } unsafe extern "system" fn GetInt64Array, Impl: IPropertyValue_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, value_array_size: *mut u32, value: *mut *mut i64) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); this.GetInt64Array(::windows::core::ArrayProxy::from_raw_parts(::core::mem::transmute_copy(&value), value_array_size).as_array()).into() } unsafe extern "system" fn GetUInt64Array, Impl: IPropertyValue_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, value_array_size: *mut u32, value: *mut *mut u64) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); this.GetUInt64Array(::windows::core::ArrayProxy::from_raw_parts(::core::mem::transmute_copy(&value), value_array_size).as_array()).into() } unsafe extern "system" fn GetSingleArray, Impl: IPropertyValue_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, value_array_size: *mut u32, value: *mut *mut f32) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); this.GetSingleArray(::windows::core::ArrayProxy::from_raw_parts(::core::mem::transmute_copy(&value), value_array_size).as_array()).into() } unsafe extern "system" fn GetDoubleArray, Impl: IPropertyValue_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, value_array_size: *mut u32, value: *mut *mut f64) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); this.GetDoubleArray(::windows::core::ArrayProxy::from_raw_parts(::core::mem::transmute_copy(&value), value_array_size).as_array()).into() } unsafe extern "system" fn GetChar16Array, Impl: IPropertyValue_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, value_array_size: *mut u32, value: *mut *mut u16) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); this.GetChar16Array(::windows::core::ArrayProxy::from_raw_parts(::core::mem::transmute_copy(&value), value_array_size).as_array()).into() } unsafe extern "system" fn GetBooleanArray, Impl: IPropertyValue_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, value_array_size: *mut u32, value: *mut *mut bool) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); this.GetBooleanArray(::windows::core::ArrayProxy::from_raw_parts(::core::mem::transmute_copy(&value), value_array_size).as_array()).into() } unsafe extern "system" fn GetStringArray, Impl: IPropertyValue_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, value_array_size: *mut u32, value: *mut *mut ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); this.GetStringArray(::windows::core::ArrayProxy::from_raw_parts(::core::mem::transmute_copy(&value), value_array_size).as_array()).into() } unsafe extern "system" fn GetInspectableArray, Impl: IPropertyValue_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, value_array_size: *mut u32, value: *mut *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); this.GetInspectableArray(::windows::core::ArrayProxy::from_raw_parts(::core::mem::transmute_copy(&value), value_array_size).as_array()).into() } unsafe extern "system" fn GetGuidArray, Impl: IPropertyValue_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, value_array_size: *mut u32, value: *mut *mut ::windows::core::GUID) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); this.GetGuidArray(::windows::core::ArrayProxy::from_raw_parts(::core::mem::transmute_copy(&value), value_array_size).as_array()).into() } unsafe extern "system" fn GetDateTimeArray, Impl: IPropertyValue_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, value_array_size: *mut u32, value: *mut *mut DateTime) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); this.GetDateTimeArray(::windows::core::ArrayProxy::from_raw_parts(::core::mem::transmute_copy(&value), value_array_size).as_array()).into() } unsafe extern "system" fn GetTimeSpanArray, Impl: IPropertyValue_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, value_array_size: *mut u32, value: *mut *mut TimeSpan) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); this.GetTimeSpanArray(::windows::core::ArrayProxy::from_raw_parts(::core::mem::transmute_copy(&value), value_array_size).as_array()).into() } unsafe extern "system" fn GetPointArray, Impl: IPropertyValue_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, value_array_size: *mut u32, value: *mut *mut Point) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); this.GetPointArray(::windows::core::ArrayProxy::from_raw_parts(::core::mem::transmute_copy(&value), value_array_size).as_array()).into() } unsafe extern "system" fn GetSizeArray, Impl: IPropertyValue_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, value_array_size: *mut u32, value: *mut *mut Size) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); this.GetSizeArray(::windows::core::ArrayProxy::from_raw_parts(::core::mem::transmute_copy(&value), value_array_size).as_array()).into() } unsafe extern "system" fn GetRectArray, Impl: IPropertyValue_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, value_array_size: *mut u32, value: *mut *mut Rect) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); this.GetRectArray(::windows::core::ArrayProxy::from_raw_parts(::core::mem::transmute_copy(&value), value_array_size).as_array()).into() } Self { base__: ::windows::core::IInspectable_Vtbl::new::(), Type: Type::, IsNumericScalar: IsNumericScalar::, GetUInt8: GetUInt8::, GetInt16: GetInt16::, GetUInt16: GetUInt16::, GetInt32: GetInt32::, GetUInt32: GetUInt32::, GetInt64: GetInt64::, GetUInt64: GetUInt64::, GetSingle: GetSingle::, GetDouble: GetDouble::, GetChar16: GetChar16::, GetBoolean: GetBoolean::, GetString: GetString::, GetGuid: GetGuid::, GetDateTime: GetDateTime::, GetTimeSpan: GetTimeSpan::, GetPoint: GetPoint::, GetSize: GetSize::, GetRect: GetRect::, GetUInt8Array: GetUInt8Array::, GetInt16Array: GetInt16Array::, GetUInt16Array: GetUInt16Array::, GetInt32Array: GetInt32Array::, GetUInt32Array: GetUInt32Array::, GetInt64Array: GetInt64Array::, GetUInt64Array: GetUInt64Array::, GetSingleArray: GetSingleArray::, GetDoubleArray: GetDoubleArray::, GetChar16Array: GetChar16Array::, GetBooleanArray: GetBooleanArray::, GetStringArray: GetStringArray::, GetInspectableArray: GetInspectableArray::, GetGuidArray: GetGuidArray::, GetDateTimeArray: GetDateTimeArray::, GetTimeSpanArray: GetTimeSpanArray::, GetPointArray: GetPointArray::, GetSizeArray: GetSizeArray::, GetRectArray: GetRectArray::, } } pub fn matches(iid: &windows::core::GUID) -> bool { iid == &::IID } } #[doc = "*Required features: `\"Foundation\"`, `\"implement\"`*"] pub trait IReference_Impl: Sized + IPropertyValue_Impl where T: ::windows::core::RuntimeType + 'static, { fn Value(&self) -> ::windows::core::Result; } impl ::windows::core::RuntimeName for IReference { const NAME: &'static str = "Windows.Foundation.IReference"; } impl IReference_Vtbl { pub const fn new, Impl: IReference_Impl, const OFFSET: isize>() -> IReference_Vtbl { unsafe extern "system" fn Value, Impl: IReference_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, result__: *mut ::windows::core::AbiType) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); match this.Value() { ::core::result::Result::Ok(ok__) => { ::core::ptr::write(result__, ::core::mem::transmute_copy(&ok__)); ::core::mem::forget(ok__); ::windows::core::HRESULT(0) } ::core::result::Result::Err(err) => err.into(), } } Self { base__: ::windows::core::IInspectable_Vtbl::new::, OFFSET>(), Value: Value::, T: ::core::marker::PhantomData::, } } pub fn matches(iid: &windows::core::GUID) -> bool { iid == & as ::windows::core::ComInterface>::IID } } #[doc = "*Required features: `\"Foundation\"`, `\"implement\"`*"] pub trait IReferenceArray_Impl: Sized + IPropertyValue_Impl where T: ::windows::core::RuntimeType + 'static, { fn Value(&self) -> ::windows::core::Result<::windows::core::Array>; } impl ::windows::core::RuntimeName for IReferenceArray { const NAME: &'static str = "Windows.Foundation.IReferenceArray"; } impl IReferenceArray_Vtbl { pub const fn new, Impl: IReferenceArray_Impl, const OFFSET: isize>() -> IReferenceArray_Vtbl { unsafe extern "system" fn Value, Impl: IReferenceArray_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, result_size__: *mut u32, result__: *mut *mut ::windows::core::AbiType) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); match this.Value() { ::core::result::Result::Ok(ok__) => { let (ok_data__, ok_data_len__) = ok__.into_abi(); ::core::ptr::write(result__, ok_data__); ::core::ptr::write(result_size__, ok_data_len__); ::windows::core::HRESULT(0) } ::core::result::Result::Err(err) => err.into(), } } Self { base__: ::windows::core::IInspectable_Vtbl::new::, OFFSET>(), Value: Value::, T: ::core::marker::PhantomData::, } } pub fn matches(iid: &windows::core::GUID) -> bool { iid == & as ::windows::core::ComInterface>::IID } } #[doc = "*Required features: `\"Foundation\"`, `\"implement\"`*"] pub trait IStringable_Impl: Sized { fn ToString(&self) -> ::windows::core::Result<::windows::core::HSTRING>; } impl ::windows::core::RuntimeName for IStringable { const NAME: &'static str = "Windows.Foundation.IStringable"; } impl IStringable_Vtbl { pub const fn new, Impl: IStringable_Impl, const OFFSET: isize>() -> IStringable_Vtbl { unsafe extern "system" fn ToString, Impl: IStringable_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, result__: *mut ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); match this.ToString() { ::core::result::Result::Ok(ok__) => { ::core::ptr::write(result__, ::core::mem::transmute_copy(&ok__)); ::core::mem::forget(ok__); ::windows::core::HRESULT(0) } ::core::result::Result::Err(err) => err.into(), } } Self { base__: ::windows::core::IInspectable_Vtbl::new::(), ToString: ToString:: } } pub fn matches(iid: &windows::core::GUID) -> bool { iid == &::IID } } #[doc = "*Required features: `\"Foundation\"`, `\"implement\"`*"] pub trait IWwwFormUrlDecoderEntry_Impl: Sized { fn Name(&self) -> ::windows::core::Result<::windows::core::HSTRING>; fn Value(&self) -> ::windows::core::Result<::windows::core::HSTRING>; } impl ::windows::core::RuntimeName for IWwwFormUrlDecoderEntry { const NAME: &'static str = "Windows.Foundation.IWwwFormUrlDecoderEntry"; } impl IWwwFormUrlDecoderEntry_Vtbl { pub const fn new, Impl: IWwwFormUrlDecoderEntry_Impl, const OFFSET: isize>() -> IWwwFormUrlDecoderEntry_Vtbl { unsafe extern "system" fn Name, Impl: IWwwFormUrlDecoderEntry_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, result__: *mut ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); match this.Name() { ::core::result::Result::Ok(ok__) => { ::core::ptr::write(result__, ::core::mem::transmute_copy(&ok__)); ::core::mem::forget(ok__); ::windows::core::HRESULT(0) } ::core::result::Result::Err(err) => err.into(), } } unsafe extern "system" fn Value, Impl: IWwwFormUrlDecoderEntry_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, result__: *mut ::std::mem::MaybeUninit<::windows::core::HSTRING>) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); match this.Value() { ::core::result::Result::Ok(ok__) => { ::core::ptr::write(result__, ::core::mem::transmute_copy(&ok__)); ::core::mem::forget(ok__); ::windows::core::HRESULT(0) } ::core::result::Result::Err(err) => err.into(), } } Self { base__: ::windows::core::IInspectable_Vtbl::new::(), Name: Name::, Value: Value::, } } pub fn matches(iid: &windows::core::GUID) -> bool { iid == &::IID } }