Inheritance diagram for esiChoose:
Collaboration diagram for esiChoose:

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

 esiChoose (esiTreeParentPtr)
 
 ~esiChoose ()
 
void render (ESISegment::Pointer)
 
bool addElement (ESIElement::Pointer)
 
void fail (ESIElement *, char const *=NULL)
 
esiProcessResult_t process (int dovars)
 
void provideData (ESISegment::Pointer data, ESIElement *source)
 
void makeCachableElements (esiChoose const &old)
 
void makeUsableElements (esiChoose const &old, ESIVarState &)
 
Pointer makeCacheable () const
 
Pointer makeUsable (esiTreeParentPtr, ESIVarState &) const
 
void NULLUnChosen ()
 
void finish ()
 
virtual bool mayFail () const
 

Static Public Member Functions

static ESIElementType_t IdentifyElement (const char *)
 

Public Attributes

ElementList elements
 
int chosenelement
 
ESIElement::Pointer otherwise
 

Private Member Functions

 MEMPROXY_CLASS (esiChoose)
 
 esiChoose (esiChoose const &)
 
void checkValidSource (ESIElement::Pointer source) const
 
void selectElement ()
 

Private Attributes

esiTreeParentPtr parent
 

Detailed Description

Definition at line 159 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

esiChoose::esiChoose ( esiTreeParentPtr  aParent)

Definition at line 1889 of file Esi.cc.

Referenced by makeCacheable(), and makeUsable().

esiChoose::~esiChoose ( )

Definition at line 1884 of file Esi.cc.

References debugs.

esiChoose::esiChoose ( esiChoose const &  old)
private

Definition at line 2081 of file Esi.cc.

References addElement(), assert, elements, RefCount< C >::getRaw(), and ElementList::size().

Member Function Documentation

bool esiChoose::addElement ( ESIElement::Pointer  element)
virtual
void esiChoose::checkValidSource ( ESIElement::Pointer  source) const
private

Definition at line 2045 of file Esi.cc.

References assert, chosenelement, elements, fatal(), RefCount< C >::getRaw(), otherwise, and ElementList::size().

Referenced by fail(), and provideData().

void esiChoose::fail ( ESIElement source,
char const *  anError = NULL 
)
virtual
void esiChoose::finish ( )
virtual
void esiChoose::makeCachableElements ( esiChoose const &  old)

Definition at line 2092 of file Esi.cc.

References addElement(), assert, elements, RefCount< C >::getRaw(), and ElementList::size().

Referenced by makeCacheable().

ESIElement::Pointer esiChoose::makeCacheable ( ) const
virtual
ESIElement::Pointer esiChoose::makeUsable ( esiTreeParentPtr  newParent,
ESIVarState newVarState 
) const
virtual
void esiChoose::makeUsableElements ( esiChoose const &  old,
ESIVarState newVarState 
)

Definition at line 2103 of file Esi.cc.

References addElement(), assert, elements, RefCount< C >::getRaw(), and ElementList::size().

Referenced by makeUsable().

virtual bool ESIElement::mayFail ( ) const
inlinevirtualinherited

Reimplemented in esiSequence.

Definition at line 75 of file Element.h.

Referenced by ESIContext::send().

esiChoose::MEMPROXY_CLASS ( esiChoose  )
private
void esiChoose::NULLUnChosen ( )
void esiChoose::provideData ( ESISegment::Pointer  data,
ESIElement source 
)
virtual

Reimplemented from esiTreeParent.

Definition at line 2075 of file Esi.cc.

References checkValidSource(), parent, and esiTreeParent::provideData().

void esiChoose::render ( ESISegment::Pointer  output)
virtual
void esiChoose::selectElement ( )
private

Definition at line 1951 of file Esi.cc.

References chosenelement, debugs, elements, ElementList::size(), and esiWhen::testsTrue().

Referenced by makeUsable().

Member Data Documentation

int esiChoose::chosenelement

Definition at line 180 of file Esi.cc.

Referenced by addElement(), checkValidSource(), NULLUnChosen(), process(), render(), and selectElement().

ESIElement::Pointer esiChoose::otherwise
esiTreeParentPtr esiChoose::parent
private

Definition at line 186 of file Esi.cc.

Referenced by fail(), finish(), makeUsable(), process(), and provideData().


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

 

Introduction

Documentation

Support

Miscellaneous

Web Site Translations

Mirrors