Lumiera 0.pre.04
»edit your freedom«
Loading...
Searching...
No Matches
Dummy Class Reference

#include "lib/test/tracking-dummy.hpp"

Description

A Dummy object for tests.

Each instance includes some distinct random identity marker plus a checksum facility to verify instance management, i.e. to verify each created instance was properly destroyed after use.

Definition at line 46 of file tracking-dummy.hpp.

Static Public Attributes

static constexpr int DEFUNCT = std::numeric_limits<int>::min()
 
static constexpr int DEAD = std::numeric_limits<int>::max()
 

Static Public Member Functions

static long & checksum ()
 
static void activateCtorFailure (bool indeed=true)
 

Public Member Functions

virtual ~Dummy ()
 
 Dummy ()
 
 Dummy (int v)
 
 Dummy (Dummy const &o)
 
 Dummy (Dummy &&oDummy) noexcept
 
Dummyoperator= (Dummy oDummy)
 
virtual long calc (int i)
 a dummy API operation
 
int getVal () const
 
void setVal (int newVal)
 

Friends

void swap (Dummy &dum1, Dummy &dum2)
 

Private Member Functions

void init ()
 
- Private Member Functions inherited from MoveAssign
 ~MoveAssign ()=default
 
 MoveAssign ()=default
 
 MoveAssign (MoveAssign &&)=default
 
 MoveAssign (MoveAssign const &)=delete
 
MoveAssignoperator= (MoveAssign &&)=default
 
MoveAssignoperator= (MoveAssign const &)=delete
 

Private Attributes

int val_
 

Static Private Attributes

static long _local_checksum = 0
 to verify ctor/dtor calls
 
static bool _throw_in_ctor = false
 

Constructor & Destructor Documentation

◆ ~Dummy()

virtual ~Dummy ( )
inlinevirtual

Definition at line 67 of file tracking-dummy.hpp.

References Dummy::checksum(), Dummy::DEAD, Dummy::DEFUNCT, and Dummy::val_.

+ Here is the call graph for this function:

◆ Dummy() [1/4]

Dummy ( )
inline

Definition at line 74 of file tracking-dummy.hpp.

References Dummy::init(), and lib::rani().

+ Here is the call graph for this function:

◆ Dummy() [2/4]

Dummy ( int  v)
inline

Definition at line 78 of file tracking-dummy.hpp.

References Dummy::init().

+ Here is the call graph for this function:

◆ Dummy() [3/4]

Dummy ( Dummy const &  o)
inline

Definition at line 88 of file tracking-dummy.hpp.

◆ Dummy() [4/4]

Dummy ( Dummy &&  oDummy)
inlinenoexcept

Definition at line 92 of file tracking-dummy.hpp.

References Dummy::DEFUNCT, and Dummy::swap.

Member Function Documentation

◆ init()

void init ( )
inlineprivate

Definition at line 56 of file tracking-dummy.hpp.

References Dummy::_throw_in_ctor, Dummy::checksum(), and Dummy::val_.

Referenced by Dummy::Dummy(), and Dummy::Dummy().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ operator=()

Dummy & operator= ( Dummy  oDummy)
inline
Parameters
oDummyaccepts both lvalues and rvalues

Definition at line 100 of file tracking-dummy.hpp.

References Dummy::swap.

◆ calc()

virtual long calc ( int  i)
inlinevirtual

a dummy API operation

Reimplemented in SubDummy, and Num< i >.

Definition at line 109 of file tracking-dummy.hpp.

References Dummy::val_.

Referenced by ScopedCollection_test::building_StackStyle().

+ Here is the caller graph for this function:

◆ getVal()

int getVal ( ) const
inline

Definition at line 115 of file tracking-dummy.hpp.

References Dummy::val_.

Referenced by ScopedCollection_test::building_StackStyle(), SeveralBuilder_test::check_CustomAllocator(), TestTracking_test::demonstrate_checkObject(), and BranchCase_test::verifyCopyAssignment().

+ Here is the caller graph for this function:

◆ setVal()

void setVal ( int  newVal)
inline

Definition at line 121 of file tracking-dummy.hpp.

References Dummy::checksum(), and Dummy::val_.

Referenced by ThreadWrapperAutonomous_test::verifyMemoryManagement().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ checksum()

static long & checksum ( )
inlinestatic

Definition at line 128 of file tracking-dummy.hpp.

References Dummy::_local_checksum.

Referenced by Dummy< N >::Dummy(), Dummy< i >::Dummy(), Dummy::~Dummy(), Dummy< N >::~Dummy(), Dummy< i >::~Dummy(), ScopedCollection_test::building_RAII_Style(), ScopedCollection_test::building_StackStyle(), SeveralBuilder_test::check_Builder(), SeveralBuilder_test::check_CustomAllocator(), SeveralBuilder_test::check_ErrorHandling(), TestTracking_test::demonstrate_checkObject(), ThreadWrapperLifecycle_test::demonstrateExplicitThreadLifecycle(), ScopedPtrVect_test::detaching(), Dummy::init(), LinkedElements_test::iterating(), ScopedCollection_test::iterating(), ScopedPtrVect_test::iterating(), ScopedPtrVect_test::moving(), LinkedElements_test::populate_by_iterator(), Dummy< N >::probe(), LinkedElements_test::reverseList(), Dummy::setVal(), LinkedElements_test::simpleUsage(), ScopedCollection_test::simpleUsage(), ScopedPtrVect_test::simpleUsage(), LinkedElements_test::verify_customAllocator(), ScopedCollection_test::verify_defaultPopulator(), LinkedElements_test::verify_ExceptionSafety(), LinkedElements_test::verify_nonOwnership(), LinkedElements_test::verify_RAII_safety(), ScopedCollection_test::verify_subclassPopulator(), BranchCase_test::verifyCopyAssignment(), ThreadWrapperAutonomous_test::verifyMemoryManagement(), and BufferProviderProtocol_test::verifyObjectAttachmentFailure().

+ Here is the caller graph for this function:

◆ activateCtorFailure()

static void activateCtorFailure ( bool  indeed = true)
inlinestatic

Definition at line 134 of file tracking-dummy.hpp.

References Dummy::_throw_in_ctor.

Referenced by SeveralBuilder_test::check_ErrorHandling(), TestTracking_test::demonstrate_checkObject(), and BufferProviderProtocol_test::verifyObjectAttachmentFailure().

+ Here is the caller graph for this function:

Member Data Documentation

◆ val_

◆ _local_checksum

long _local_checksum = 0
staticprivate

to verify ctor/dtor calls

storage for test-dummy flags

Definition at line 52 of file tracking-dummy.hpp.

Referenced by Dummy::checksum().

◆ _throw_in_ctor

bool _throw_in_ctor = false
staticprivate

Definition at line 53 of file tracking-dummy.hpp.

Referenced by Dummy::activateCtorFailure(), and Dummy::init().

◆ DEFUNCT

constexpr int DEFUNCT = std::numeric_limits<int>::min()
staticconstexpr

◆ DEAD

constexpr int DEAD = std::numeric_limits<int>::max()
staticconstexpr

Definition at line 65 of file tracking-dummy.hpp.

Referenced by Dummy::~Dummy(), and ScopedCollection_test::building_StackStyle().

Friends And Related Symbol Documentation

◆ swap

void swap ( Dummy dum1,
Dummy dum2 
)
friend
Parameters
dum2checksum neutral

Definition at line 83 of file tracking-dummy.hpp.

Referenced by Dummy::Dummy(), and Dummy::operator=().

+ Inheritance diagram for Dummy:
+ Collaboration diagram for Dummy:

The documentation for this class was generated from the following files: