ALib C++ Library
Library Version: 2402 R1
Documentation generated by doxygen
Loading...
Searching...
No Matches
PrefixLogable Class Reference

Description:


Used to store prefixes set. Those provided as boxes of character arrays are copied into an internal AString and will be deleted with the object. This ensures, that simple strings might get assembled on the stack and still be used as a prefix logable.

Definition at line 37 of file domain.inl.

Inheritance diagram for PrefixLogable:
[legend]
Collaboration diagram for PrefixLogable:
[legend]

Public Method Index:

 PrefixLogable (const Box &src)
 
 ~PrefixLogable ()
 
PrefixLogableoperator= (PrefixLogable &&move)=default
 
- Public Method Index: inherited from Box
constexpr Box () noexcept
 
 Box (Box &&) noexcept=default
 
 Box (const Box &) noexcept=default
 
template<typename TBoxable >
constexpr Box (const TBoxable &src) noexcept
 
 ~Box () noexcept=default
 
size_t ArrayElementSize () const
 
template<typename TFDecl , typename... TArgs>
decltype(std::declval< typename TFDecl::Signature >()(std::declval< Box & >(), std::declval< TArgs >()...)) Call (TArgs &&... args)
 
template<typename TFDecl , typename... TArgs>
decltype(std::declval< typename TFDecl::Signature >()(std::declval< Box & >(), std::declval< TArgs >()...)) Call (TArgs &&... args) const
 
template<typename TFDecl , typename... TArgs>
decltype(std::declval< typename TFDecl::Signature >()(std::declval< Box & >(), std::declval< TArgs >()...)) CallDirect (typename TFDecl::Signature function, TArgs &&... args)
 
template<typename TFDecl , typename... TArgs>
decltype(std::declval< typename TFDecl::Signature >()(std::declval< Box & >(), std::declval< TArgs >()...)) CallDirect (typename TFDecl::Signature function, TArgs &&... args) const
 
ALIB_API void Clone (monomem::MonoAllocator &memory)
 
PlaceholderData ()
 
const PlaceholderData () const
 
const detail::VTableDbgGetVTable () const
 
const std::type_info & ElementTypeID () const
 
template<typename TFDecl >
TFDecl::Signature GetFunction (Reach searchScope, bool isInvocation=false) const
 
unsigned int GetPlaceholderUsageLength () const
 
ALIB_API size_t Hashcode () const
 
bool IsArray () const
 
template<typename TElementType >
bool IsArrayOf () const
 
bool IsCharacter () const
 
bool IsEnum () const
 
bool IsFloatingPoint () const
 
ALIB_API bool IsNotNull () const
 
bool IsNull () const
 
bool IsPointer () const
 
bool IsSameType (const Box &other) const
 
bool IsSignedIntegral () const
 
template<typename TBoxable >
bool IsType () const
 
bool IsUnsignedIntegral () const
 
ALIB_API operator bool () const
 
bool operator!= (const Box &rhs) const
 
ALIB_API bool operator< (Box const &rhs) const
 
ALIB_API bool operator<= (Box const &rhs) const
 
Boxoperator= (Box &&) noexcept=default
 
Boxoperator= (const Box &) noexcept=default
 
ALIB_API bool operator== (Box const &rhs) const
 
ALIB_API bool operator> (Box const &rhs) const
 
bool operator>= (Box const &rhs) const
 
const std::type_info & TypeID () const
 
template<typename TUnboxable >
const TUnboxable Unbox () const
 
template<typename TElementType >
TElementTypeUnboxArray () const
 
wchar UnboxCharacter () const
 
template<typename TElementType >
TElementTypeUnboxElement (integer idx) const
 
ALIB_API double UnboxFloatingPoint () const
 
integer UnboxLength () const
 
template<typename TUnboxable >
TUnboxable UnboxMutable () const
 
integer UnboxSignedIntegral () const
 
uinteger UnboxUnsignedIntegral () const
 

Field Details:

◆ copy

AString* copy = nullptr
protected

If set, it will be deleted.

Definition at line 41 of file domain.inl.

Constructor(s) / Destructor Details::

◆ PrefixLogable()

PrefixLogable ( const Box & src)
inline

Constructor taking the originally provided box. If this is an array of characters, the contents is copied into a heap allocated (new) AString and our vtable is replaced accordingly.

Parameters
srcThe prefix object provided by the user

Definition at line 49 of file domain.inl.

Here is the call graph for this function:

◆ ~PrefixLogable()

~PrefixLogable ( )
inline

Destructor. Deletes field copy if set.

Definition at line 62 of file domain.inl.

Method Details:

◆ operator=()

PrefixLogable & operator= ( PrefixLogable && move)
default

Move assignment operator. Default implementation of compiler is used. (Needs to be explicitly given due to custom destructor.)

Parameters
moveThe object to be moved.
Returns
This object

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