CodeContext of the being-parsed acl directive. More...

Inheritance diagram for Acl::ParsingContext:
Collaboration diagram for Acl::ParsingContext:

Public Types

using Pointer = RefCount< ParsingContext >
 

Public Member Functions

 ParsingContext (const SBuf &name)
 
ScopedId codeContextGist () const override
 
std::ostream & detailCodeContext (std::ostream &os) const override
 appends human-friendly context description line(s) to a cache.log record More...
 

Static Public Member Functions

static const PointerCurrent ()
 
static void Reset ()
 forgets the current context, setting it to nil/unknown More...
 
static void Reset (const Pointer)
 changes the current context; nil argument sets it to nil/unknown More...
 

Public Attributes

Stopwatch busyTime
 time spent in this context (see also: busy_time) More...
 

Static Private Member Functions

static void ForgetCurrent ()
 
static void Entering (const Pointer &codeCtx)
 
static void Leaving ()
 

Private Attributes

SBuf name_
 the aclname parameter of the being-parsed acl directive More...
 

Detailed Description

Definition at line 74 of file Acl.cc.

Member Typedef Documentation

◆ Pointer

Definition at line 77 of file Acl.cc.

Constructor & Destructor Documentation

◆ ParsingContext()

Acl::ParsingContext::ParsingContext ( const SBuf name)
inlineexplicit

Definition at line 79 of file Acl.cc.

Member Function Documentation

◆ codeContextGist()

ScopedId Acl::ParsingContext::codeContextGist ( ) const
overridevirtual
Returns
a small, permanent ID of the current context gists persist forever and are suitable for passing to other SMP workers

Implements CodeContext.

Definition at line 133 of file Acl.cc.

◆ Current()

◆ detailCodeContext()

std::ostream & Acl::ParsingContext::detailCodeContext ( std::ostream &  os) const
overridevirtual

Implements CodeContext.

Definition at line 138 of file Acl.cc.

References ConfigParser::CurrentLocation(), and Debug::Extra().

◆ Entering()

void CodeContext::Entering ( const Pointer codeCtx)
staticprivateinherited

Switches the current context to the given known context. Improves debugging output by replacing omni-directional "Reset" with directional "Entering".

Definition at line 55 of file CodeContext.cc.

References CodeContext::busyTime, CodeContext::codeContextGist(), debugs, CodeContext::ForgetCurrent(), Instance(), and Stopwatch::resume().

Referenced by CodeContext::Reset().

◆ ForgetCurrent()

void CodeContext::ForgetCurrent ( )
staticprivateinherited

Forgets the current known context, possibly triggering its destruction. Preserves the gist of the being-forgotten context during its destruction. Knows nothing about the next context – the caller must set it.

Definition at line 42 of file CodeContext.cc.

References assert, FadingCodeContext::gist, and Instance().

Referenced by CodeContext::Entering(), and CodeContext::Leaving().

◆ Leaving()

void CodeContext::Leaving ( )
staticprivateinherited

Forgets the current known context. Improves debugging output by replacing omni-directional "Reset" with directional "Leaving".

Definition at line 68 of file CodeContext.cc.

References debugs, CodeContext::ForgetCurrent(), and Instance().

Referenced by CodeContext::Reset().

◆ Reset() [1/2]

◆ Reset() [2/2]

void CodeContext::Reset ( const Pointer  codeCtx)
staticinherited

Member Data Documentation

◆ busyTime

Stopwatch CodeContext::busyTime
inherited

Definition at line 76 of file CodeContext.h.

Referenced by Format::Format::assemble(), and CodeContext::Entering().

◆ name_

SBuf Acl::ParsingContext::name_
private

Definition at line 86 of file Acl.cc.


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

 

Introduction

Documentation

Support

Miscellaneous

Web Site Translations

Mirrors