#include <StaticAnalysis.hpp>
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 |
Properties that allow optimisation regarding sorting or not.
The values are OR'd as flags, so they must be distinct bits
StaticAnalysis::StaticAnalysis | ( | XPath2MemoryManager * | memMgr | ) |
StaticAnalysis::StaticAnalysis | ( | const StaticAnalysis & | o, | |
XPath2MemoryManager * | memMgr | |||
) |
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 |