Struct elflib::ElfFlags

source ·
pub struct ElfFlags(/* private fields */);

Implementations§

source§

impl ElfFlags

source

pub const XGATE_ABI: Self = _

source

pub const M68HC11_ABI: Self = _

source

pub const M68K_CF_ISA_MASK: Self = _

Which ISA

source

pub const IA_64_MASKOS: Self = _

OS-specific flags.

source

pub const PICOJAVA_ARCH: Self = _

source

pub const BPF_CPUVER: Self = _

source

pub const XTENSA_MACH: Self = _

source

pub const M32R_IGNORE: Self = _

source

pub const NDS32_ELF_VERSION: Self = _

source

pub const XGATE_MACH_MASK: Self = _

source

pub const M68HC11_MACH_MASK: Self = _

source

pub const NDS_ABI: Self = _

source

pub const XGATE_MACH: Self = _

XGATE microcontroller.

source

pub const ARM_NEW_ABI: Self = _

source

pub const AVR_LINKRELAX_PREPARED: Self = _

source

pub const FRV_MEDIA: Self = _

-mmedia

source

pub const MIPS_OPTIONS_FIRST: Self = _

source

pub const IA_64_NOFUNCDESC_CONS_GP: Self = _

And no function descriptors.

source

pub const FRV_GPR_MASK: Self = _

mask for # of gprs

source

pub const IQ2000_CPU_MASK: Self = _

specific cpu bits

source

pub const MT_CPU_MS2: Self = _

MS2

source

pub const MT_CPU_MASK: Self = _

specific cpu bits

source

pub const M68K_CF_ISA_A_PLUS: Self = _

source

pub const IA_64_VMS_COMCOD: Self = _

Completion code.

source

pub const Z80_MACH_R800: Self = _

source

pub const IA_64_VMS_COMCOD_ABORT: Self = _

source

pub const PPC64_ABI: Self = _

source

pub const SH3: Self = _

source

pub const IQ2000_ALL_FLAGS: Self = _

source

pub const BFIN_PIC_FLAGS: Self = _

source

pub const SPARCV9_MM: Self = _

memory model mask

source

pub const LOONGARCH_ABI_DOUBLE_FLOAT: Self = _

source

pub const MT_ALL_FLAGS: Self = _

source

pub const FRV_GPR_32: Self = _

-mgpr-32

source

pub const RH850_FPU_DOUBLE: Self = _

sizeof(double) == 8.

source

pub const S390_HIGH_GPRS: Self = _

source

pub const MIPS_NOREORDER: Self = _

source

pub const IQ2000_CPU_IQ2000: Self = _

default

source

pub const BFIN_PIC: Self = _

-fpic

source

pub const NIOS2_ARCH_R2: Self = _

source

pub const LM32_MACH: Self = _

source

pub const MT_CPU_MRISC: Self = _

default

source

pub const ALPHA_32BIT: Self = _

source

pub const CRIS_UNDERSCORE: Self = _

source

pub const VAX_NONPIC: Self = _

Object contains non-PIC code

source

pub const RH850_DATA_ALIGN4: Self = _

Aligned to 4-byte bounadries.

source

pub const RH850_DOUBLE32: Self = _

32-bits in size.

source

pub const RH850_FPU20: Self = _

Set if [N]]M{ADD|SUB}F.S are used.

source

pub const RH850_SIMD: Self = _

source

pub const RH850_CACHE: Self = _

source

pub const RH850_MMU: Self = _

source

pub const RISCV_RVC: Self = _

source

pub const VISIUM_ARCH_MCM: Self = _

source

pub const M68K_CF_ISA_A_NODIV: Self = _

ISA A except for div

source

pub const Z80_MACH_Z80: Self = _

source

pub const ARM_RELEXEC: Self = _

source

pub const IA_64_TRAPNIL: Self = _

Trap NIL pointer dereferences.

source

pub const IA_64_VMS_COMCOD_WARNING: Self = _

source

pub const SH1: Self = _

source

pub const OR1K_NODELAY: Self = _

source

pub const SPARCV9_PSO: Self = _

partial store ordering

source

pub const LOONGARCH_ABI_SOFT_FLOAT: Self = _

source

pub const C6000_REL: Self = _

source

pub const FRV_GPR_64: Self = _

-mgpr-64

source

pub const RH850_FPU_SINGLE: Self = _

sizeof(double) == 4.

source

pub const MIPS_PIC: Self = _

source

pub const IQ2000_CPU_IQ10: Self = _

IQ10

source

pub const BFIN_FDPIC: Self = _

-mfdpic

source

pub const MT_CPU_MRISC2: Self = _

MRISC2

source

pub const ALPHA_CANRELAX: Self = _

source

pub const CRIS_VARIANT_V32: Self = _

source

pub const RH850_DATA_ALIGN8: Self = _

Aligned to 8-byte bounadries.

source

pub const RH850_DOUBLE64: Self = _

64-bits in size.

source

pub const RH850_FPU30: Self = _

Set if ADSF.D or ADDF.D is used.

source

pub const RISCV_FLOAT_ABI_SINGLE: Self = _

source

pub const VISIUM_ARCH_MCM24: Self = _

source

pub const M68K_CF_ISA_A: Self = _

source

pub const Z80_MACH_Z180: Self = _

source

pub const ARM_HASENTRY: Self = _

source

pub const IA_64_VMS_COMCOD_ERROR: Self = _

source

pub const SH2: Self = _

source

pub const SPARCV9_RMO: Self = _

relaxed store ordering

source

pub const LOONGARCH_ABI_SINGLE_FLOAT: Self = _

source

pub const FRV_FPR_MASK: Self = _

mask for # of fprs

source

pub const FRV_FPR_NONE: Self = _

-msoft-float

source

pub const SH4A: Self = _

source

pub const FRV_FPR_32: Self = _

-mfpr-32

source

pub const MIPS_CPIC: Self = _

source

pub const CRIS_VARIANT_COMMON_V10_V32: Self = _

source

pub const RISCV_FLOAT_ABI_DOUBLE: Self = _

source

pub const VISIUM_ARCH_GR6: Self = _

source

pub const M68K_CF_ISA_B_NOUSP: Self = _

ISA_B except for USP

source

pub const IA_64_VMS_LINKAGES: Self = _

Contains VMS linkages info.

source

pub const Z80_MACH_EZ80_Z80: Self = _

source

pub const ARM_INTERWORK: Self = _

source

pub const ARM_SYMSARESORTED: Self = _

NB conflicts with EF_INTERWORK.

source

pub const IA_64_EXT: Self = _

Program uses arch. extensions.

source

pub const NDS_ABI_SHIFT: Self = _

source

pub const SH_DSP: Self = _

source

pub const FRV_FPR_64: Self = _

-mfpr-64

source

pub const MIPS_XGOT: Self = _

source

pub const RISCV_RVE: Self = _

source

pub const IA_64_BE: Self = _

PSR BE bit set (big-endian).

source

pub const ARM_APCS_26: Self = _

source

pub const ARM_DYNSYMSUSESEGIDX: Self = _

NB conflicts with EF_APCS26.

source

pub const SH3E: Self = _

source

pub const FRV_DWORD_MASK: Self = _

mask for dword support

source

pub const M68K_CF_MAC_MASK: Self = _

source

pub const M68K_CF_EMAC_B: Self = _

EMAC_B

source

pub const AMDGPU_MACH_AMDGCN_GFX908: Self = _

source

pub const FRV_DWORD_YES: Self = _

use double word insns

source

pub const MIPS_UCODE: Self = _

source

pub const PICOJAVA_NEWCALLS: Self = _

source

pub const BFIN_CODE_IN_L1: Self = _

–code-in-l1

source

pub const RISCV_TSO: Self = _

source

pub const M68K_CF_MAC: Self = _

MAC

source

pub const M68HC12_MACH: Self = _

68HC12 microcontroller.

source

pub const ARM_APCS_FLOAT: Self = _

source

pub const ARM_MAPSYMSFIRST: Self = _

NB conflicts with EF_APCS_FLOAT.

source

pub const IA_64_ABI64: Self = _

64-bit ABI.

source

pub const SH4_NOFPU: Self = _

source

pub const MIPS_64BIT_WHIRL: Self = _

source

pub const FRV_DWORD_NO: Self = _

don’t use double word insn

source

pub const RH850_REGMODE22: Self = _

Registers r15-r24 (inclusive) are not used.

source

pub const MIPS_ABI2: Self = _

source

pub const PICOJAVA_GNUCALLS: Self = _

The (currently) non standard GNU calling convention

source

pub const BFIN_DATA_IN_L1: Self = _

–data-in-l1

source

pub const M68K_CF_EMAC: Self = _

EMAC

source

pub const M68HCS12_MACH: Self = _

68HCS12 microcontroller.

source

pub const ARM_PIC: Self = _

source

pub const IA_64_REDUCEDFP: Self = _

Only FP6-FP11 used.

source

pub const AMDGPU_MACH_AMDGCN_MIN: Self = _

source

pub const AMDGPU_MACH_AMDGCN_GFX600: Self = _

source

pub const FRV_DOUBLE: Self = _

-mdouble

source

pub const RH850_REGMODE32: Self = _

source

pub const M68K_CF_FLOAT: Self = _

Has float insns

source

pub const LOONGARCH_OBJABI_V1: Self = _

source

pub const ARM_ALIGN8: Self = _

8-bit structure alignment is in use.

source

pub const IA_64_CONS_GP: Self = _

gp as program wide constant.

source

pub const AMDGPU_MACH_AMDGCN_GFX940: Self = _

source

pub const MIPS_ABI_ON32: Self = _

source

pub const FRV_PIC: Self = _

-fpic

source

pub const RH850_GP_FIX: Self = _

r4 is fixed.

source

pub const MIPS_32BITMODE: Self = _

source

pub const MEP_LIBRARY: Self = _

Built as a library

source

pub const ARC_PIC: Self = _

source

pub const XTENSA_XT_INSN: Self = _

source

pub const VAX_DFLOAT: Self = _

Object contains D-Float insn.

source

pub const IA_64_ABSOLUTE: Self = _

Load at absolute addresses.

source

pub const SPARC_32PLUS: Self = _

generic V8+ features

source

pub const ARM_OLD_ABI: Self = _

source

pub const SH_PIC: Self = _

source

pub const AMDGPU_FEATURE_XNACK_V3: Self = _

source

pub const AMDGPU_FEATURE_XNACK_ANY_V4: Self = _

source

pub const FRV_NON_PIC_RELOCS: Self = _

used non pic safe relocs

source

pub const RH850_GP_NOFIX: Self = _

r4 is callee save.

source

pub const MIPS_FP64: Self = _

source

pub const XTENSA_XT_LIT: Self = _

source

pub const VAX_GFLOAT: Self = _

Object contains G-Float insn.

source

pub const SPARC_SUN_US1: Self = _

Sun UltraSPARC1 extensions

source

pub const ARM_SOFT_FLOAT: Self = _

source

pub const ARM_ABI_FLOAT_SOFT: Self = _

NB conflicts with EF_ARM_SOFT_FLOAT.

source

pub const AMDGPU_FEATURE_SRAMECC_V3: Self = _

source

pub const AMDGPU_FEATURE_XNACK_OFF_V4: Self = _

source

pub const FRV_MULADD: Self = _

-mmuladd

source

pub const RH850_EP_FIX: Self = _

r30 is fixed.

source

pub const MIPS_NAN2008: Self = _

source

pub const SPARC_HAL_R1: Self = _

HAL R1 extensions

source

pub const ARM_VFP_FLOAT: Self = _

source

pub const ARM_ABI_FLOAT_HARD: Self = _

NB conflicts with EF_ARM_VFP_FLOAT.

source

pub const AMDGPU_FEATURE_SRAMECC_ANY_V4: Self = _

source

pub const FRV_BIGPIC: Self = _

-fPIC

source

pub const RH850_EP_NOFIX: Self = _

r30 is callee save.

source

pub const SPARC_SUN_US3: Self = _

Sun UltraSPARCIII extensions

source

pub const ARM_MAVERICK_FLOAT: Self = _

source

pub const AMDGPU_FEATURE_SRAMECC_OFF_V4: Self = _

source

pub const FRV_LIBPIC: Self = _

-mlibrary-pic

source

pub const RH850_TP_FIX: Self = _

r5 is fixed.

source

pub const FRV_G0: Self = _

-G 0, no small data ptr

source

pub const RH850_TP_NOFIX: Self = _

r5 is callee save.

source

pub const FRV_NOPACK: Self = _

-mnopack

source

pub const RH850_REG2_RESERVE: Self = _

r2 is fixed.

source

pub const FRV_FDPIC: Self = _

-mfdpic

source

pub const RH850_REG2_NORESERVE: Self = _

r2 is callee saved.

source

pub const M68K_CFV4E: Self = _

source

pub const I370_RELOCATABLE_LIB: Self = _

i370 -mrelocatable-lib flag

source

pub const PPC_RELOCATABLE_LIB: Self = _

PowerPC -mrelocatable-lib flag.

source

pub const SH_FDPIC: Self = _

Uses the FDPIC ABI.

source

pub const FRV_CPU_MASK: Self = _

specific cpu bits

source

pub const IA_64_ARCH: Self = _

Arch. version mask.

source

pub const MEP_CPU_MASK: Self = _

specific cpu bits

source

pub const ARM_EABIMASK: Self = _

source

pub const FRV_CPU_GENERIC: Self = _

generic FRV

source

pub const MEP_CPU_MEP: Self = _

generic MEP

source

pub const MEP_COP_NONE: Self = _

source

pub const ARM_EABI_UNKNOWN: Self = _

source

pub const NIOS2_ARCH_R1: Self = _

source

pub const CRIS_VARIANT_ANY_V0_V10: Self = _

source

pub const MIPS_ARCH_1: Self = _

-mips1 code.

source

pub const RISCV_FLOAT_ABI_SOFT: Self = _

source

pub const IA_64_VMS_COMCOD_SUCCESS: Self = _

source

pub const NDS32_ELF_VERSION_SHIFT: Self = _

source

pub const SH_UNKNOWN: Self = _

For backwards compatibility.

source

pub const M68HC11_GENERIC: Self = _

Generic 68HC12/backward compatibility.

source

pub const SPARCV9_TSO: Self = _

total store ordering

source

pub const AMDGPU_FEATURE_XNACK_UNSUPPORTED_V4: Self = _

source

pub const AMDGPU_FEATURE_SRAMECC_UNSUPPORTED_V4: Self = _

source

pub const FRV_CPU_FR500: Self = _

FRV500

source

pub const M68K_M68000: Self = _

source

pub const MEP_CPU_C2: Self = _

MEP c2

source

pub const ARM_EABI_VER1: Self = _

source

pub const IA_64_ARCHVER_1: Self = _

Arch. version level 1 compat.

source

pub const FRV_CPU_FR300: Self = _

FRV300

source

pub const M68K_FIDO: Self = _

source

pub const MIPS_ARCH_ASE_MICROMIPS: Self = _

source

pub const MEP_CPU_C3: Self = _

MEP c3

source

pub const ARM_EABI_VER2: Self = _

source

pub const FRV_CPU_SIMPLE: Self = _

SIMPLE

source

pub const ARM_EABI_VER3: Self = _

source

pub const FRV_CPU_TOMCAT: Self = _

Tomcat, FR500 prototype

source

pub const MIPS_ARCH_ASE_M16: Self = _

source

pub const MEP_CPU_C4: Self = _

MEP c4

source

pub const ARM_EABI_VER4: Self = _

source

pub const FRV_CPU_FR400: Self = _

FRV400

source

pub const ARM_EABI_VER5: Self = _

source

pub const FRV_CPU_FR550: Self = _

FRV550

source

pub const FRV_CPU_FR405: Self = _

source

pub const FRV_CPU_FR450: Self = _

source

pub const MIPS_ARCH_ASE_MDMX: Self = _

source

pub const MEP_CPU_C5: Self = _

MEP c5

source

pub const FRV_PIC_FLAGS: Self = _

source

pub const FRV_ALL_FLAGS: Self = _

source

pub const MN10300_MACH: Self = _

source

pub const MIPS_MACH: Self = _

source

pub const H8_MACH: Self = _

source

pub const MEP_COP_MASK: Self = _

source

pub const V850_ARCH: Self = _

source

pub const MIPS_ARCH: Self = _

source

pub const RH850_ABI: Self = _

source

pub const NDS_ARCH: Self = _

source

pub const CSKY_ABIMASK: Self = _

source

pub const V800_850E3: Self = _

source

pub const PARISC_NO_KABP: Self = _

source

pub const RISCV_FLOAT_ABI: Self = _

source

pub const RISCV_FLOAT_ABI_QUAD: Self = _

source

pub const M68K_CF_ISA_C: Self = _

source

pub const Z80_MACH_Z80N: Self = _

source

pub const SH4AL_DSP: Self = _

source

pub const ARC_CPU_ARCV2HS: Self = _

source

pub const M68K_CPU32: Self = _

source

pub const CPU32: Self = _

source

pub const M68K_ARCH_MASK: Self = _

source

pub const M68K_CF_ISA_B: Self = _

source

pub const Z80_MACH_GBZ80: Self = _

source

pub const SH3_DSP: Self = _

source

pub const ARC_CPU_ARCV2EM: Self = _

source

pub const M68K_CF_ISA_C_NODIV: Self = _

ISA C except for div

source

pub const LOONGARCH_ABI_MODIFIER_MASK: Self = _

source

pub const M68K_CF_MASK: Self = _

source

pub const MEP_INDEX_MASK: Self = _

Configuration index

source

pub const ARC_MACH_MSK: Self = _

source

pub const MSP430_MACH: Self = _

source

pub const Z80_MACH_MSK: Self = _

source

pub const AMDGPU_MACH: Self = _

source

pub const I370_RELOCATABLE: Self = _

i370 -mrelocatable flag

source

pub const PARISC_TRAPNIL: Self = _

source

pub const PPC_RELOCATABLE: Self = _

PowerPC -mrelocatable flag.

source

pub const MEP_COP_AVC: Self = _

source

pub const SCORE_MACH: Self = _

source

pub const OMIT_PIC_FIXDD: Self = _

source

pub const M32R_INST: Self = _

source

pub const CSKY_OTHER: Self = _

source

pub const SCORE_PIC: Self = _

source

pub const PPC_EMB: Self = _

PowerPC embedded flag.

source

pub const MIPS_ARCH_64R2: Self = _

MIPS64r2 code.

source

pub const SCORE_FIXDEP: Self = _

source

pub const MIPS_ARCH_5: Self = _

-mips5 code.

source

pub const PARISC_EXT: Self = _

source

pub const MEP_COP_AVC2: Self = _

source

pub const PARISC_LSB: Self = _

source

pub const PARISC_WIDE: Self = _

source

pub const PARISC_LAZYSWAP: Self = _

source

pub const ARM_LE8: Self = _

source

pub const PARISC_ARCH: Self = _

source

pub const CSKY_PROCESSOR: Self = _

source

pub const M32R_ARCH: Self = _

source

pub const MIPS_ARCH_4: Self = _

-mips4 code.

source

pub const MIPS_ARCH_ASE: Self = _

source

pub const MIPS_ABI: Self = _

source

pub const MEP_CPU_H1: Self = _

MEP h1

source

pub const MIPS_ARCH_2: Self = _

-mips2 code.

source

pub const CSKY_ABIV1: Self = _

source

pub const MEP_COP_FMAX: Self = _

source

pub const MEP_COP_IVC2: Self = _

source

pub const MEP_ALL_FLAGS: Self = _

source

pub const RL78_CPU_RL78: Self = _

FIXME: correct value?

source

pub const RX_CPU_RX: Self = _

FIXME: this collides with the E_FLAG_RX_… values below.

source

pub const RL78_CPU_MASK: Self = _

specific cpu bits.

source

pub const M32C_CPU_MASK: Self = _

specific cpu bits

source

pub const RL78_ALL_FLAGS: Self = _

source

pub const AVR_MACH: Self = _

source

pub const M32C_ALL_FLAGS: Self = _

source

pub const Z80_MACH_EZ80_ADL: Self = _

source

pub const SPARC_32PLUS_MASK: Self = _

bits indicating V8+ type

source

pub const SPARC_EXT_MASK: Self = _

reserved for vendor extensions

source

pub const SPARC_LEDATA: Self = _

little endian data

source

pub const ARM_BE8: Self = _

source

pub const LOONGARCH_OBJABI_MASK: Self = _

source

pub const LOONGARCH_ABI_MASK: Self = _

source

pub const M32C_CPU_M16C: Self = _

default

source

pub const M32C_CPU_M32C: Self = _

m32c

source

pub const NDS_ARCH_SHIFT: Self = _

source

pub const NDS_INST: Self = _

source

pub const SH_MACH_MASK: Self = _

source

pub const SH4: Self = _

source

pub const SH2E: Self = _

source

pub const SH2A: Self = _

source

pub const SH4A_NOFPU: Self = _

source

pub const SH4_NOMMU_NOFPU: Self = _

source

pub const SH2A_NOFPU: Self = _

source

pub const SH3_NOMMU: Self = _

source

pub const SH2A_SH4_NOFPU: Self = _

source

pub const SH2A_SH3_NOFPU: Self = _

source

pub const SH2A_SH4: Self = _

source

pub const SH2A_SH3E: Self = _

source

pub const SH5: Self = _

source

pub const ARC_OSABI_MSK: Self = _

source

pub const ARC_ALL_MSK: Self = _

source

pub const RX_CPU_MASK: Self = _

specific cpu bits.

source

pub const RX_ALL_FLAGS: Self = _

source

pub const AMDGPU_MACH_AMDGCN_GFX601: Self = _

source

pub const AMDGPU_MACH_AMDGCN_GFX700: Self = _

source

pub const AMDGPU_MACH_AMDGCN_GFX701: Self = _

source

pub const AMDGPU_MACH_AMDGCN_GFX702: Self = _

source

pub const AMDGPU_MACH_AMDGCN_GFX703: Self = _

source

pub const AMDGPU_MACH_AMDGCN_GFX704: Self = _

source

pub const AMDGPU_MACH_AMDGCN_GFX801: Self = _

source

pub const AMDGPU_MACH_AMDGCN_GFX802: Self = _

source

pub const AMDGPU_MACH_AMDGCN_GFX803: Self = _

source

pub const AMDGPU_MACH_AMDGCN_GFX810: Self = _

source

pub const AMDGPU_MACH_AMDGCN_GFX900: Self = _

source

pub const AMDGPU_MACH_AMDGCN_GFX902: Self = _

source

pub const AMDGPU_MACH_AMDGCN_GFX904: Self = _

source

pub const AMDGPU_MACH_AMDGCN_GFX906: Self = _

source

pub const AMDGPU_MACH_AMDGCN_GFX909: Self = _

source

pub const AMDGPU_MACH_AMDGCN_GFX90C: Self = _

source

pub const AMDGPU_MACH_AMDGCN_GFX1010: Self = _

source

pub const AMDGPU_MACH_AMDGCN_GFX1011: Self = _

source

pub const AMDGPU_MACH_AMDGCN_GFX1012: Self = _

source

pub const AMDGPU_MACH_AMDGCN_GFX1030: Self = _

source

pub const AMDGPU_MACH_AMDGCN_GFX1031: Self = _

source

pub const AMDGPU_MACH_AMDGCN_GFX1032: Self = _

source

pub const AMDGPU_MACH_AMDGCN_GFX1033: Self = _

source

pub const AMDGPU_MACH_AMDGCN_GFX602: Self = _

source

pub const AMDGPU_MACH_AMDGCN_GFX705: Self = _

source

pub const AMDGPU_MACH_AMDGCN_GFX805: Self = _

source

pub const AMDGPU_MACH_AMDGCN_GFX1035: Self = _

source

pub const AMDGPU_MACH_AMDGCN_GFX1034: Self = _

source

pub const AMDGPU_MACH_AMDGCN_GFX90A: Self = _

source

pub const AMDGPU_MACH_AMDGCN_GFX1013: Self = _

source

pub const AMDGPU_MACH_AMDGCN_GFX1036: Self = _

source

pub const AMDGPU_FEATURE_XNACK_V4: Self = _

source

pub const AMDGPU_FEATURE_XNACK_ON_V4: Self = _

source

pub const AMDGPU_FEATURE_SRAMECC_V4: Self = _

source

pub const AMDGPU_FEATURE_SRAMECC_ON_V4: Self = _

source

pub const CRIS_VARIANT_MASK: Self = _

source

pub const MIPS_ARCH_3: Self = _

-mips3 code.

source

pub const CSKY_ABIV2: Self = _

source

pub const MIPS_ARCH_32: Self = _

MIPS32 code.

source

pub const MIPS_ARCH_64: Self = _

MIPS64 code.

source

pub const MIPS_ARCH_32R2: Self = _

MIPS32r2 code.

source§

impl ElfFlags

source

pub const fn empty() -> Self

Get a flags value with all bits unset.

source

pub const fn all() -> Self

Get a flags value with all known bits set.

source

pub const fn bits(&self) -> u32

Get the underlying bits value.

The returned value is exactly the bits set in this flags value.

source

pub const fn from_bits(bits: u32) -> Option<Self>

Convert from a bits value.

This method will return None if any unknown bits are set.

source

pub const fn from_bits_truncate(bits: u32) -> Self

Convert from a bits value, unsetting any unknown bits.

source

pub const fn from_bits_retain(bits: u32) -> Self

Convert from a bits value exactly.

source

pub fn from_name(name: &str) -> Option<Self>

Get a flags value with the bits of a flag with the given name set.

This method will return None if name is empty or doesn’t correspond to any named flag.

source

pub const fn is_empty(&self) -> bool

Whether all bits in this flags value are unset.

source

pub const fn is_all(&self) -> bool

Whether all known bits in this flags value are set.

source

pub const fn intersects(&self, other: Self) -> bool

Whether any set bits in a source flags value are also set in a target flags value.

source

pub const fn contains(&self, other: Self) -> bool

Whether all set bits in a source flags value are also set in a target flags value.

source

pub fn insert(&mut self, other: Self)

The bitwise or (|) of the bits in two flags values.

source

pub fn remove(&mut self, other: Self)

The intersection of a source flags value with the complement of a target flags value (&!).

This method is not equivalent to self & !other when other has unknown bits set. remove won’t truncate other, but the ! operator will.

source

pub fn toggle(&mut self, other: Self)

The bitwise exclusive-or (^) of the bits in two flags values.

source

pub fn set(&mut self, other: Self, value: bool)

Call insert when value is true or remove when value is false.

source

pub const fn intersection(self, other: Self) -> Self

The bitwise and (&) of the bits in two flags values.

source

pub const fn union(self, other: Self) -> Self

The bitwise or (|) of the bits in two flags values.

source

pub const fn difference(self, other: Self) -> Self

The intersection of a source flags value with the complement of a target flags value (&!).

This method is not equivalent to self & !other when other has unknown bits set. difference won’t truncate other, but the ! operator will.

source

pub const fn symmetric_difference(self, other: Self) -> Self

The bitwise exclusive-or (^) of the bits in two flags values.

source

pub const fn complement(self) -> Self

The bitwise negation (!) of the bits in a flags value, truncating the result.

source§

impl ElfFlags

source

pub const fn iter(&self) -> Iter<ElfFlags>

Yield a set of contained flags values.

Each yielded flags value will correspond to a defined named flag. Any unknown bits will be yielded together as a final flags value.

source

pub const fn iter_names(&self) -> IterNames<ElfFlags>

Yield a set of contained named flags values.

This method is like iter, except only yields bits in contained named flags. Any unknown bits, or bits not corresponding to a contained flag will not be yielded.

Trait Implementations§

source§

impl Binary for ElfFlags

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter.
source§

impl BinarySerde for ElfFlags

source§

const SERIALIZED_SIZE: usize = 4usize

the size of this type when serialized to a packed binary format.
§

type RecursiveArray = <<ElfFlags as Flags>::Bits as BinarySerde>::RecursiveArray

the fixed size recursive array type that is returned when serializing this type to an array. the length of this array is guaranteed to be equal to Self::SERIALIZED_SIZE.
source§

fn binary_serialize(&self, buf: &mut [u8], endianness: Endianness)

serialize this value into the given buffer using the given endianness. Read more
source§

fn binary_deserialize( buf: &[u8], endianness: Endianness ) -> Result<Self, DeserializeError>

deserializes the given buffer using the given endianness into a value of this type. Read more
source§

fn binary_serialize_to_array( &self, endianness: Endianness ) -> Self::RecursiveArray

serialize this value to a fixed size array using the given endianness.
source§

impl BitAnd for ElfFlags

source§

fn bitand(self, other: Self) -> Self

The bitwise and (&) of the bits in two flags values.

§

type Output = ElfFlags

The resulting type after applying the & operator.
source§

impl BitAndAssign for ElfFlags

source§

fn bitand_assign(&mut self, other: Self)

The bitwise and (&) of the bits in two flags values.

source§

impl BitOr for ElfFlags

source§

fn bitor(self, other: ElfFlags) -> Self

The bitwise or (|) of the bits in two flags values.

§

type Output = ElfFlags

The resulting type after applying the | operator.
source§

impl BitOrAssign for ElfFlags

source§

fn bitor_assign(&mut self, other: Self)

The bitwise or (|) of the bits in two flags values.

source§

impl BitXor for ElfFlags

source§

fn bitxor(self, other: Self) -> Self

The bitwise exclusive-or (^) of the bits in two flags values.

§

type Output = ElfFlags

The resulting type after applying the ^ operator.
source§

impl BitXorAssign for ElfFlags

source§

fn bitxor_assign(&mut self, other: Self)

The bitwise exclusive-or (^) of the bits in two flags values.

source§

impl Clone for ElfFlags

source§

fn clone(&self) -> ElfFlags

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for ElfFlags

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Extend<ElfFlags> for ElfFlags

source§

fn extend<T: IntoIterator<Item = Self>>(&mut self, iterator: T)

The bitwise or (|) of the bits in each flags value.

source§

fn extend_one(&mut self, item: A)

🔬This is a nightly-only experimental API. (extend_one)
Extends a collection with exactly one element.
source§

fn extend_reserve(&mut self, additional: usize)

🔬This is a nightly-only experimental API. (extend_one)
Reserves capacity in a collection for the given number of additional elements. Read more
source§

impl Flags for ElfFlags

source§

const FLAGS: &'static [Flag<ElfFlags>] = _

The set of defined flags.
§

type Bits = u32

The underlying bits type.
source§

fn bits(&self) -> u32

Get the underlying bits value. Read more
source§

fn from_bits_retain(bits: u32) -> ElfFlags

Convert from a bits value exactly.
source§

fn empty() -> Self

Get a flags value with all bits unset.
source§

fn all() -> Self

Get a flags value with all known bits set.
source§

fn from_bits(bits: Self::Bits) -> Option<Self>

Convert from a bits value. Read more
source§

fn from_bits_truncate(bits: Self::Bits) -> Self

Convert from a bits value, unsetting any unknown bits.
source§

fn from_name(name: &str) -> Option<Self>

Get a flags value with the bits of a flag with the given name set. Read more
source§

fn iter(&self) -> Iter<Self>

Yield a set of contained flags values. Read more
source§

fn iter_names(&self) -> IterNames<Self>

Yield a set of contained named flags values. Read more
source§

fn is_empty(&self) -> bool

Whether all bits in this flags value are unset.
source§

fn is_all(&self) -> bool

Whether all known bits in this flags value are set.
source§

fn intersects(&self, other: Self) -> bool
where Self: Sized,

Whether any set bits in a source flags value are also set in a target flags value.
source§

fn contains(&self, other: Self) -> bool
where Self: Sized,

Whether all set bits in a source flags value are also set in a target flags value.
source§

fn insert(&mut self, other: Self)
where Self: Sized,

The bitwise or (|) of the bits in two flags values.
source§

fn remove(&mut self, other: Self)
where Self: Sized,

The intersection of a source flags value with the complement of a target flags value (&!). Read more
source§

fn toggle(&mut self, other: Self)
where Self: Sized,

The bitwise exclusive-or (^) of the bits in two flags values.
source§

fn set(&mut self, other: Self, value: bool)
where Self: Sized,

Call Flags::insert when value is true or Flags::remove when value is false.
source§

fn intersection(self, other: Self) -> Self

The bitwise and (&) of the bits in two flags values.
source§

fn union(self, other: Self) -> Self

The bitwise or (|) of the bits in two flags values.
source§

fn difference(self, other: Self) -> Self

The intersection of a source flags value with the complement of a target flags value (&!). Read more
source§

fn symmetric_difference(self, other: Self) -> Self

The bitwise exclusive-or (^) of the bits in two flags values.
source§

fn complement(self) -> Self

The bitwise negation (!) of the bits in a flags value, truncating the result.
source§

impl FromIterator<ElfFlags> for ElfFlags

source§

fn from_iter<T: IntoIterator<Item = Self>>(iterator: T) -> Self

The bitwise or (|) of the bits in each flags value.

source§

impl Hash for ElfFlags

source§

fn hash<__H: Hasher>(&self, state: &mut __H)

Feeds this value into the given Hasher. Read more
1.3.0 · source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher, Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
source§

impl IntoIterator for ElfFlags

§

type Item = ElfFlags

The type of the elements being iterated over.
§

type IntoIter = Iter<ElfFlags>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl LowerHex for ElfFlags

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter.
source§

impl Not for ElfFlags

source§

fn not(self) -> Self

The bitwise negation (!) of the bits in a flags value, truncating the result.

§

type Output = ElfFlags

The resulting type after applying the ! operator.
source§

impl Octal for ElfFlags

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter.
source§

impl PartialEq for ElfFlags

source§

fn eq(&self, other: &ElfFlags) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl PublicFlags for ElfFlags

§

type Primitive = u32

The type of the underlying storage.
§

type Internal = InternalBitFlags

The type of the internal field on the generated flags type.
source§

impl Sub for ElfFlags

source§

fn sub(self, other: Self) -> Self

The intersection of a source flags value with the complement of a target flags value (&!).

This method is not equivalent to self & !other when other has unknown bits set. difference won’t truncate other, but the ! operator will.

§

type Output = ElfFlags

The resulting type after applying the - operator.
source§

impl SubAssign for ElfFlags

source§

fn sub_assign(&mut self, other: Self)

The intersection of a source flags value with the complement of a target flags value (&!).

This method is not equivalent to self & !other when other has unknown bits set. difference won’t truncate other, but the ! operator will.

source§

impl UpperHex for ElfFlags

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter.
source§

impl Copy for ElfFlags

source§

impl Eq for ElfFlags

source§

impl StructuralPartialEq for ElfFlags

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.