9template <
typename InValueType>
12 static int32 ConstructorCalls;
13 static int32 DestructorCalls;
14 static int32 CopyConstructorCalls;
15 static int32 MoveConstructorCalls;
16 static int32 CopyAssignmentCalls;
17 static int32 MoveAssignmentCalls;
33 MoveConstructorCalls++;
39 CopyConstructorCalls++;
59 CopyAssignmentCalls++;
67 MoveAssignmentCalls++;
102 ConstructorCalls = 0;
104 CopyConstructorCalls = 0;
105 MoveConstructorCalls = 0;
106 CopyAssignmentCalls = 0;
107 MoveAssignmentCalls = 0;
113template <
typename InValueType>
116template <
typename InValueType>
119template <
typename InValueType>
122template <
typename InValueType>
125template <
typename InValueType>
128template <
typename InValueType>
133template <
typename InValueType>
139template <
typename InValueType>
142 return left.Value == right;
145template <
typename InValueType>
151template <
typename InValueType>
157template <
typename InValueType>
163template <
typename InValueType>
#define ensure( InExpression)
Definition AssertionMacros.h:464
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
bool left(const int *a, const int *b, const int *c)
Definition RecastMesh.cpp:182
#define SA_VALUE(Name, Value)
Definition StructuredArchiveNameHelpers.h:77
FArchive & operator<<(FArchive &Ar, TTestToken< InValueType > &TestToken)
Definition TokenTest.h:158
bool operator==(const TTestToken< InValueType > &left, const TTestToken< InValueType > &right)
Definition TokenTest.h:134
bool operator!=(const TTestToken< InValueType > &left, const TTestToken< InValueType > &right)
Definition TokenTest.h:146
UE_INTRINSIC_CAST UE_REWRITE constexpr std::remove_reference_t< T > && MoveTemp(T &&Obj) noexcept
Definition UnrealTemplate.h:520
Definition Archive.h:1208
Definition StructuredArchiveSlots.h:52
UE_API FStructuredArchiveRecord EnterRecord()
Definition StructuredArchiveSlots.h:252
Definition TokenTest.h:11
~TTestToken()
Definition TokenTest.h:42
static bool EvenConstructionDestructionCalls()
Definition TokenTest.h:93
TTestToken & operator=(TTestToken &&Other) noexcept
Definition TokenTest.h:63
static int32 NumMoveCalls()
Definition TokenTest.h:87
const ValueType & operator*() const
Definition TokenTest.h:47
TTestToken() noexcept
Definition TokenTest.h:28
TTestToken(const ValueType &value)
Definition TokenTest.h:22
static int32 NumCopyCalls()
Definition TokenTest.h:83
static bool EvenConstructionDestructionCalls(int32 ExpectedNum)
Definition TokenTest.h:95
static void Reset()
Definition TokenTest.h:100
ValueType * operator->()
Definition TokenTest.h:53
bool operator<(const TTestToken &Other) const
Definition TokenTest.h:71
InValueType ValueType
Definition TokenTest.h:20
const ValueType * operator->() const
Definition TokenTest.h:51
TTestToken(const TTestToken &Other)
Definition TokenTest.h:36
static int32 ConstructionDestructionCallDifference()
Definition TokenTest.h:81
static int32 NumCopyConstructorCalls()
Definition TokenTest.h:77
TTestToken & operator=(const TTestToken &Other)
Definition TokenTest.h:55
static int32 NumMoveAssignmentCalls()
Definition TokenTest.h:89
TTestToken(TTestToken &&Other) noexcept
Definition TokenTest.h:30
static int32 NumMoveConstructorCalls()
Definition TokenTest.h:79
static int32 NumDestructionCalls()
Definition TokenTest.h:91
static int32 NumCopyAssignmentCalls()
Definition TokenTest.h:85
ValueType & operator*()
Definition TokenTest.h:49
static int32 NumConstructionCalls()
Definition TokenTest.h:73
ValueType Value
Definition TokenTest.h:110
static int32 NumConstructorCalls()
Definition TokenTest.h:75