Inheritance diagram for esiWhen:
Collaboration diagram for esiWhen:

Public Types

enum  ESIElementType_t {
  ESI_ELEMENT_NONE,
  ESI_ELEMENT_INCLUDE,
  ESI_ELEMENT_COMMENT,
  ESI_ELEMENT_REMOVE,
  ESI_ELEMENT_TRY,
  ESI_ELEMENT_ATTEMPT,
  ESI_ELEMENT_EXCEPT,
  ESI_ELEMENT_VARS,
  ESI_ELEMENT_CHOOSE,
  ESI_ELEMENT_WHEN,
  ESI_ELEMENT_OTHERWISE,
  ESI_ELEMENT_ASSIGN
}
 
typedef RefCount< ESIElementPointer
 

Public Member Functions

 esiWhen (esiTreeParentPtr aParent, int attributes, const char **attr, ESIVarState *)
 
 ~esiWhen ()
 
Pointer makeCacheable () const
 
Pointer makeUsable (esiTreeParentPtr, ESIVarState &) const
 
bool testsTrue () const
 
void setTestResult (bool aBool)
 
void render (ESISegment::Pointer)
 
bool addElement (ESIElement::Pointer)
 
esiProcessResult_t process (int dovars)
 
void provideData (ESISegment::Pointer, ESIElement *)
 
bool mayFail () const
 
void wontFail ()
 
void fail (ESIElement *, char const *anError=NULL)
 
void makeCachableElements (esiSequence const &old)
 
void makeUsableElements (esiSequence const &old, ESIVarState &)
 
void finish ()
 

Static Public Member Functions

static ESIElementType_t IdentifyElement (const char *)
 

Public Attributes

ElementList elements
 
size_t processedcount
 
struct {
   int   dovars:1
 
flags
 

Protected Attributes

esiTreeParentPtr parent
 

Private Member Functions

 MEMPROXY_CLASS (esiWhen)
 
 esiWhen (esiWhen const &)
 
void evaluate ()
 

Private Attributes

bool testValue
 
char const * unevaluatedExpression
 
ESIVarStatevarState
 

Detailed Description

Definition at line 191 of file Esi.cc.

Member Typedef Documentation

Definition at line 44 of file Element.h.

Member Enumeration Documentation

Enumerator
ESI_ELEMENT_NONE 
ESI_ELEMENT_INCLUDE 
ESI_ELEMENT_COMMENT 
ESI_ELEMENT_REMOVE 
ESI_ELEMENT_TRY 
ESI_ELEMENT_ATTEMPT 
ESI_ELEMENT_EXCEPT 
ESI_ELEMENT_VARS 
ESI_ELEMENT_CHOOSE 
ESI_ELEMENT_WHEN 
ESI_ELEMENT_OTHERWISE 
ESI_ELEMENT_ASSIGN 

Definition at line 47 of file Element.h.

Constructor & Destructor Documentation

esiWhen::esiWhen ( esiTreeParentPtr  aParent,
int  attributes,
const char **  attr,
ESIVarState aVar 
)

Definition at line 2195 of file Esi.cc.

References assert, cbdataReference, DBG_IMPORTANT, debugs, evaluate(), NULL, unevaluatedExpression, varState, and xstrdup.

Referenced by makeCacheable(), and makeUsable().

esiWhen::~esiWhen ( )

Definition at line 2229 of file Esi.cc.

References cbdataReferenceDone, safe_free, unevaluatedExpression, and varState.

esiWhen::esiWhen ( esiWhen const &  old)
private

Definition at line 2254 of file Esi.cc.

References unevaluatedExpression, and xstrdup.

Member Function Documentation

void esiWhen::evaluate ( )
private
void esiSequence::fail ( ESIElement source,
char const *  anError = NULL 
)
virtualinherited
void esiSequence::finish ( )
virtualinherited
void esiSequence::makeCachableElements ( esiSequence const &  old)
inherited
ESIElement::Pointer esiWhen::makeCacheable ( ) const
virtual

Implements ESIElement.

Definition at line 2265 of file Esi.cc.

References esiWhen().

ESIElement::Pointer esiWhen::makeUsable ( esiTreeParentPtr  newParent,
ESIVarState newVarState 
) const
virtual
void esiSequence::makeUsableElements ( esiSequence const &  old,
ESIVarState newVarState 
)
inherited
bool esiSequence::mayFail ( ) const
virtualinherited

Reimplemented from ESIElement.

Definition at line 65 of file Sequence.cc.

References esiSequence::failed, and esiSequence::mayFail_.

esiWhen::MEMPROXY_CLASS ( esiWhen  )
private
void esiSequence::render ( ESISegment::Pointer  output)
virtualinherited
void esiWhen::setTestResult ( bool  aBool)
inline

Definition at line 203 of file Esi.cc.

References testValue.

Referenced by evaluate().

bool esiWhen::testsTrue ( ) const
inline

Definition at line 201 of file Esi.cc.

References testValue.

Referenced by esiChoose::addElement(), and esiChoose::selectElement().

void esiSequence::wontFail ( )
inherited

Definition at line 74 of file Sequence.cc.

References assert, esiSequence::failed, and esiSequence::mayFail_.

Referenced by esiSequence::process().

Member Data Documentation

int esiSequence::dovars
inherited

Definition at line 44 of file Sequence.h.

Referenced by esiSequence::esiSequence(), and esiSequence::process().

struct { ... } esiSequence::flags
esiTreeParentPtr esiSequence::parent
protectedinherited
size_t esiSequence::processedcount
inherited
bool esiWhen::testValue
private

Definition at line 207 of file Esi.cc.

Referenced by setTestResult(), and testsTrue().

char const* esiWhen::unevaluatedExpression
private

Definition at line 208 of file Esi.cc.

Referenced by esiWhen(), evaluate(), and ~esiWhen().

ESIVarState* esiWhen::varState
private

Definition at line 209 of file Esi.cc.

Referenced by esiWhen(), evaluate(), makeUsable(), and ~esiWhen().


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

 

Introduction

Documentation

Support

Miscellaneous

Web Site Translations

Mirrors