StormByte C++ Library 0.0.9999
StormByte is a comprehensive, cross-platform C++ library aimed at easing system programming, configuration management, logging, and database handling tasks. This library provides a unified API that abstracts away the complexities and inconsistencies of different platforms (Windows, Linux).
Loading...
Searching...
No Matches
Public Member Functions | List of all members
StormByte::ArithmeticMutexed< T > Class Template Referencefinal
Inheritance diagram for StormByte::ArithmeticMutexed< T >:
Inheritance graph
[legend]
Collaboration diagram for StormByte::ArithmeticMutexed< T >:
Collaboration graph
[legend]

Public Member Functions

 ArithmeticMutexed () noexcept=default
 
 ArithmeticMutexed (const T &value) noexcept
 
 ArithmeticMutexed (T &&value) noexcept
 
 ArithmeticMutexed (const ArithmeticMutexed &other) noexcept=default
 
 ArithmeticMutexed (ArithmeticMutexed &&other) noexcept=default
 
ArithmeticMutexedoperator= (const ArithmeticMutexed &other) noexcept=default
 
ArithmeticMutexedoperator= (ArithmeticMutexed &&other) noexcept=default
 
ArithmeticMutexedoperator= (const T &value) noexcept override
 
ArithmeticMutexedoperator= (T &&value) noexcept override
 
std::strong_ordering operator<=> (const ArithmeticMutexed &other) const noexcept
 
bool operator!= (const ArithmeticMutexed &other) const noexcept
 
ArithmeticMutexed operator+ (const ArithmeticMutexed &value) const noexcept
 
ArithmeticMutexed operator+ (ArithmeticMutexed &&value) const noexcept
 
ArithmeticMutexedoperator+= (ArithmeticMutexed &value) noexcept
 
ArithmeticMutexedoperator+= (ArithmeticMutexed &&value) noexcept
 
T operator+ (const T &value) const noexcept
 
T operator+ (T &&value) const noexcept
 
Toperator+= (T &value) noexcept
 
Toperator+= (T &&value) noexcept
 
- Public Member Functions inherited from StormByte::Mutexed< T >
 Mutexed () noexcept=default
 Default constructor.
 
 Mutexed (const T &value) noexcept
 Constructor with value.
 
 Mutexed (const Mutexed< T > &other) noexcept
 Copy constructor.
 
 Mutexed (Mutexed< T > &&other) noexcept
 Move constructor.
 
Mutexed< T > & operator= (const Mutexed< T > &other) noexcept
 Copy assignment operator.
 
Mutexed< T > & operator= (Mutexed< T > &&other) noexcept
 Move assignment operator.
 
virtual ~Mutexed () noexcept=default
 Destructor.
 
std::strong_ordering operator<=> (const Mutexed &other) const noexcept
 Spaceship operator for comparison.
 
bool operator!= (const Mutexed &other) const noexcept
 Inequality operator.
 
virtual Toperator* () noexcept
 Dereference operator (use with explicit locking).
 
virtual const Toperator* () const noexcept
 Dereference operator (use with explicit locking).
 
virtual Toperator-> () noexcept
 Pointer dereference operator (use with explicit locking).
 
virtual const Toperator-> () const noexcept
 Pointer dereference operator (use with explicit locking).
 
void Lock () const
 Locks the mutex.
 
void Unlock () const
 Unlocks the mutex.
 

Additional Inherited Members

- Protected Attributes inherited from StormByte::Mutexed< T >
T m_value
 Value.
 
std::mutex m_mutex
 Mutex.
 

Constructor & Destructor Documentation

◆ ArithmeticMutexed() [1/5]

template<typename T >
StormByte::ArithmeticMutexed< T >::ArithmeticMutexed ( )
defaultnoexcept

Default constructor

◆ ArithmeticMutexed() [2/5]

template<typename T >
StormByte::ArithmeticMutexed< T >::ArithmeticMutexed ( const T value)
inlinenoexcept

Constructor with value

Parameters
valuevalue to set

◆ ArithmeticMutexed() [3/5]

template<typename T >
StormByte::ArithmeticMutexed< T >::ArithmeticMutexed ( T &&  value)
inlinenoexcept

Constructor with value

Parameters
valuevalue to set

◆ ArithmeticMutexed() [4/5]

template<typename T >
StormByte::ArithmeticMutexed< T >::ArithmeticMutexed ( const ArithmeticMutexed< T > &  other)
defaultnoexcept

Copy constructor

Parameters
valuevalue to set

◆ ArithmeticMutexed() [5/5]

template<typename T >
StormByte::ArithmeticMutexed< T >::ArithmeticMutexed ( ArithmeticMutexed< T > &&  other)
defaultnoexcept

Move constructor

Parameters
valuevalue to set

Member Function Documentation

◆ operator!=()

template<typename T >
bool StormByte::ArithmeticMutexed< T >::operator!= ( const ArithmeticMutexed< T > &  other) const
inlinenoexcept

InEquality operator

Parameters
otherother value to compare
Returns
false if equal

◆ operator+() [1/4]

template<typename T >
ArithmeticMutexed StormByte::ArithmeticMutexed< T >::operator+ ( ArithmeticMutexed< T > &&  value) const
inlinenoexcept

Addition operator

Parameters
valuevalue to add
Returns
reference to this

◆ operator+() [2/4]

template<typename T >
ArithmeticMutexed StormByte::ArithmeticMutexed< T >::operator+ ( const ArithmeticMutexed< T > &  value) const
inlinenoexcept

Addition operator

Parameters
valuevalue to add
Returns
reference to this

◆ operator+() [3/4]

template<typename T >
T StormByte::ArithmeticMutexed< T >::operator+ ( const T value) const
inlinenoexcept

Addition operator

Parameters
valuevalue to add
Returns
reference to this

◆ operator+() [4/4]

template<typename T >
T StormByte::ArithmeticMutexed< T >::operator+ ( T &&  value) const
inlinenoexcept

Addition operator

Parameters
valuevalue to add
Returns
reference to this

◆ operator+=() [1/4]

template<typename T >
ArithmeticMutexed & StormByte::ArithmeticMutexed< T >::operator+= ( ArithmeticMutexed< T > &&  value)
inlinenoexcept

Addition operator with assignment

Parameters
valuevalue to add
Returns
reference to this

◆ operator+=() [2/4]

template<typename T >
ArithmeticMutexed & StormByte::ArithmeticMutexed< T >::operator+= ( ArithmeticMutexed< T > &  value)
inlinenoexcept

Addition operator with assignment

Parameters
valuevalue to add
Returns
reference to this

◆ operator+=() [3/4]

template<typename T >
T & StormByte::ArithmeticMutexed< T >::operator+= ( T &&  value)
inlinenoexcept

Addition operator with assignment

Parameters
valuevalue to add
Returns
reference to this

◆ operator+=() [4/4]

template<typename T >
T & StormByte::ArithmeticMutexed< T >::operator+= ( T value)
inlinenoexcept

Addition operator with assignment

Parameters
valuevalue to add
Returns
reference to this

◆ operator<=>()

template<typename T >
std::strong_ordering StormByte::ArithmeticMutexed< T >::operator<=> ( const ArithmeticMutexed< T > &  other) const
inlinenoexcept

Spaceship operator

Parameters
otherother value to compare
Returns
strong ordering

◆ operator=() [1/4]

template<typename T >
ArithmeticMutexed & StormByte::ArithmeticMutexed< T >::operator= ( ArithmeticMutexed< T > &&  other)
defaultnoexcept

Move assignment operator

Parameters
valuevalue to set

◆ operator=() [2/4]

Copy assignment operator

Parameters
valuevalue to set

◆ operator=() [3/4]

template<typename T >
ArithmeticMutexed & StormByte::ArithmeticMutexed< T >::operator= ( const T value)
inlineoverridevirtualnoexcept

Assignment operator

Parameters
valuevalue to set

Reimplemented from StormByte::Mutexed< T >.

◆ operator=() [4/4]

template<typename T >
ArithmeticMutexed & StormByte::ArithmeticMutexed< T >::operator= ( T &&  value)
inlineoverridevirtualnoexcept

Assignment move operator

Parameters
valuevalue to set

Reimplemented from StormByte::Mutexed< T >.


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