25 #include <xqilla/framework/XQillaExport.hpp>
31 #include <xqilla/runtime/LazySequenceResult.hpp>
36 class XQGlobalVariable;
37 class XQUserFunctionInstance;
40 typedef std::vector<XQGlobalVariable*, XQillaAllocator<XQGlobalVariable*> >
GlobalVariables;
57 class XQILLA_API
XQQuery :
public XERCES_CPP_NAMESPACE_QUALIFIER XMemory
74 DynamicContext *createDynamicContext(XERCES_CPP_NAMESPACE_QUALIFIER MemoryManager *memMgr =
75 XERCES_CPP_NAMESPACE_QUALIFIER XMLPlatformUtils::fgMemoryManager)
const;
183 void staticResolution();
197 void staticTyping(StaticTyper *styper = 0);
205 const XMLCh* getQueryText()
const;
208 std::string getQueryPlan()
const;
216 ASTNode* getQueryBody()
const;
218 void setQueryBody(ASTNode* query);
221 void addFunction(XQUserFunction* fnDef);
226 void addVariable(XQGlobalVariable* varDef);
234 const XMLCh* getFile()
const;
236 void setFile(
const XMLCh* file);
246 void setIsLibraryModule(
bool bIsModule=
true);
248 bool getIsLibraryModule()
const;
250 void setModuleTargetNamespace(
const XMLCh* uri);
252 const XMLCh* getModuleTargetNamespace()
const;
263 QueryResult(
const XQQuery *query);
274 XERCES_CPP_NAMESPACE_QUALIFIER MemoryManager *memMgr =
275 XERCES_CPP_NAMESPACE_QUALIFIER XMLPlatformUtils::fgMemoryManager);
284 XERCES_CPP_NAMESPACE_QUALIFIER MemoryManager* m_memMgr;
292 bool m_bIsLibraryModule;
293 const XMLCh* m_szTargetNamespace;
294 const XMLCh* m_szQueryText;
295 const XMLCh* m_szCurrentFile;
301 friend class QueryResult;
const UserFunctions & getFunctions() const
Returns a vector of all XQUserFunction objects from the query.
Definition: XQQuery.hpp:223
Definition: EventHandler.hpp:31
const GlobalVariables & getVariables() const
Returns a vector of all XQGlobalVariable objects from the query.
Definition: XQQuery.hpp:228
The parse time static context interface.
Definition: StaticContext.hpp:59
std::vector< const XMLCh *, XQillaAllocator< const XMLCh * > > VectorOfStrings
Definition: DocumentCache.hpp:37
A scoped pointer wrapper for the lazily evaluated query result.
Definition: Result.hpp:39
std::vector< XQUserFunction *, XQillaAllocator< XQUserFunction * > > UserFunctions
Definition: StaticContext.hpp:50
Encapsulates a query expression.
Definition: XQQuery.hpp:57
std::vector< XQGlobalVariable *, XQillaAllocator< XQGlobalVariable * > > GlobalVariables
Definition: XQQuery.hpp:38
std::vector< XQQuery *, XQillaAllocator< XQQuery * > > ImportedModules
Definition: XQQuery.hpp:41
The execution time dynamic context interface.
Definition: DynamicContext.hpp:39
const ImportedModules & getImportedModules() const
Returns a vector of all XQGlobalVariable objects from the query.
Definition: XQQuery.hpp:231
A class that gives records a location in the query.
Definition: LocationInfo.hpp:31
const DynamicContext * getStaticContext() const
Definition: XQQuery.hpp:238
Provides factory methods for creating XQQuery and DynamicContext objects.
Definition: XQilla.hpp:48
A lazily evaluated query result.
Definition: ResultImpl.hpp:35