SourceForge.net Logo

StaticAnalysis Class Reference

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

#include <StaticAnalysis.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

 StaticAnalysis (XPath2MemoryManager *memMgr)
 StaticAnalysis (const StaticAnalysis &o, XPath2MemoryManager *memMgr)
void copy (const StaticAnalysis &o)
void clear ()
 Clears all the information in this StaticAnalysis.
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)
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 StaticAnalysis &o)
 Sets the members of this StaticAnalysis from the given StaticAnalysis.
void addExceptContextFlags (const StaticAnalysis &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
void updating (bool value)
bool isUpdating () const
void possiblyUpdating (bool value)
bool isPossiblyUpdating () 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 StaticAnalysis::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

StaticAnalysis::StaticAnalysis ( XPath2MemoryManager memMgr  ) 

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


Member Function Documentation

void StaticAnalysis::copy ( const StaticAnalysis o  ) 

void StaticAnalysis::clear (  ) 

Clears all the information in this StaticAnalysis.

void StaticAnalysis::forceNoFolding ( bool  value  ) 

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

bool StaticAnalysis::isNoFoldingForced (  )  const

void StaticAnalysis::contextItemUsed ( bool  value  ) 

void StaticAnalysis::contextPositionUsed ( bool  value  ) 

void StaticAnalysis::contextSizeUsed ( bool  value  ) 

bool StaticAnalysis::isContextItemUsed (  )  const

bool StaticAnalysis::isContextPositionUsed (  )  const

bool StaticAnalysis::isContextSizeUsed (  )  const

bool StaticAnalysis::areContextFlagsUsed (  )  const

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

void StaticAnalysis::currentTimeUsed ( bool  value  ) 

void StaticAnalysis::implicitTimezoneUsed ( bool  value  ) 

void StaticAnalysis::availableDocumentsUsed ( bool  value  ) 

void StaticAnalysis::availableCollectionsUsed ( bool  value  ) 

bool StaticAnalysis::areDocsOrCollectionsUsed (  )  const

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

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

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

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

void StaticAnalysis::add ( const StaticAnalysis o  ) 

Sets the members of this StaticAnalysis from the given StaticAnalysis.

void StaticAnalysis::addExceptContextFlags ( const StaticAnalysis o  ) 

bool StaticAnalysis::isUsed (  )  const

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

bool StaticAnalysis::isUsedExceptContextFlags (  )  const

void StaticAnalysis::creative ( bool  value  ) 

bool StaticAnalysis::isCreative (  )  const

void StaticAnalysis::updating ( bool  value  ) 

bool StaticAnalysis::isUpdating (  )  const

void StaticAnalysis::possiblyUpdating ( bool  value  ) 

bool StaticAnalysis::isPossiblyUpdating (  )  const

unsigned int StaticAnalysis::getProperties (  )  const

void StaticAnalysis::setProperties ( unsigned int  props  ) 

const StaticType& StaticAnalysis::getStaticType (  )  const

StaticType& StaticAnalysis::getStaticType (  ) 

std::string StaticAnalysis::toString (  )  const


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