SourcePP
Several modern C++20 libraries for sanely parsing Valve's formats.
Loading...
Searching...
No Matches
Macros.h File Reference
#include <type_traits>
Include dependency graph for Macros.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define SOURCEPP_CONCAT_DETAIL(a, b)
 Token pasting outside a macro context.
#define SOURCEPP_CONCAT(a, b)
#define SOURCEPP_DEFAULT_COPY(Clazz)
 Defaults copy constructors.
#define SOURCEPP_DEFAULT_MOVE(Clazz)
 Defaults move constructors.
#define SOURCEPP_DEFAULT_COPY_OR_MOVE(Clazz)
#define SOURCEPP_NO_COPY(Clazz)
 Deletes copy constructors.
#define SOURCEPP_NO_MOVE(Clazz)
 Deletes move constructors.
#define SOURCEPP_NO_COPY_OR_MOVE(Clazz)
#define SOURCEPP_DEBUG_BREAK
 Create a breakpoint in debug.
#define SOURCEPP_DEBUG_ASSERT(cond)
 Break in debugger if condition is not true.
#define SOURCEPP_UNIQUE_NAME(base)
 Adds the current line number to the given base.
#define SOURCEPP_BITFLAGS_ENUM(Enum)
 Defines bitwise operators for an enum or enum class.

Macro Definition Documentation

◆ SOURCEPP_BITFLAGS_ENUM

#define SOURCEPP_BITFLAGS_ENUM ( Enum)

Defines bitwise operators for an enum or enum class.

Definition at line 59 of file Macros.h.

◆ SOURCEPP_CONCAT

#define SOURCEPP_CONCAT ( a,
b )
Value:
#define SOURCEPP_CONCAT_DETAIL(a, b)
Token pasting outside a macro context.
Definition Macros.h:6

Definition at line 7 of file Macros.h.

◆ SOURCEPP_CONCAT_DETAIL

#define SOURCEPP_CONCAT_DETAIL ( a,
b )
Value:
a##b

Token pasting outside a macro context.

Definition at line 6 of file Macros.h.

◆ SOURCEPP_DEBUG_ASSERT

#define SOURCEPP_DEBUG_ASSERT ( cond)
Value:
do { if (!(cond)) { SOURCEPP_DEBUG_BREAK; } } while (false)
#define SOURCEPP_DEBUG_BREAK
Create a breakpoint in debug.
Definition Macros.h:49

Break in debugger if condition is not true.

Definition at line 53 of file Macros.h.

◆ SOURCEPP_DEBUG_BREAK

#define SOURCEPP_DEBUG_BREAK

Create a breakpoint in debug.

Definition at line 49 of file Macros.h.

◆ SOURCEPP_DEFAULT_COPY

#define SOURCEPP_DEFAULT_COPY ( Clazz)
Value:
Clazz(const Clazz&) = default; \
Clazz& operator=(const Clazz&) = default

Defaults copy constructors.

Definition at line 10 of file Macros.h.

◆ SOURCEPP_DEFAULT_COPY_OR_MOVE

#define SOURCEPP_DEFAULT_COPY_OR_MOVE ( Clazz)
Value:
SOURCEPP_DEFAULT_MOVE(Clazz)
#define SOURCEPP_DEFAULT_COPY(Clazz)
Defaults copy constructors.
Definition Macros.h:10

Definition at line 20 of file Macros.h.

◆ SOURCEPP_DEFAULT_MOVE

#define SOURCEPP_DEFAULT_MOVE ( Clazz)
Value:
Clazz(Clazz&&) noexcept = default; \
Clazz& operator=(Clazz&&) noexcept = default

Defaults move constructors.

Definition at line 15 of file Macros.h.

◆ SOURCEPP_NO_COPY

#define SOURCEPP_NO_COPY ( Clazz)
Value:
Clazz(const Clazz&) = delete; \
Clazz& operator=(const Clazz&) = delete

Deletes copy constructors.

Definition at line 25 of file Macros.h.

◆ SOURCEPP_NO_COPY_OR_MOVE

#define SOURCEPP_NO_COPY_OR_MOVE ( Clazz)
Value:
SOURCEPP_NO_MOVE(Clazz)
#define SOURCEPP_NO_COPY(Clazz)
Deletes copy constructors.
Definition Macros.h:25

Definition at line 35 of file Macros.h.

◆ SOURCEPP_NO_MOVE

#define SOURCEPP_NO_MOVE ( Clazz)
Value:
Clazz(Clazz&&) noexcept = delete; \
Clazz& operator=(Clazz&&) noexcept = delete

Deletes move constructors.

Definition at line 30 of file Macros.h.

◆ SOURCEPP_UNIQUE_NAME

#define SOURCEPP_UNIQUE_NAME ( base)
Value:
SOURCEPP_CONCAT(base, __LINE__)
#define SOURCEPP_CONCAT(a, b)
Definition Macros.h:7

Adds the current line number to the given base.

Definition at line 56 of file Macros.h.