Implementation struct for class Lox following the Pimpl Idiom .
Definition at line 109 of file loxpimpl.cpp.
Public Field Index: | |
int | AcquirementsCount |
Counts the number of nested (recursive) acquirements. | |
monomem::Snapshot | beforeLox |
Snapshot taken before embedding the lox in the monoAllocator. | |
integer | CntLogCalls =0 |
Domain * | domains |
List< MonoAllocator, DomainSubstitutionRule > | domainSubstitutions |
The list of domain substitution rules. | |
Domain * | internalDomains |
The root domain for internal Log Domains. | |
StdVectorMono< BoxesMA * > | internalLogables |
A list of a list of logables used for (recursive) internal logging. | |
integer | internalLogRecursionCounter = 0 |
The recursion counter for internal logging. | |
threads::RecursiveLock | Lock |
A mutex to control parallel access. | |
StdVectorMono< BoxesMA * > | logableContainers |
A list of a list of logables used for (recursive) logging. | |
bool | loggerAddedSinceLastDebugState =false |
Flag used with configuration variable LOXNAME_DUMP_STATE_ON_EXIT. | |
integer | maxDomainPathLength |
Used for tabular output of logger lists. | |
integer | maxLoggerNameLength =0 |
Used for tabular output of logger lists. | |
MonoAllocator & | monoAllocator |
The self contained monotonic allocator, that also contains this struct itself. | |
const NString | noKeyHashKey = "$" |
A key value used in stores if no key is given (global object). | |
bool | oneTimeWarningCircularDS =false |
Flag if a warning on circular rule detection was logged. | |
PoolAllocator | poolAllocator |
A pool allocator that uses monoAllocator as its source. | |
ScopeStore< NString, true > | scopeDomains |
Scope Domains. | |
ScopeInfo | scopeInfo |
Information about the source code, method, thread, etc. invoking a log call. | |
ScopeStore< SSMap< Box > *, false > | scopeLogData |
Log data store. | |
ScopeStore< SSMap< int > *, false > | scopeLogOnce |
Log once counters. | |
ScopeStore< PrefixLogable *, true > | scopePrefixes |
Prefix logables store. | |
Public Method Index: | |
LoxImpl (MonoAllocator *ma, const NString &name) | |
~LoxImpl () | |
Destructor. | |
int | CountAcquirements () const noexcept |
template<typename T > | |
void | deletePO (T *o) |
template<typename T , typename... TArgs> | |
T * | newPO (TArgs &&... args) |
int AcquirementsCount |
Counts the number of nested (recursive) acquirements.
Definition at line 126 of file loxpimpl.cpp.
monomem::Snapshot beforeLox |
Snapshot taken before embedding the lox in the monoAllocator.
Definition at line 118 of file loxpimpl.cpp.
integer CntLogCalls =0 |
A counter for the quantity of calls. The count includes logs that were suppressed by disabled Log Domain and those suppressed by the optional log condition parameter.
Definition at line 130 of file loxpimpl.cpp.
Domain* domains |
The root domain "/". All registered domains become a sub domain of this root. If a Sub-Log Domain's Verbosity is not explicitly set, such sub domain inherits the verbosity of its parent.
Definition at line 147 of file loxpimpl.cpp.
List< MonoAllocator, DomainSubstitutionRule> domainSubstitutions |
The list of domain substitution rules.
Definition at line 176 of file loxpimpl.cpp.
Domain* internalDomains |
The root domain for internal Log Domains.
Definition at line 150 of file loxpimpl.cpp.
StdVectorMono<BoxesMA*> internalLogables |
A list of a list of logables used for (recursive) internal logging.
Definition at line 136 of file loxpimpl.cpp.
integer internalLogRecursionCounter = 0 |
The recursion counter for internal logging.
Definition at line 139 of file loxpimpl.cpp.
A mutex to control parallel access.
Definition at line 122 of file loxpimpl.cpp.
StdVectorMono<BoxesMA*> logableContainers |
A list of a list of logables used for (recursive) logging.
Definition at line 133 of file loxpimpl.cpp.
bool loggerAddedSinceLastDebugState =false |
Flag used with configuration variable LOXNAME_DUMP_STATE_ON_EXIT.
Definition at line 182 of file loxpimpl.cpp.
integer maxDomainPathLength |
Used for tabular output of logger lists.
Definition at line 168 of file loxpimpl.cpp.
integer maxLoggerNameLength =0 |
Used for tabular output of logger lists.
Definition at line 165 of file loxpimpl.cpp.
MonoAllocator& monoAllocator |
The self contained monotonic allocator, that also contains this struct itself.
Definition at line 112 of file loxpimpl.cpp.
const NString noKeyHashKey = "$" |
A key value used in stores if no key is given (global object).
Definition at line 171 of file loxpimpl.cpp.
bool oneTimeWarningCircularDS =false |
Flag if a warning on circular rule detection was logged.
Definition at line 179 of file loxpimpl.cpp.
PoolAllocator poolAllocator |
A pool allocator that uses monoAllocator as its source.
Definition at line 115 of file loxpimpl.cpp.
ScopeStore<NString , true > scopeDomains |
Scope Domains.
Definition at line 153 of file loxpimpl.cpp.
ScopeInfo scopeInfo |
Information about the source code, method, thread, etc. invoking a log call.
Definition at line 142 of file loxpimpl.cpp.
ScopeStore<SSMap<Box>* , false> scopeLogData |
Log data store.
Definition at line 162 of file loxpimpl.cpp.
ScopeStore<SSMap<int>* , false> scopeLogOnce |
Log once counters.
Definition at line 159 of file loxpimpl.cpp.
ScopeStore<PrefixLogable*, true > scopePrefixes |
Prefix logables store.
Definition at line 156 of file loxpimpl.cpp.
|
inline |
Constructor.
ma | The externally created, self-contained monotonic allocator, that also contains this instance. |
name | The lox's name. |
Definition at line 188 of file loxpimpl.cpp.
|
inline |
|
inlinenoexcept |
Returns the number of (recursive) acquirements of this Lox. If greater than 1
, this is either recursive logging or a user has explicitly acquired this lox repeatedly (which is not recommended to do).
Definition at line 231 of file loxpimpl.cpp.
|
inline |
Shortcut to delete arbitrary objects in poolAllocator.
T | The type to allocate. Deduced by the compiler. |
o | The allocated object. |
Definition at line 246 of file loxpimpl.cpp.
|
inline |
Shortcut to allocate arbitrary objects in poolAllocator.
T | The type to allocate. |
TArgs | Types of variadic parameters given with parameter args. Deduced by the compiler. |
args | Variadic parameters to be forwarded to the constructor of type T. |
Definition at line 240 of file loxpimpl.cpp.