diff options
Diffstat (limited to 'win32/sablot/include/sxpath.h')
-rw-r--r-- | win32/sablot/include/sxpath.h | 664 |
1 files changed, 0 insertions, 664 deletions
diff --git a/win32/sablot/include/sxpath.h b/win32/sablot/include/sxpath.h deleted file mode 100644 index 56888b4..0000000 --- a/win32/sablot/include/sxpath.h +++ /dev/null @@ -1,664 +0,0 @@ -/* - - * The contents of this file are subject to the Mozilla Public - - * License Version 1.1 (the "License"); you may not use this file - - * except in compliance with the License. You may obtain a copy of - - * the License at http://www.mozilla.org/MPL/ - - * - - * Software distributed under the License is distributed on an "AS - - * IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or - - * implied. See the License for the specific language governing - - * rights and limitations under the License. - - * - - * The Original Code is the Sablotron XSLT Processor. - - * - - * The Initial Developer of the Original Code is Ginger Alliance Ltd. - - * Portions created by Ginger Alliance are Copyright (C) 2000-2002 - - * Ginger Alliance Ltd. All Rights Reserved. - - * - - * Contributor(s): - - * - - * Alternatively, the contents of this file may be used under the - - * terms of the GNU General Public License Version 2 or later (the - - * "GPL"), in which case the provisions of the GPL are applicable - - * instead of those above. If you wish to allow use of your - - * version of this file only under the terms of the GPL and not to - - * allow others to use your version of this file under the MPL, - - * indicate your decision by deleting the provisions above and - - * replace them with the notice and other provisions required by - - * the GPL. If you do not delete the provisions above, a recipient - - * may use your version of this file under either the MPL or the - - * GPL. - - */ - - - -#ifndef SXPathHIncl - -#define SXPathHIncl - - - -/* basic types needed in sablot.h */ - -typedef void *SXP_Node; - -typedef void *SXP_Document; - -typedef void *SXP_NodeList; - -typedef SXP_Node NodeHandle; - - - -#include "sablot.h" - - - -typedef enum - -{ - - ELEMENT_NODE = 1, - - ATTRIBUTE_NODE = 2, - - TEXT_NODE = 3, - - PROCESSING_INSTRUCTION_NODE = 7, - - COMMENT_NODE = 8, - - DOCUMENT_NODE = 9, - - NAMESPACE_NODE = 13 - -} SXP_NodeType; - - - -typedef enum - -{ - - SXP_NONE, - - SXP_NUMBER, - - SXP_STRING, - - SXP_BOOLEAN, - - SXP_NODESET - -} SXP_ExpressionType; - - - -typedef char SXP_char; - - - -typedef void *QueryContext; - - - -/*option constants */ - -typedef enum - -{ - - SXPF_DISPOSE_NAMES = 0x1, - - SXPF_DISPOSE_VALUES = 0x2, - - SXPF_SUPPORTS_UNPARSED_ENTITIES =0x4 - -} SXPFlags; - - - -/* - - * DOM handler functions - - * This handler is registered with the Situation rather than the Processor - - */ - - - -/***************************************************************** - -DOMHandler - - - - Handler providing information about a DOM tree to the XPath - - processor - -*****************************************************************/ - - - -typedef SXP_NodeType DOMH_getNodeType(SXP_Node n); - -typedef SXP_NodeType DOMH_getNodeTypeExt(SXP_Node n, void *userData); - - - -typedef const SXP_char* DOMH_getNodeName(SXP_Node n); - -typedef const SXP_char* DOMH_getNodeNameExt(SXP_Node n, void *userData); - - - -typedef const SXP_char* DOMH_getNodeNameURI(SXP_Node n); - -typedef const SXP_char* DOMH_getNodeNameURIExt(SXP_Node n, void *userData); - - - -typedef const SXP_char* DOMH_getNodeNameLocal(SXP_Node n); - -typedef const SXP_char* DOMH_getNodeNameLocalExt(SXP_Node n, void *userData); - - - -typedef const SXP_char* DOMH_getNodeValue(SXP_Node n); - -typedef const SXP_char* DOMH_getNodeValueExt(SXP_Node n, void *userData); - - - -typedef SXP_Node DOMH_getNextSibling(SXP_Node n); - -typedef SXP_Node DOMH_getNextSiblingExt(SXP_Node n, void *userData); - - - -typedef SXP_Node DOMH_getPreviousSibling(SXP_Node n); - -typedef SXP_Node DOMH_getPreviousSiblingExt(SXP_Node n, void *userData); - - - -typedef SXP_Node DOMH_getNextAttrNS(SXP_Node n); - -typedef SXP_Node DOMH_getNextAttrNSExt(SXP_Node n, void *userData); - - - -typedef SXP_Node DOMH_getPreviousAttrNS(SXP_Node n); - -typedef SXP_Node DOMH_getPreviousAttrNSExt(SXP_Node n, void *userData); - - - -typedef int DOMH_getChildCount(SXP_Node n); - -typedef int DOMH_getChildCountExt(SXP_Node n, void *userData); - - - -typedef int DOMH_getAttributeCount(SXP_Node n); - -typedef int DOMH_getAttributeCountExt(SXP_Node n, void *userData); - - - -typedef int DOMH_getNamespaceCount(SXP_Node n); - -typedef int DOMH_getNamespaceCountExt(SXP_Node n, void *userData); - - - -typedef SXP_Node DOMH_getChildNo(SXP_Node n, int ndx); - -typedef SXP_Node DOMH_getChildNoExt(SXP_Node n, int ndx, void *userData); - - - -typedef SXP_Node DOMH_getAttributeNo(SXP_Node n, int ndx); - -typedef SXP_Node DOMH_getAttributeNoExt(SXP_Node n, int ndx, void *userData); - - - -typedef SXP_Node DOMH_getNamespaceNo(SXP_Node n, int ndx); - -typedef SXP_Node DOMH_getNamespaceNoExt(SXP_Node n, int ndx, void *userData); - - - -typedef SXP_Node DOMH_getParent(SXP_Node n); - -typedef SXP_Node DOMH_getParentExt(SXP_Node n, void *userData); - - - -typedef SXP_Document DOMH_getOwnerDocument(SXP_Node n); - -typedef SXP_Document DOMH_getOwnerDocumentExt(SXP_Node n, void *userData); - - - -typedef int DOMH_compareNodes(SXP_Node n1, SXP_Node n2); - -typedef int DOMH_compareNodesExt(SXP_Node n1, SXP_Node n2, void *userData); - - - -typedef SXP_Document DOMH_retrieveDocument(const SXP_char* uri, - - void* udata); - -typedef SXP_Document DOMH_retrieveDocumentExt(const SXP_char* uri, - - const SXP_char* baseUri, - - void* udata); - - - -typedef SXP_Node DOMH_getNodeWithID(SXP_Document doc, const SXP_char* id); - -typedef SXP_Node DOMH_getNodeWithIDExt(SXP_Document doc, const SXP_char* id, void *userData); - - - -typedef void DOMH_freeBuffer(SXP_char *buff); - -typedef void DOMH_freeBufferExt(SXP_Node n, SXP_char *buff, void *userData); - - - - - -typedef struct - -{ - - DOMH_getNodeType *getNodeType; - - DOMH_getNodeName *getNodeName; - - DOMH_getNodeNameURI *getNodeNameURI; - - DOMH_getNodeNameLocal *getNodeNameLocal; - - DOMH_getNodeValue *getNodeValue; - - DOMH_getNextSibling *getNextSibling; - - DOMH_getPreviousSibling *getPreviousSibling; - - DOMH_getNextAttrNS *getNextAttrNS; - - DOMH_getPreviousAttrNS *getPreviousAttrNS; - - DOMH_getChildCount *getChildCount; - - DOMH_getAttributeCount *getAttributeCount; - - DOMH_getNamespaceCount *getNamespaceCount; - - DOMH_getChildNo *getChildNo; - - DOMH_getAttributeNo *getAttributeNo; - - DOMH_getNamespaceNo *getNamespaceNo; - - DOMH_getParent *getParent; - - DOMH_getOwnerDocument *getOwnerDocument; - - DOMH_compareNodes *compareNodes; - - DOMH_retrieveDocument *retrieveDocument; - - DOMH_getNodeWithID *getNodeWithID; - - /*optional entries - driven by sxpOptions */ - - DOMH_freeBuffer *freeBuffer; - - - - DOMH_getNodeTypeExt *getNodeTypeExt; - - DOMH_getNodeNameExt *getNodeNameExt; - - DOMH_getNodeNameURIExt *getNodeNameURIExt; - - DOMH_getNodeNameLocalExt *getNodeNameLocalExt; - - DOMH_getNodeValueExt *getNodeValueExt; - - DOMH_getNextSiblingExt *getNextSiblingExt; - - DOMH_getPreviousSiblingExt *getPreviousSiblingExt; - - DOMH_getNextAttrNSExt *getNextAttrNSExt; - - DOMH_getPreviousAttrNSExt *getPreviousAttrNSExt; - - DOMH_getChildCountExt *getChildCountExt; - - DOMH_getAttributeCountExt *getAttributeCountExt; - - DOMH_getNamespaceCountExt *getNamespaceCountExt; - - DOMH_getChildNoExt *getChildNoExt; - - DOMH_getAttributeNoExt *getAttributeNoExt; - - DOMH_getNamespaceNoExt *getNamespaceNoExt; - - DOMH_getParentExt *getParentExt; - - DOMH_getOwnerDocumentExt *getOwnerDocumentExt; - - DOMH_compareNodesExt *compareNodesExt; - - DOMH_retrieveDocumentExt *retrieveDocumentExt; - - DOMH_getNodeWithIDExt *getNodeWithIDExt; - - /*optional entries - driven by sxpOptions */ - - DOMH_freeBufferExt *freeBufferExt; - - - -} DOMHandler; - - - -Declare - -( - - void SXP_registerDOMHandler(SablotSituation S, - - DOMHandler *domh, void* udata); - -) - - - -Declare - -( - - void SXP_unregisterDOMHandler(SablotSituation S); - -) - - - -/* - - * - - * QueryContext functions - - * - - */ - - - -/* options setter getter */ - -Declare - -( - - void SXP_setOptions(SablotSituation S, unsigned long options); - -) - - - -Declare - -( - - void SXP_setMaskBit(SablotSituation S, int mask); - -) - - - -Declare - -( - - unsigned long SXP_getOptions(SablotSituation S); - -) - - - -Declare - -( - - int SXP_createQueryContext(SablotSituation S, QueryContext *Q); - -) - - - -Declare - -( - - int SXP_addVariableBinding(QueryContext Q, - - const SXP_char* name, QueryContext source); - -) - - - -Declare - -( - - int SXP_addVariableNumber(QueryContext Q, - - const SXP_char* name, double value); - -) - - - -Declare - -( - - int SXP_addVariableString(QueryContext Q, - - const SXP_char* name, const SXP_char* value); - -) - - - -Declare - -( - - int SXP_addVariableBoolean(QueryContext Q, - - const SXP_char* name, int value); - -) - - - -Declare - -( - - int SXP_addNamespaceDeclaration(QueryContext Q, - - const SXP_char* prefix, const SXP_char* uri); - -) - - - -Declare - -( - - int SXP_query(QueryContext Q, const SXP_char* query, - - SXP_Node n, int contextPosition, int contextSize); - -) - - - -Declare - -( - - int SXP_destroyQueryContext(QueryContext Q); - -) - - - -/* - - * - - * Functions to retrieve the query result and its type - - * - - */ - - - -Declare - -( - - int SXP_getResultType(QueryContext Q, SXP_ExpressionType *type); - -) - - - -Declare - -( - - int SXP_getResultNumber(QueryContext Q, double *result); - -) - - - -Declare - -( - - int SXP_getResultBool(QueryContext Q, int *result); - -) - - - -Declare - -( - - int SXP_getResultString(QueryContext Q, const char **result); - -) - - - -Declare - -( - - int SXP_getResultNodeset(QueryContext Q, SXP_NodeList *result); - -) - - - -/* - - * - - * NodeList manipulation - - * - - */ - - - -Declare - -( - - int SXP_getNodeListLength(SXP_NodeList l); - -) - - - -Declare - -( - - SXP_Node SXP_getNodeListItem(QueryContext Q, SXP_NodeList l, int index); - -) - - - - - -#endif /* SXPathHIncl */ - |