LLVM 20.0.0git
Public Types | Public Member Functions | List of all members
llvm::file_magic Struct Reference

file_magic - An "enum class" enumeration of file types based on magic (the first N bytes of the file). More...

#include "llvm/BinaryFormat/Magic.h"

Public Types

enum  Impl {
  unknown = 0 , bitcode , clang_ast , archive ,
  elf , elf_relocatable , elf_executable , elf_shared_object ,
  elf_core , goff_object , macho_object , macho_executable ,
  macho_fixed_virtual_memory_shared_lib , macho_core , macho_preload_executable , macho_dynamically_linked_shared_lib ,
  macho_dynamic_linker , macho_bundle , macho_dynamically_linked_shared_lib_stub , macho_dsym_companion ,
  macho_kext_bundle , macho_universal_binary , macho_file_set , minidump ,
  coff_cl_gl_object , coff_object , coff_import_library , pecoff_executable ,
  windows_resource , xcoff_object_32 , xcoff_object_64 , wasm_object ,
  pdb , tapi_file , cuda_fatbinary , offload_binary ,
  dxcontainer_object , offload_bundle , offload_bundle_compressed , spirv_object
}
 

Public Member Functions

bool is_object () const
 
 file_magic ()=default
 
 file_magic (Impl V)
 
 operator Impl () const
 

Detailed Description

file_magic - An "enum class" enumeration of file types based on magic (the first N bytes of the file).

Definition at line 20 of file Magic.h.

Member Enumeration Documentation

◆ Impl

Enumerator
unknown 

Unrecognized file.

bitcode 

Bitcode file.

clang_ast 

Clang PCH or PCM.

archive 

ar style archive file

elf 

ELF Unknown type.

elf_relocatable 

ELF Relocatable object file.

elf_executable 

ELF Executable image.

elf_shared_object 

ELF dynamically linked shared lib.

elf_core 

ELF core image.

goff_object 

GOFF object file.

macho_object 

Mach-O Object file.

macho_executable 

Mach-O Executable.

macho_fixed_virtual_memory_shared_lib 

Mach-O Shared Lib, FVM.

macho_core 

Mach-O Core File.

macho_preload_executable 

Mach-O Preloaded Executable.

macho_dynamically_linked_shared_lib 

Mach-O dynlinked shared lib.

macho_dynamic_linker 

The Mach-O dynamic linker.

macho_bundle 

Mach-O Bundle file.

macho_dynamically_linked_shared_lib_stub 

Mach-O Shared lib stub.

macho_dsym_companion 

Mach-O dSYM companion file.

macho_kext_bundle 

Mach-O kext bundle file.

macho_universal_binary 

Mach-O universal binary.

macho_file_set 

Mach-O file set binary.

minidump 

Windows minidump file.

coff_cl_gl_object 

Microsoft cl.exe's intermediate code file.

coff_object 

COFF object file.

coff_import_library 

COFF import library.

pecoff_executable 

PECOFF executable file.

windows_resource 

Windows compiled resource file (.res)

xcoff_object_32 

32-bit XCOFF object file

xcoff_object_64 

64-bit XCOFF object file

wasm_object 

WebAssembly Object file.

pdb 

Windows PDB debug info file.

tapi_file 

Text-based Dynamic Library Stub file.

cuda_fatbinary 

CUDA Fatbinary object file.

offload_binary 

LLVM offload object file.

dxcontainer_object 

DirectX container file.

offload_bundle 

Clang offload bundle file.

offload_bundle_compressed 

Compressed clang offload bundle file.

spirv_object 

A binary SPIR-V file.

Definition at line 21 of file Magic.h.

Constructor & Destructor Documentation

◆ file_magic() [1/2]

llvm::file_magic::file_magic ( )
default

◆ file_magic() [2/2]

llvm::file_magic::file_magic ( Impl  V)
inline

Definition at line 67 of file Magic.h.

Member Function Documentation

◆ is_object()

bool llvm::file_magic::is_object ( ) const
inline

Definition at line 64 of file Magic.h.

References unknown.

◆ operator Impl()

llvm::file_magic::operator Impl ( ) const
inline

Definition at line 68 of file Magic.h.


The documentation for this struct was generated from the following file: