diff options
Diffstat (limited to 'kxsldbg/kxsldbgpart/libxsldbg/search.h')
-rw-r--r-- | kxsldbg/kxsldbgpart/libxsldbg/search.h | 1087 |
1 files changed, 1087 insertions, 0 deletions
diff --git a/kxsldbg/kxsldbgpart/libxsldbg/search.h b/kxsldbg/kxsldbgpart/libxsldbg/search.h new file mode 100644 index 00000000..20fc82b4 --- /dev/null +++ b/kxsldbg/kxsldbgpart/libxsldbg/search.h @@ -0,0 +1,1087 @@ + +/* ************************************************************************* + xslsearch.h - public functions for + searching + ------------------- + begin : Fri Dec 7 2001 + copyright : (C) 2001 by Keith Isdale + email : k_isdale@tpg.com.au + ************************************************************************* */ + +/*************************************************************************** + * * + * This program is free software; you can redistribute it and/or modify * + * it under the terms of the GNU General Public License as published by * + * the Free Software Foundation; either version 2 of the License, or * + * (at your option) any later version. * + * * + ************************************************************************* */ + +#ifndef XSLSEARCH_H +#define XSLSEARCH_H + +#ifdef USE_KDE_DOCS + +/** + * Provide a searching support + * + * @short search support + * + * @author Keith Isdale <k_isdale@tpg.com.au> + */ +#endif + +/* We want skip most of these includes when building documentation*/ +#ifndef BUILD_DOCS +#include "breakpoint.h" +#include "callstack.h" +#endif + + +#ifdef WITH_XSLT_DEBUG +#ifndef WITH_XSLT_DEBUG_BREAKPOINTS +#define WITH_XSLT_DEBUG_BREAKPOINTS +#endif +#endif + +#ifdef __cplusplus +extern "C" { +#endif + + /* what types of searches are there */ +#ifndef USE_KDOC + typedef enum { + SEARCH_BREAKPOINT = 400, + SEARCH_NODE, + SEARCH_XSL, + SEARCH_VARIABLE + } SearchEnum; +#else + /* keep kdoc happy */ + enum SearchEnum { + SEARCH_BREAKPOINT = 400, + SEARCH_NODE, + SEARCH_XSL, + SEARCH_VARIABLE + }; +#endif + + /* define a common structure to be used when searching */ + typedef struct _searchInfo searchInfo; + typedef searchInfo *searchInfoPtr; + struct _searchInfo { + int found; /* found is 1 if search is finished */ + int type; /* what type of search see SearchEnum */ + int error; /* did an error occur */ + void *data; /* extra data to pass to walkFunc */ + }; + + + /* data to pass to via searchInfoPtr when searching for break points */ + typedef struct _breakPointSearchData breakPointSearchData; + typedef breakPointSearchData *breakPointSearchDataPtr; + struct _breakPointSearchData { + int id; /* what id to look for, + * if -1 then ignore */ + xmlChar *templateName; /* template to look for + * if NULL then ignore */ + breakPointPtr breakPtr; /* the break point found by search */ + }; + + + /* data to pass via searchInfoPtr when searching for nodes */ + typedef struct _nodeSearchData nodeSearchData; + typedef nodeSearchData *nodeSearchDataPtr; + struct _nodeSearchData { + long lineNo; /* what line number to look for + * if < 0 then ignore */ + xmlChar *url; /* what URl to look for + * if NULL then ignore */ + int fileSearch; /* if true then we are trying + * to match a file name */ + xmlChar *nameInput; /* what file/node name are we + * trying to match */ + xmlChar *guessedNameMatch; /* possible name match */ + xmlChar *absoluteNameMatch; /* full name match */ + xmlNodePtr node; /* the node that the match + * occured in */ + }; + + /* data to pass to via searchInfoPtr when searching for variables points */ + typedef struct _variableSearchData variableSearchData; + typedef variableSearchData *variableSearchDataPtr; + struct _variableSearchData { + xmlChar *name; + xmlChar *nameURI; + xmlChar *select; /* new value to adopt if any */ + }; + +#ifdef USE_GNOME_DOCS + +/** + * searchInit: + * + * Initialize the search module + * + * Returns 1 if search structures have been initialized properly and all + * memory required has been obtained, + * 0 otherwise +*/ +#else +#ifdef USE_KDE_DOCS + +/** + * Initialize the search module + * + * @returns 1 if search structures have been initialized properly and all + * memory required has been obtained, + * 0 otherwise +*/ +#endif +#endif + int searchInit(void); + + +#ifdef USE_GNOME_DOCS + +/** + * searchFree: + * + * Free all memory used by the search module + */ +#else +#ifdef USE_KDE_DOCS + +/** + * Free all memory used by the search module + */ +#endif +#endif + void searchFree(void); + + +#ifdef USE_GNOME_DOCS + +/** + * searchNewInfo: + * @type: What type of search is required + * + * Create a new search + * + * Returns A valid search info pointer if successful + * NULL otherwise + */ +#else +#ifdef USE_KDE_DOCS + +/** + * Create a new search + * + * @returns valid search info pointer if successful + * NULL otherwise + * + * @param type What type of search is required + */ +#endif +#endif + searchInfoPtr searchNewInfo(SearchEnum type); + + +#ifdef USE_GNOME_DOCS + +/** + * searchFreeInfo: + * @info: A valid search info + * + * Free memory used by @info + */ +#else +#ifdef USE_KDE_DOCS + +/** + * Free memory used by @p info + * + * @param info A valid search info + * + */ +#endif +#endif + void searchFreeInfo(searchInfoPtr info); + + +#ifdef USE_GNOME_DOCS + +/** + * searchEmpty: + * + * Empty the seach data base of its contents + * + * Returns 1 on success, + * 0 otherwise + */ +#else +#ifdef USE_KDE_DOCS + +/** + * Empty the seach dataBase of its contents + * + * @returns 1 on success, + * 0 otherwise + */ +#endif +#endif + int searchEmpty(void); + + +#ifdef USE_GNOME_DOCS + +/** + * searchDoc: + * + * Return the document used for seaching ie the search dataBase + * + * Returns The document used for searching + * Dangerous function to use! Does NOT return a copy of + * search data so don't free it + */ +#else +#ifdef USE_KDE_DOCS + +/** + * Return the document used for seaching ie the search dataBase + * + * @returns the document used for searching + * Dangerous function to use! Does NOT return a copy of + * search data so don't free it + */ +#endif +#endif + xmlDocPtr searchDoc(void); + + +#ifdef USE_GNOME_DOCS + +/** + * searchRootNode: + * + * Get the topmost node in the search dataBase + * + * Returns The topmost xml node in search dataBase. + * Dangerous function to use! Does NOT return a copy of + * search root node so don't free it + */ +#else +#ifdef USE_KDE_DOCS + +/** + * Get the topmost node in the search dataBase + * + * @returns The topmost xml node in search dataBase. + * Dangerous function to use! Does NOT return a copy of + * search root node so don't free it + */ +#endif +#endif + xmlNodePtr searchRootNode(void); + + +#ifdef USE_GNOME_DOCS + +/** + * searchAdd: + * @node: Is valid + * + * Add a node to the search dataBase + * + * Returns 1 if able to add @node to top node in search dataBase , + * 0 otherwise + */ +#else +#ifdef USE_KDE_DOCS + +/** + * Add a node to the search dataBase + * + * @returns 1 if able to add @p node to top node in search dataBase, + * 0 otherwise + * + * @param node Is valid + */ +#endif +#endif + int searchAdd(xmlNodePtr node); + + +#ifdef USE_GNOME_DOCS + +/** + * searchSave: + * @fileName: A valid file name, or NULL for the default + * + * Save the search dataBase to @fileName + * + * Returns 1 on success, + * 0 otherwise + */ +#else +#ifdef USE_KDE_DOCS + +/** + * Save the search dataBase to @p fileName + * + * @returns 1 on success, + * 0 otherwise + * + * @param fileName Valid file name + */ +#endif +#endif + int searchSave(const xmlChar * fileName); + + +#ifdef USE_GNOME_DOCS + +/** + * searchQuery: + * @query: The query to run . If NULL then query is "//search/ *" + * @tempFile: Where do we load the search dataBase from to execute + * query. If tempFile is NULL "searchresult.xml" is used + * @outputFile : Where do we store the result. If NULL + * then default to "searchresult.html" + * + * Send query as parameter for execution of search.xsl using + * data stored in @tempFile + * + * Returns 1 on success, + * 0 otherwise + */ +#else +#ifdef USE_KDE_DOCS + +/** + * Send query as parameter for execution of search.xsl using + * data stored in @p tempFile + * + * @returns 1 on success, + * 0 otherwise + * + * @param query The Query to run. If NULL then @p query defaults to "//search/ *" + * @param tempFile Where do we load the search dataBase from to execute + * query. If @p tempFile is NULL default is "search.data" + * @param outputFile Where do we store the result. If NULL + * then default to "searchresult.html" + */ +#endif +#endif + int searchQuery(const xmlChar * tempFile, const xmlChar * outputFile, + const xmlChar * query); + + +#ifdef USE_GNOME_DOCS + +/** + * updateSearchData: + * @styleCtxt: Not used + * @style: Is valid + * @data: Not used but MUST be NULL for the moment + * @variableTypes: What types of variables to look + * + * Update the searchDatabase + * + * Returns 1 on success, + * 0 otherwise + */ +#else +#ifdef USE_KDE_DOCS + +/** + * Update the search dataBase + * + * @returns 1 if able to update the search dataBase, + * 0 otherwise + * @param styleCtxt Not used + * @param style Is valid + * @param data Not used but MUST be NULL for the moment + * @param variableTypes What types of variables to look + */ +#endif +#endif + int updateSearchData(xsltTransformContextPtr styleCtxt, + xsltStylesheetPtr style, + void *data, VariableTypeEnum variableTypes); + + +#ifdef USE_GNOME_DOCS + +/** + * scanForBreakPoint: + * @payload: A valid breakPointPtr + * @data: The criteria to look for and a valid searchInfoPtr of + * type SEARCH_BREAKPOINT + * @name: Not used + * + * Test if break point matches criteria given by @data. If so then + * set @data->found to 1 and stores reference to break point found in + * @data->data->node + * otherwise @data is unchanged +*/ +#else +#ifdef USE_KDE_DOCS + +/** + * Test if break point matches criteria given by @p data. If so then + * set @p data->found to 1 and stores reference to break point found in + * @p data->data->node + * otherwise @p data is unchanged + * + * @param payload A valid breakPointPtr + * @param data The criteria to look for and a valid searchInfoPtr of + * type SEARCH_BREAKPOINT + * @param name Not used + * +*/ +#endif +#endif + void scanForBreakPoint(void *payload, void *data, xmlChar * name); + + +#ifdef USE_GNOME_DOCS + +/** + * scanForNode: + * @payload: A valid xmlNodePtr + * @data: The criteria to look for and a valid searchInfo of + * type SEARCH_NODE + * @name: Not used + + * Test if node matches criteria given by @data if so then set @data->found + * to 1 and stores reference to node found in @data->data->node + * otherwise @data is unchanged + */ +#else +#ifdef USE_KDE_DOCS + +/** + * Test if node matches criteria given by @p data if so then + * set @p data->found to 1 and stores reference to node found in + * @p data->data->node. + * otherwise @p data is unchanged + * + * @param payload A valid xmlNodePtr + * @param data The criteria to look for and a valid searchInfo of + * type SEARCH_NODE + * @param name Not used +*/ +#endif +#endif + void scanForNode(void *payload, void *data, xmlChar * name); + + +#ifdef USE_GNOME_DOCS + +/** + * findNodeByLineNo: + * @ctxt: Valid ctxt to look into + * @url: Non-null, non-empty file name that has been loaded by debugger + * @lineNumber: @lineNumber >= 0 and is available in @url + * + * Finds the closest line number in file specified that can be a point + * + * Returns The node at line number number specified if successfull, + * NULL otherwise + */ + +#else +#ifdef USE_KDE_DOCS + +/** + * Find the closest line number in file specified that can be a point + * + * @returns The node at line number specified if successful, + * NULL otherwise + * + * @param ctxt Valid ctxt to look into + * @param url Non-null, non-empty file name that has been loaded by + * debugger + * @param lineNumber @p lineNumber >= 0 and is available in @p url +*/ +#endif +#endif + xmlNodePtr findNodeByLineNo(xsltTransformContextPtr ctxt, + const xmlChar * url, long lineNumber); + + +#ifdef USE_GNOME_DOCS + +/** + * findTemplateNode: + * @style: A valid stylesheet collection to look into + * @name: A valid template name to look for + * + * Find a template node + * + * Returns The template node found if successful, + * NULL otherwise + */ +#else +#ifdef USE_KDE_DOCS + +/** + * Find a template node + * + * @returns The template node found if successful, + * NULL otherwise + * + * @param style A Valid stylesheet collection to look into + * @param name Valid template name to look for + */ +#endif +#endif + xmlNodePtr findTemplateNode(xsltStylesheetPtr style, + const xmlChar * name); + + +#ifdef USE_GNOME_DOCS + +/** + * findBreakPointByName: + * @templateName: The template name to look for + * + * Find the breakpoint at template with "match" or "name" equal + * to templateName + * + * Returns The break point that matches @templateName + * NULL otherwise +*/ +#else +#ifdef USE_KDE_DOCS + +/** + * Find the breakpoint at template with "match" or "name" equal + * to templateName + * + * @returns The break point that matches @p templateName + * NULL otherwise + * + * @param templateName Valid template name to look for +*/ +#endif +#endif + breakPointPtr findBreakPointByName(const xmlChar * templateName); + + +#ifdef USE_GNOME_DOCS + +/** + * findBreakPointById: + * @id: The break point id to look for + * + * Find a break point by its id + * + * Returns The break point with given the break point id if found, + * NULL otherwise + */ +#else +#ifdef USE_KDE_DOCS + +/** + * Find a break point by its id + * + * @returns The break point with given the break point id if found, + * NULL otherwise + * + * @param id The break point id to look for + */ +#endif +#endif + breakPointPtr findBreakPointById(int id); + + +#ifdef USE_GNOME_DOCS + +/** + * findNodesByQuery: + * @query: The xpath query to run, see docs/en/search.dtd for more details + * + * Find nodes in search dataBase using an xpath query + * + * Returns The nodes that match the given query on success, + * NULL otherwise + */ +#else +#ifdef USE_KDE_DOCS + +/** + * Find nodes in search dataBase using an xpath query + * + * @returns The nodes that match the given query on success, + * NULL otherwise + * + * @param query The xpath query to run, see docs/en/search.dtd for more details + */ +#endif +#endif + xmlXPathObjectPtr findNodesByQuery(const xmlChar * query); + + +#ifdef USE_GNOME_DOCS + +/** + * walkBreakPoints: + * @walkFunc: The function to callback for each break point found + * @data: The extra data to pass onto walkFunc + * + * Walks through all break points calling walkFunc for each. The payload + * sent to walkFunc is of type breakPointPtr + */ +#else +#ifdef USE_KDE_DOCS + +/** + * Walks through all break points calling walkFunc for each. The payload + * sent to walkFunc is of type breakPointPtr + * + * @param walkFunc The function to callback for each break point found + * @param data The extra data to pass onto @p walkFunc + */ +#endif +#endif + void walkBreakPoints(xmlHashScanner walkFunc, void *data); + + +#ifdef USE_GNOME_DOCS + +/** + * walkTemplates: + * @walkFunc: The function to callback for each template found + * @data: The extra data to pass onto walkFunc + * @style: The stylesheet to start from + * + * Walks through all templates calling walkFunc for each. The payload + * of walkFunc is of type xsltTemplatePtr + */ +#else +#ifdef USE_KDE_DOCS + +/** + * Walks through all templates found in @p style calling walkFunc for each. + * The payload of walkFunc is of type xsltTemplatePtr + * + * @param walkFunc The function to callback for each template found + * @param data The extra data to pass onto @p walkFunc + * @param style The stylesheet to start from + */ +#endif +#endif + void walkTemplates(xmlHashScanner walkFunc, void *data, + xsltStylesheetPtr style); + + +#ifdef USE_GNOME_DOCS + +/** + * walkStylesheets: + * @walkFunc: The function to callback for each stylesheet found + * @data: The extra data to pass onto walkFunc + * @style: The stylesheet to start from + * + * Walks through all templates calling walkFunc for each. The payload + * sent to walkFunc is of type xsltStylesheetPtr + */ +#else +#ifdef USE_KDE_DOCS + +/** + * Walks through all stylesheets found in @p style calling walkFunc for + * each. The payload sent to walkFunc is of type xsltStylesheetPtr + * + * @param walkFunc The function to callback for each stylesheet found + * @param data The extra data to pass onto @p walkFunc + * @param style The stylesheet to start from + */ +#endif +#endif + void walkStylesheets(xmlHashScanner walkFunc, void *data, + xsltStylesheetPtr style); + + +#ifdef USE_GNOME_DOCS + +/** + * walkGlobals: + * @walkFunc: The function to callback for each gobal variable found + * @data: The extra data to pass onto walkFunc + * @style: The stylesheet to start from + * + * Call walkFunc for each global variable. The payload + * sent to walkFunc is of type xmlNodePtr + */ +#else +#ifdef USE_KDE_DOCS + +/** + * Call walkFunc for each global variable found in @p style. The payload + * sent to walkFunc is of type xmlNodePtr + * + * @param walkFunc The function to callback for each gobal variable found + * @param data The extra data to pass onto @p walkFunc + * @param style The stylesheet to start from + */ +#endif +#endif + void walkGlobals(xmlHashScanner walkFunc, + void *data, xsltStylesheetPtr style); + + +#ifdef USE_GNOME_DOCS + +/** + * walkLocals: + * @walkFunc: The function to callback for each local variable found + * @data: The extra data to pass onto walkFunc + * @style: The stylesheet to start from + * + * Walks through all local variables calling walkFunc for each. The payload + * of walkFunc is of type xmlNodePtr + */ +#else +#ifdef USE_KDE_DOCS + +/** + * Walks through all local variables found in @p style calling + * walkFunc for each. The payload of walkFunc is of type xmlNodePtr + * + * @param walkFunc The function to callback for each local variable found + * @param data The extra data to pass onto @p walkFunc + * @param style The stylesheet to start from + */ +#endif +#endif + void walkLocals(xmlHashScanner walkFunc, void *data, + xsltStylesheetPtr style); + + +#ifdef USE_GNOME_DOCS + +/** + * walkIncludes: + * @walkFunc: The function to callback for each included stylesheet + * @data: The extra data to pass onto walkFunc + * @style: The stylesheet to start from + * + * Walks through all included stylesheets calling walkFunc for each. + * The payload of walkFunc is of type xmlNodePtr + */ +#else +#ifdef USE_KDE_DOCS + +/** + * Walks through all included stylesheets found in @p style, + * calling walkFunc for each. The payload of walkFunc is of + * type xmlNodePtr + * + * @param walkFunc The function to callback for each included stylesheet + * @param data The extra data to pass onto @p walkFunc + * @param style The stylesheet to start from + */ +#endif +#endif + void walkIncludes(xmlHashScanner walkFunc, void *data, + xsltStylesheetPtr style); + + +#ifdef USE_GNOME_DOCS + +/** + * walkIncludeInst: + * @walkFunc: The function to callback for each xsl:include instruction found + * @data: The extra data to pass onto walkFunc + * @style: The stylesheet to start from + * + * Walks through all xsl:include calling walkFunc for each. The payload + * of walkFunc is of type xmlNodePtr + */ +#else +#ifdef USE_KDE_DOCS + +/** + * Walks through all xsl:include calling walkFunc for each. The payload + * of walkFunc is of type xmlNodePtr + * + * @param walkFunc The function to callback for each xsl:include instruction found + * @param data The extra data to pass onto @p walkFunc + * @param style The stylesheet to start from + */ +#endif +#endif + void walkIncludeInst(xmlHashScanner walkFunc, void *data, + xsltStylesheetPtr style); + + +#ifdef USE_GNOME_DOCS + +/** + * walkChildNodes: + * @walkFunc: The function to callback for each child/sibling found + * @data: The extra data to pass onto walkFunc + * @node: Is valid + * + * Call walkFunc for each child of @node the payload sent to walkFunc is + * a xmlNodePtr + */ +#else +#ifdef USE_KDE_DOCS + +/** + * Call walkFunc for each child of @p node the payload sent to walkFunc is + * a xmlNodePtr + * + * @param walkFunc The function to callback for each child/sibling found + * @param data The extra data to pass onto @p walkFunc + * @param node Valid xmlNodePtr + */ +#endif +#endif + void walkChildNodes(xmlHashScanner walkFunc, void *data, + xmlNodePtr node); + + + +#ifdef USE_GNOME_DOCS + +/** + * searchBreakPointNode: + * @breakPtr: Is valid + * + * Convert @breakPtr into search dataBase format + * + * Returns @breakPtr as a new xmlNode in search dataBase format + * if successful, + * NULL otherwise + */ +#else +#ifdef USE_KDE_DOCS + +/** + * Convert @p breakPtr into search dataBase format + * + * @returns @p breakPtr as a new xmlNode in search dataBase format + * if successful, + * NULL otherwise + * + * @param breakPtr Is valid + */ +#endif +#endif + xmlNodePtr searchBreakPointNode(breakPointPtr breakPtr); + + +#ifdef USE_GNOME_DOCS + +/** + * searchTemplateNode: + * @templNode: Is valid + * + * Convert @templateNode into search dataBase format + * + * Returns @templNode as a new xmlNode in search dataBase format + * if successful, + * NULL otherwise + */ +#else +#ifdef USE_KDE_DOCS + +/** + * Convert @p templateNode into search dataBase format + * + * @returns @p templNode as a new xmlNode in search dataBase format + * if successful, + * NULL otherwise + * + * @param templNode A valid template node + */ +#endif +#endif + xmlNodePtr searchTemplateNode(xmlNodePtr templNode); + + +#ifdef USE_GNOME_DOCS + +/** + * searchGlobalNode: + * @globalVariable: Is valid + * + * Convert @globalVariable into search dataBase format + * + * Returns @globalVariable as a new xmlNode in search dataBase format + * if successful, + * NULL otherwise + */ +#else +#ifdef USE_KDE_DOCS + +/** + * Convert @p globalVariable into search dataBase format + * + * @returns @p globalVariable as a new xmlNode in search dataBase + * format if successful, + * NULL otherwise + * + * @param globalVariable A valid xmlNodePtr node + * + */ +#endif +#endif + xmlNodePtr searchGlobalNode(xmlNodePtr globalVariable); + + +#ifdef USE_GNOME_DOCS + +/** + * searchLocalNode: + * @localvariable: Is valid + * + * Convert @localVariable into search dataBase format + * + * Returns @localVariable as a new xmlNode in search dataBase format + * if successful, + * NULL otherwise + */ +#else +#ifdef USE_KDE_DOCS + +/** + * Convert @p localVariable into search dataBase format + * + * @returns @p localVariable as a new xmlNode in search dataBase + * format if successful, + * NULL otherwise + * + * @param localVariable Is valid + * + */ +#endif +#endif + xmlNodePtr searchLocalNode(xmlNodePtr localVariable); + + +#ifdef USE_GNOME_DOCS + +/** + * searchSourceNode: + * @style: Is valid + * + * Convert @style into search dataBase format + * + * Returns @style as a new xmlNode in search dataBase format if successful, + * NULL otherwise + */ +#else +#ifdef USE_KDE_DOCS + +/** + * Convert @p style into search dataBase format + * + * @returns @p style as a new xmlNode in search dataBase format if successful, + * NULL otherwise + * + * @param style Is valid + */ +#endif +#endif + xmlNodePtr searchSourceNode(xsltStylesheetPtr style); + + +#ifdef USE_GNOME_DOCS + +/** + * searchIncludeNode: + * @include: Is a valid xsl:include instruction + * + * Convert @include into search dataBase format + * + * Returns @include as a new xmlNode in search dataBase format if successful, + * NULL otherwise + */ +#else +#ifdef USE_KDE_DOCS + +/** + * Convert @p include into search dataBase format + * + * @returns @p include as a new xmlNode in search dataBase format + * if successful, + * NULL otherwise + * + * @param include Is a valid xsl:include instruction + * + */ +#endif +#endif + xmlNodePtr searchIncludeNode(xmlNodePtr include); + + +#ifdef USE_GNOME_DOCS + +/** + * searchCallStackNode: + * @callStackItem: Is valid + * + * Convert @callStackItem into search dataBase format + * + * Returns @callStackItem as a new xmlNode in search dataBase format + * if successful, + * NULL otherwise + */ +#else +#ifdef USE_KDE_DOCS + + /** + *Convert @p include into search dataBase format + * + * @returns @p callStackItem as a new xmlNode in search dataBase + * format if successful, + * NULL otherwise + * @param callStackItem Is valid + */ +#endif +#endif + xmlNodePtr searchCallStackNode(callPointPtr callStackItem); + + + +#ifdef USE_GNOME_DOCS + +/** + * searchCommentNode: + * @sourceNode: Is valid + * + * Find documentation comment that applies to @sourceNode. If found convert comment + * into search dataBase format required + * + * Returns Documentation comment for @node as a new xmlNode in search dataBase format + * if successful, + * NULL otherwise + */ +#else +#ifdef USE_KDE_DOCS + + /** + * Find documentation comment that applies to @p sourceNode. If found convert comment + * into search dataBase format required + * + * Returns Documentation comment for @node as a new xmlNode in search dataBase format + * if successful, + * NULL otherwise + * + * @param node Is valid + */ +#endif +#endif + xmlNodePtr searchCommentNode(xmlNodePtr node); + + +#ifdef __cplusplus +} +#endif +#endif |