LIEF: Library to Instrument Executable Formats Version 0.16.0
Loading...
Searching...
No Matches
enums.hpp File Reference
#include <type_traits>
Include dependency graph for enums.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  EnableBitMaskOperators< Enum >
 

Macros

#define _LIEF_EN(N)   class N : size_t
 
#define _LIEF_EN_2(N, TYPE)   class N : TYPE
 
#define _LIEF_EI(X)   X
 
#define ENABLE_BITMASK_OPERATORS(X)
 

Functions

template<typename Enum >
std::enable_if< EnableBitMaskOperators< Enum >::bit_mask_enabled, Enum >::type operator| (Enum lhs, Enum rhs)
 
template<typename Enum >
std::enable_if< EnableBitMaskOperators< Enum >::bit_mask_enabled, Enum >::type operator& (Enum lhs, Enum rhs)
 
template<typename Enum >
std::enable_if< EnableBitMaskOperators< Enum >::bit_mask_enabled, Enum >::type operator~ (Enum e)
 
template<typename Enum >
std::enable_if< EnableBitMaskOperators< Enum >::bit_mask_enabled, typenamestd::add_lvalue_reference< Enum >::type >::type operator|= (Enum &lhs, Enum rhs)
 
template<typename Enum >
std::enable_if< EnableBitMaskOperators< Enum >::bit_mask_enabled, typenamestd::add_lvalue_reference< Enum >::type >::type operator&= (Enum &lhs, Enum rhs)
 
template<typename Enum >
std::enable_if< EnableBitMaskOperators< Enum >::bit_mask_enabled, bool >::type is_true (Enum e)
 

Macro Definition Documentation

◆ _LIEF_EI

#define _LIEF_EI ( X)    X

◆ _LIEF_EN

#define _LIEF_EN ( N)    class N : size_t

◆ _LIEF_EN_2

#define _LIEF_EN_2 ( N,
TYPE )   class N : TYPE

◆ ENABLE_BITMASK_OPERATORS

#define ENABLE_BITMASK_OPERATORS ( X)
Value:
template<> \
{ \
static const bool bit_mask_enabled = true; \
};
Definition enums.hpp:33
static const bool bit_mask_enabled
Definition enums.hpp:34

Function Documentation

◆ is_true()

template<typename Enum >
std::enable_if< EnableBitMaskOperators< Enum >::bit_mask_enabled, bool >::type is_true ( Enum e)

◆ operator&()

template<typename Enum >
std::enable_if< EnableBitMaskOperators< Enum >::bit_mask_enabled, Enum >::type operator& ( Enum lhs,
Enum rhs )

◆ operator&=()

template<typename Enum >
std::enable_if< EnableBitMaskOperators< Enum >::bit_mask_enabled, typenamestd::add_lvalue_reference< Enum >::type >::type operator&= ( Enum & lhs,
Enum rhs )

◆ operator|()

template<typename Enum >
std::enable_if< EnableBitMaskOperators< Enum >::bit_mask_enabled, Enum >::type operator| ( Enum lhs,
Enum rhs )

◆ operator|=()

template<typename Enum >
std::enable_if< EnableBitMaskOperators< Enum >::bit_mask_enabled, typenamestd::add_lvalue_reference< Enum >::type >::type operator|= ( Enum & lhs,
Enum rhs )

◆ operator~()

template<typename Enum >
std::enable_if< EnableBitMaskOperators< Enum >::bit_mask_enabled, Enum >::type operator~ ( Enum e)