use std::path::Path;
use lief_ffi as ffi;
use crate::common::into_optional;
pub mod build_metadata;
pub mod compilation_unit;
pub mod debug_info;
pub mod function;
pub mod public_symbol;
pub mod types;
#[doc(inline)]
pub use debug_info::DebugInfo;
#[doc(inline)]
pub use compilation_unit::CompilationUnit;
#[doc(inline)]
pub use public_symbol::PublicSymbol;
#[doc(inline)]
pub use function::Function;
#[doc(inline)]
pub use types::Type;
#[doc(inline)]
pub use build_metadata::BuildMetadata;
pub fn load<P: AsRef<Path>>(path: P) -> Option<DebugInfo<'static>> {
cxx::let_cxx_string!(__cxx_s = path.as_ref().to_str().unwrap());
into_optional(ffi::PDB_DebugInfo::from_file(&__cxx_s))
}
pub fn is_pdb<P: AsRef<Path>>(path: P) -> bool {
cxx::let_cxx_string!(__cxx_s = path.as_ref().to_str().unwrap());
ffi::PDB_Utils::is_pdb(&__cxx_s)
}