LIEF: Library to Instrument Executable Formats Version 2.0.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)
#define _LIEF_EN_2(N, TYPE)
#define _LIEF_EI(X)
#define ENABLE_BITMASK_OPERATORS(X)

Functions

template<typename Enum>
std::enable_if_t< EnableBitMaskOperators< Enum >::bit_mask_enabled, Enum > operator| (Enum lhs, Enum rhs)
template<typename Enum>
std::enable_if_t< EnableBitMaskOperators< Enum >::bit_mask_enabled, Enum > operator& (Enum lhs, Enum rhs)
template<typename Enum>
std::enable_if_t< EnableBitMaskOperators< Enum >::bit_mask_enabled, Enum > operator~ (Enum e)
template<typename Enum>
std::enable_if_t< EnableBitMaskOperators< Enum >::bit_mask_enabled, std::add_lvalue_reference_t< Enum > > operator|= (Enum &lhs, Enum rhs)
template<typename Enum>
std::enable_if_t< EnableBitMaskOperators< Enum >::bit_mask_enabled, std::add_lvalue_reference_t< Enum > > operator&= (Enum &lhs, Enum rhs)
template<typename Enum>
std::enable_if_t< EnableBitMaskOperators< Enum >::bit_mask_enabled, bool > is_true (Enum e)

Macro Definition Documentation

◆ _LIEF_EI

#define _LIEF_EI ( X)
Value:
X

◆ _LIEF_EN

#define _LIEF_EN ( N)
Value:
class N : size_t

◆ _LIEF_EN_2

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

◆ ENABLE_BITMASK_OPERATORS

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

Function Documentation

◆ is_true()

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

◆ operator&()

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

◆ operator&=()

template<typename Enum>
std::enable_if_t< EnableBitMaskOperators< Enum >::bit_mask_enabled, std::add_lvalue_reference_t< Enum > > operator&= ( Enum & lhs,
Enum rhs )

◆ operator|()

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

◆ operator|=()

template<typename Enum>
std::enable_if_t< EnableBitMaskOperators< Enum >::bit_mask_enabled, std::add_lvalue_reference_t< Enum > > operator|= ( Enum & lhs,
Enum rhs )

◆ operator~()

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