#![allow(non_camel_case_types, non_snake_case)]
use crate::co;
use crate::decl::*;
use crate::kernel::privs::*;
use crate::ole::{privs::*, vts::*};
use crate::prelude::*;
com_interface! { IPersist: "0000010c-0000-0000-c000-000000000046";
}
impl ole_IPersist for IPersist {}
pub trait ole_IPersist: ole_IUnknown {
#[must_use]
fn GetClassID(&self) -> HrResult<co::CLSID> {
let mut clsid = co::CLSID::default();
HrRet(unsafe { (vt::<IPersistVT>(self).GetClassID)(self.ptr(), pvoid(&mut clsid)) })
.to_hrresult()
.map(|_| clsid)
}
}