struct SectionHeaderFlags [src]
Fields
_reserved_0: u3 = 0
TYPE_NO_PAD: u1 = 0The section should not be padded to the next boundary.
This flag is obsolete and is replaced by IMAGE_SCN_ALIGN_1BYTES.
This is valid only for object files.
_reserved_1: u1 = 0
CNT_CODE: u1 = 0The section contains executable code.
CNT_INITIALIZED_DATA: u1 = 0The section contains initialized data.
CNT_UNINITIALIZED_DATA: u1 = 0The section contains uninitialized data.
LNK_OTHER: u1 = 0Reserved for future use.
LNK_INFO: u1 = 0The section contains comments or other information.
The .drectve section has this type.
This is valid for object files only.
_reserved_2: u1 = 0
LNK_REMOVE: u1 = 0The section will not become part of the image.
This is valid only for object files.
LNK_COMDAT: u1 = 0The section contains COMDAT data.
For more information, see COMDAT Sections (Object Only).
This is valid only for object files.
_reserved_3: u2 = 0
GPREL: u1 = 0The section contains data referenced through the global pointer (GP).
MEM_PURGEABLE: u1 = 0Reserved for future use.
MEM_16BIT: u1 = 0Reserved for future use.
MEM_LOCKED: u1 = 0Reserved for future use.
MEM_PRELOAD: u1 = 0Reserved for future use.
ALIGN: u4 = 0Takes on multiple values according to flags:
pub const IMAGE_SCN_ALIGN_1BYTES: u32 = 0x100000;
pub const IMAGE_SCN_ALIGN_2BYTES: u32 = 0x200000;
pub const IMAGE_SCN_ALIGN_4BYTES: u32 = 0x300000;
pub const IMAGE_SCN_ALIGN_8BYTES: u32 = 0x400000;
pub const IMAGE_SCN_ALIGN_16BYTES: u32 = 0x500000;
pub const IMAGE_SCN_ALIGN_32BYTES: u32 = 0x600000;
pub const IMAGE_SCN_ALIGN_64BYTES: u32 = 0x700000;
pub const IMAGE_SCN_ALIGN_128BYTES: u32 = 0x800000;
pub const IMAGE_SCN_ALIGN_256BYTES: u32 = 0x900000;
pub const IMAGE_SCN_ALIGN_512BYTES: u32 = 0xA00000;
pub const IMAGE_SCN_ALIGN_1024BYTES: u32 = 0xB00000;
pub const IMAGE_SCN_ALIGN_2048BYTES: u32 = 0xC00000;
pub const IMAGE_SCN_ALIGN_4096BYTES: u32 = 0xD00000;
pub const IMAGE_SCN_ALIGN_8192BYTES: u32 = 0xE00000;
LNK_NRELOC_OVFL: u1 = 0The section contains extended relocations.
MEM_DISCARDABLE: u1 = 0The section can be discarded as needed.
MEM_NOT_CACHED: u1 = 0The section cannot be cached.
MEM_NOT_PAGED: u1 = 0The section is not pageable.
MEM_SHARED: u1 = 0The section can be shared in memory.
MEM_EXECUTE: u1 = 0The section can be executed as code.
MEM_READ: u1 = 0The section can be read.
MEM_WRITE: u1 = 0The section can be written to.
 Source
 pub const SectionHeaderFlags = packed struct {
    _reserved_0: u3 = 0,
    /// The section should not be padded to the next boundary.
    /// This flag is obsolete and is replaced by IMAGE_SCN_ALIGN_1BYTES.
    /// This is valid only for object files.
    TYPE_NO_PAD: u1 = 0,
    _reserved_1: u1 = 0,
    /// The section contains executable code.
    CNT_CODE: u1 = 0,
    /// The section contains initialized data.
    CNT_INITIALIZED_DATA: u1 = 0,
    /// The section contains uninitialized data.
    CNT_UNINITIALIZED_DATA: u1 = 0,
    /// Reserved for future use.
    LNK_OTHER: u1 = 0,
    /// The section contains comments or other information.
    /// The .drectve section has this type.
    /// This is valid for object files only.
    LNK_INFO: u1 = 0,
    _reserved_2: u1 = 0,
    /// The section will not become part of the image.
    /// This is valid only for object files.
    LNK_REMOVE: u1 = 0,
    /// The section contains COMDAT data.
    /// For more information, see COMDAT Sections (Object Only).
    /// This is valid only for object files.
    LNK_COMDAT: u1 = 0,
    _reserved_3: u2 = 0,
    /// The section contains data referenced through the global pointer (GP).
    GPREL: u1 = 0,
    /// Reserved for future use.
    MEM_PURGEABLE: u1 = 0,
    /// Reserved for future use.
    MEM_16BIT: u1 = 0,
    /// Reserved for future use.
    MEM_LOCKED: u1 = 0,
    /// Reserved for future use.
    MEM_PRELOAD: u1 = 0,
    /// Takes on multiple values according to flags:
    /// pub const IMAGE_SCN_ALIGN_1BYTES: u32 = 0x100000;
    /// pub const IMAGE_SCN_ALIGN_2BYTES: u32 = 0x200000;
    /// pub const IMAGE_SCN_ALIGN_4BYTES: u32 = 0x300000;
    /// pub const IMAGE_SCN_ALIGN_8BYTES: u32 = 0x400000;
    /// pub const IMAGE_SCN_ALIGN_16BYTES: u32 = 0x500000;
    /// pub const IMAGE_SCN_ALIGN_32BYTES: u32 = 0x600000;
    /// pub const IMAGE_SCN_ALIGN_64BYTES: u32 = 0x700000;
    /// pub const IMAGE_SCN_ALIGN_128BYTES: u32 = 0x800000;
    /// pub const IMAGE_SCN_ALIGN_256BYTES: u32 = 0x900000;
    /// pub const IMAGE_SCN_ALIGN_512BYTES: u32 = 0xA00000;
    /// pub const IMAGE_SCN_ALIGN_1024BYTES: u32 = 0xB00000;
    /// pub const IMAGE_SCN_ALIGN_2048BYTES: u32 = 0xC00000;
    /// pub const IMAGE_SCN_ALIGN_4096BYTES: u32 = 0xD00000;
    /// pub const IMAGE_SCN_ALIGN_8192BYTES: u32 = 0xE00000;
    ALIGN: u4 = 0,
    /// The section contains extended relocations.
    LNK_NRELOC_OVFL: u1 = 0,
    /// The section can be discarded as needed.
    MEM_DISCARDABLE: u1 = 0,
    /// The section cannot be cached.
    MEM_NOT_CACHED: u1 = 0,
    /// The section is not pageable.
    MEM_NOT_PAGED: u1 = 0,
    /// The section can be shared in memory.
    MEM_SHARED: u1 = 0,
    /// The section can be executed as code.
    MEM_EXECUTE: u1 = 0,
    /// The section can be read.
    MEM_READ: u1 = 0,
    /// The section can be written to.
    MEM_WRITE: u1 = 0,
}