StaticResolutionContext Class Reference

Records access to various parts of the context during static resolution. More...

#include <StaticResolutionContext.hpp>

List of all members.

Public Types

enum  Properties {
  DOCORDER = 0x001, PEER = 0x002, SUBTREE = 0x004, GROUPED = 0x008,
  SAMEDOC = 0x010, ONENODE = 0x020, SELF = 0x040, FORWARDREF = 0x080,
  UNDEFINEDVAR = 0x100
}
 Properties that allow optimisation regarding sorting or not. More...

Public Member Functions

 StaticResolutionContext (XPath2MemoryManager *memMgr)
 StaticResolutionContext (const StaticResolutionContext &o, XPath2MemoryManager *memMgr)
void copy (const StaticResolutionContext &o)
void clear ()
 Clears all the information in this StaticResolutionContext.
void forceNoFolding (bool value)
 Overrides all the other flags, and never allows this sub-expression to be constant folded.
bool isNoFoldingForced () const
void contextItemUsed (bool value)
void contextPositionUsed (bool value)
void contextSizeUsed (bool value)
bool isContextItemUsed () const
bool isContextPositionUsed () const
bool isContextSizeUsed () const
bool areContextFlagsUsed () const
 Returns true if any of the context item flags have been used.
void currentTimeUsed (bool value)
void implicitTimezoneUsed (bool value)
bool areContextTimeUsed () const
void availableDocumentsUsed (bool value)
void availableCollectionsUsed (bool value)
bool areDocsOrCollectionsUsed () const
void variableUsed (const XMLCh *namespaceURI, const XMLCh *name)
bool removeVariable (const XMLCh *namespaceURI, const XMLCh *name)
bool isVariableUsed (const XMLCh *namespaceURI, const XMLCh *name) const
std::vector< std::pair< const
XMLCh *, const XMLCh * > > 
variablesUsed () const
void add (const StaticResolutionContext &o)
 Sets the members of this StaticResolutionContext from the given StaticResolutionContext.
void addExceptContextFlags (const StaticResolutionContext &o)
bool isUsed () const
 Returns true if flags are set, or variables have been used.
bool isUsedExceptContextFlags () const
void creative (bool value)
bool isCreative () const
unsigned int getProperties () const
void setProperties (unsigned int props)
const StaticType & getStaticType () const
StaticType & getStaticType ()
std::string toString () const


Detailed Description

Records access to various parts of the context during static resolution.


Member Enumeration Documentation

enum StaticResolutionContext::Properties

Properties that allow optimisation regarding sorting or not.

The values are OR'd as flags, so they must be distinct bits

Enumerator:
DOCORDER  Results are returned in document order.
PEER  Results do not appear in the descendants of other results.
SUBTREE  Results are members of the set of descendants of the context node.
GROUPED  Results are grouped by the document they come from.
SAMEDOC  Results are from the same document as the context node.
ONENODE  Only ever returns one node.
SELF  Only ever returns the context node.
FORWARDREF  This is a forward reference for a global variable that is declared later.
UNDEFINEDVAR  This is a variable that has been undefined.


Constructor & Destructor Documentation

StaticResolutionContext::StaticResolutionContext ( XPath2MemoryManager memMgr  ) 

StaticResolutionContext::StaticResolutionContext ( const StaticResolutionContext o,
XPath2MemoryManager memMgr 
)


Member Function Documentation

void StaticResolutionContext::copy ( const StaticResolutionContext o  ) 

void StaticResolutionContext::clear (  ) 

Clears all the information in this StaticResolutionContext.

void StaticResolutionContext::forceNoFolding ( bool  value  ) 

Overrides all the other flags, and never allows this sub-expression to be constant folded.

bool StaticResolutionContext::isNoFoldingForced (  )  const

void StaticResolutionContext::contextItemUsed ( bool  value  ) 

void StaticResolutionContext::contextPositionUsed ( bool  value  ) 

void StaticResolutionContext::contextSizeUsed ( bool  value  ) 

bool StaticResolutionContext::isContextItemUsed (  )  const

bool StaticResolutionContext::isContextPositionUsed (  )  const

bool StaticResolutionContext::isContextSizeUsed (  )  const

bool StaticResolutionContext::areContextFlagsUsed (  )  const

Returns true if any of the context item flags have been used.

void StaticResolutionContext::currentTimeUsed ( bool  value  ) 

void StaticResolutionContext::implicitTimezoneUsed ( bool  value  ) 

bool StaticResolutionContext::areContextTimeUsed (  )  const

void StaticResolutionContext::availableDocumentsUsed ( bool  value  ) 

void StaticResolutionContext::availableCollectionsUsed ( bool  value  ) 

bool StaticResolutionContext::areDocsOrCollectionsUsed (  )  const

void StaticResolutionContext::variableUsed ( const XMLCh *  namespaceURI,
const XMLCh *  name 
)

bool StaticResolutionContext::removeVariable ( const XMLCh *  namespaceURI,
const XMLCh *  name 
)

bool StaticResolutionContext::isVariableUsed ( const XMLCh *  namespaceURI,
const XMLCh *  name 
) const

std::vector<std::pair<const XMLCh*, const XMLCh*> > StaticResolutionContext::variablesUsed (  )  const

void StaticResolutionContext::add ( const StaticResolutionContext o  ) 

Sets the members of this StaticResolutionContext from the given StaticResolutionContext.

void StaticResolutionContext::addExceptContextFlags ( const StaticResolutionContext o  ) 

bool StaticResolutionContext::isUsed (  )  const

Returns true if flags are set, or variables have been used.

bool StaticResolutionContext::isUsedExceptContextFlags (  )  const

void StaticResolutionContext::creative ( bool  value  ) 

bool StaticResolutionContext::isCreative (  )  const

unsigned int StaticResolutionContext::getProperties (  )  const

void StaticResolutionContext::setProperties ( unsigned int  props  ) 

const StaticType& StaticResolutionContext::getStaticType (  )  const

StaticType& StaticResolutionContext::getStaticType (  ) 

std::string StaticResolutionContext::toString (  )  const


The documentation for this class was generated from the following file:
Generated on Wed Dec 12 19:14:03 2007 for XQilla Simple API by  doxygen 1.5.1