Example #1
0
ASTNode* XQInstanceOf::staticResolution(StaticContext *context)
{
  XPath2MemoryManager *mm = context->getMemoryManager();

  _exprType->staticResolution(context);

  _expr = new (mm) XQTreatAs(_expr, _exprType, mm);
  _expr->setLocationInfo(this);

  {
    AutoNodeSetOrderingReset orderReset(context);
    _expr = _expr->staticResolution(context);
  }

  return this;
}
Example #2
0
ASTNode* GeneralComp::staticResolution(StaticContext *context)
{
  XPath2MemoryManager *mm = context->getMemoryManager();

  xpath1compat_ = context->getXPath1CompatibilityMode();

  AutoNodeSetOrderingReset orderReset(context);

  for(VectorOfASTNodes::iterator i = _args.begin(); i != _args.end(); ++i) {
    *i = new (mm) XQAtomize(*i, mm);
    (*i)->setLocationInfo(this);
    *i = (*i)->staticResolution(context);
  }

  collation_ = context->getDefaultCollation(this);

  return this;
}
Example #3
0
ASTNode* XQOrderingChange::staticResolution(StaticContext* context)
{
  AutoNodeSetOrderingReset orderReset(context, m_nOrdering);
  m_pExpr = m_pExpr->staticResolution(context);
  return this;
}
Example #4
0
ASTNode* FunctionCount::staticResolution(StaticContext *context)
{
  AutoNodeSetOrderingReset orderReset(context);
  resolveArguments(context);
  return this;
}