#[cxx::bridge]
pub mod ffi {
unsafe extern "C++" {
include!("LIEF/rust/PE/Section.hpp");
type Span = crate::utils::ffi::Span;
type COFF_String = crate::coff::string::ffi::COFF_String;
type PE_Section;
fn padding(self: &PE_Section) -> Span;
#[Self = "PE_Section"]
fn create() -> UniquePtr<PE_Section>;
#[Self = "PE_Section"]
fn create_with_name(name: &CxxString) -> UniquePtr<PE_Section>;
#[Self = "PE_Section"]
unsafe fn create_with_content(
name: &CxxString,
buffer: *const u8,
size: usize,
) -> UniquePtr<PE_Section>;
fn sizeof_raw_data(self: &PE_Section) -> u32;
fn virtual_size(self: &PE_Section) -> u32;
fn pointerto_raw_data(self: &PE_Section) -> u32;
fn pointerto_relocation(self: &PE_Section) -> u32;
fn pointerto_line_numbers(self: &PE_Section) -> u32;
fn numberof_relocations(self: &PE_Section) -> u16;
fn numberof_line_numbers(self: &PE_Section) -> u16;
fn characteristics(self: &PE_Section) -> u32;
fn is_discardable(self: &PE_Section) -> bool;
fn coff_string(self: &PE_Section) -> UniquePtr<COFF_String>;
fn set_virtual_size(self: Pin<&mut PE_Section>, virtual_size: u32);
}
impl UniquePtr<PE_Section> {}
}