You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
1083 lines
23 KiB
1083 lines
23 KiB
|
|
/**************************************************************************
|
|
debugXSL.h - describes the core xsldbg shell functions
|
|
-------------------
|
|
begin : Sun Sep 16 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. *
|
|
* *
|
|
**************************************************************************/
|
|
|
|
/*
|
|
* Orinal file : debugXML.h : This is a set of routines used for
|
|
* debugging the tree produced by the XML parser.
|
|
*
|
|
* New file : debugXSL.h : Debug support version
|
|
*
|
|
* See Copyright for the status of this software.
|
|
*
|
|
* Daniel Veillard <daniel@veillard.com>
|
|
*
|
|
* Permission abtained to modify the LGPL'd code and extend to include
|
|
* break points, inspections of stylesheet source, xml data, stylesheet
|
|
* variables Keith Isdale <k_isdale@tpg.com.au>
|
|
*/
|
|
|
|
#ifndef __DEBUG_XSL__
|
|
#define __DEBUG_XSL__
|
|
|
|
#ifdef HAVE_CONFIG_H
|
|
#include "config.h"
|
|
#endif
|
|
|
|
#ifdef USE_XSLDBG_AS_THREAD
|
|
#include "xsldbgmsg.h"
|
|
#include "xsldbgthread.h"
|
|
#endif
|
|
|
|
/* We want skip most of these includes when building documentation*/
|
|
#ifndef BUILD_DOCS
|
|
#include "utils.h"
|
|
#include "breakpoint.h"
|
|
#endif
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
#define DEBUG_BUFFER_SIZE 500 /*used by xslDbgShell */
|
|
|
|
/* how may items have been printed */
|
|
extern int printCount;
|
|
|
|
/* used to indicated that xsldbg should stop tracing/walking
|
|
value : 1 stop tracing at start of next cycle
|
|
value : 0 normal operation
|
|
*/
|
|
|
|
extern int xsldbgStop;
|
|
extern int xsldbgValidateBreakpoints;
|
|
/* Some versions of libxml/libxslt need a different type of
|
|
line numbers handling */
|
|
extern int xsldbgHasLineNumberFix;
|
|
extern bool xsldbgReachedFirstTemplate;
|
|
|
|
/****************************************************************
|
|
* *
|
|
* The XSL shell related structures and functions *
|
|
* *
|
|
****************************************************************/
|
|
|
|
/*
|
|
Note that functions that have a prefix of xslDbgShell are NOT implemented
|
|
in debugXSL.c unless stated
|
|
|
|
All functions with the prefix of debygXSL are implemented in debugXSL.c
|
|
|
|
*/
|
|
|
|
#ifdef USE_GNOME_DOCS
|
|
|
|
/**
|
|
* debugXSLBreak:
|
|
* @templ: The source node being executed
|
|
* @node: The data node being processed
|
|
* @root: The template being applied to "node"
|
|
* @ctxt: The transform context for stylesheet being processed
|
|
*
|
|
* A break point has been found so pass control to user
|
|
*/
|
|
#else
|
|
#ifdef USE_KDE_DOCS
|
|
|
|
/**
|
|
* A break point has been found so pass control to user
|
|
*
|
|
* @param templ The source node being executed
|
|
* @param node The data node being processed
|
|
* @param root The template being applied to "node"
|
|
* @param ctxt transform context for stylesheet being processed
|
|
*/
|
|
#endif
|
|
#endif
|
|
void debugXSLBreak(xmlNodePtr templ, xmlNodePtr node,
|
|
xsltTemplatePtr root, xsltTransformContextPtr ctxt);
|
|
|
|
|
|
#ifdef USE_GNOME_DOCS
|
|
|
|
/**
|
|
* debugXSLGetTemplate:
|
|
*
|
|
* Get the last template node found, if any
|
|
*
|
|
* Returns The last template node found, if any
|
|
*/
|
|
#else
|
|
#ifdef USE_KDE_DOCS
|
|
|
|
/**
|
|
* Get the last template node found, if any
|
|
*
|
|
* @returns the last template node found, if any
|
|
*/
|
|
#endif
|
|
#endif
|
|
xsltTemplatePtr debugXSLGetTemplate(void);
|
|
|
|
|
|
|
|
/* -----------------------------------------
|
|
Break Point related commands
|
|
|
|
They are implemented in breakpoint_cmds.c
|
|
------------------------------------------- */
|
|
|
|
|
|
#ifdef USE_GNOME_DOCS
|
|
|
|
/**
|
|
* xslDbgShellFrameBreak:
|
|
* @arg: Is valid number of frames to change location by
|
|
* @stepup: If != 1 then we step up, otherwise step down
|
|
*
|
|
* Set a "frame" break point either up or down from here
|
|
*
|
|
* Returns 1 on success,
|
|
* 0 otherwise
|
|
*/
|
|
#else
|
|
#ifdef USE_KDE_DOCS
|
|
|
|
/**
|
|
* Set a "frame" break point either up or down from here
|
|
*
|
|
* @returns 1 on success,
|
|
* 0 otherwise
|
|
*
|
|
* @param arg Is valid and in UTF-8
|
|
* @param stepup If != 1 then we step up, otherwise step down
|
|
*/
|
|
#endif
|
|
#endif
|
|
int xslDbgShellFrameBreak(xmlChar * arg, int stepup);
|
|
|
|
|
|
|
|
#ifdef USE_GNOME_DOCS
|
|
|
|
/**
|
|
* xslDbgShellBreak:
|
|
* @arg: Is valid and in UTF-8
|
|
* @style: Is valid
|
|
* @ctxt: Is valid
|
|
*
|
|
* Add break point specified by arg
|
|
*
|
|
* Returns 1 on success,
|
|
* 0 otherwise
|
|
*/
|
|
#else
|
|
#ifdef USE_KDE_DOCS
|
|
|
|
/**
|
|
* Add break point specified by arg
|
|
*
|
|
* @returns 1 on success,
|
|
* 0 otherwise
|
|
*
|
|
* @param arg Is valid and in UTF-8
|
|
* @param style Is valid
|
|
* @param ctxt Is valid
|
|
*/
|
|
#endif
|
|
#endif
|
|
int xslDbgShellBreak(xmlChar * arg, xsltStylesheetPtr style,
|
|
xsltTransformContextPtr ctxt);
|
|
|
|
|
|
|
|
#ifdef USE_GNOME_DOCS
|
|
|
|
/**
|
|
* xslDbgShellDelete:
|
|
* @arg: Is valid and in UTF-8
|
|
*
|
|
* Delete break point specified by arg
|
|
*
|
|
* Returns 1 on success,
|
|
* 0 otherwise
|
|
*/
|
|
#else
|
|
#ifdef USE_KDE_DOCS
|
|
|
|
/**
|
|
* Delete break point specified by arg
|
|
*
|
|
* @returns 1 on success,
|
|
* 0 otherwise
|
|
*
|
|
* @param arg Is valid and in UTF-8
|
|
*/
|
|
#endif
|
|
#endif
|
|
int xslDbgShellDelete(xmlChar * arg);
|
|
|
|
|
|
#ifdef USE_GNOME_DOCS
|
|
|
|
/**
|
|
* xslDbgShellEnableBreakPoint:
|
|
* @payload: A valid xslBreakPointPtr
|
|
* @data: Enable type, a pointer to an integer
|
|
* for a value of
|
|
* 1 enable break point
|
|
* 0 disable break point
|
|
* -1 toggle enabling of break point
|
|
* @name: Not used
|
|
*
|
|
* Enable/disable break points via use of scan of break points
|
|
*/
|
|
#else
|
|
#ifdef USE_KDE_DOCS
|
|
|
|
/**
|
|
* Enable/disable break points via use of scan of break points
|
|
*
|
|
* @param payload Is valid xslBreakPointPtr
|
|
* @param data Enable type, a pointer to an integer
|
|
* for a value of
|
|
* @li 1 enable break point
|
|
* @li 0 disable break point
|
|
* @li -1 toggle enabling of break point
|
|
* @param name Not used
|
|
*/
|
|
#endif
|
|
#endif
|
|
void xslDbgShellEnableBreakPoint(void *payload, void *data,
|
|
xmlChar * name);
|
|
|
|
|
|
|
|
#ifdef USE_GNOME_DOCS
|
|
|
|
/**
|
|
* xslDbgShellEnable:
|
|
* @arg : is valid enable "commmand text" and in UTF-8
|
|
* @enableType : enable break point if 1, disable if 0, toggle if -1
|
|
*
|
|
* Enable/disable break point specified by arg using enable
|
|
* type of @enableType
|
|
* Returns 1 if successful,
|
|
* 0 otherwise
|
|
*/
|
|
#else
|
|
#ifdef USE_KDE_DOCS
|
|
|
|
/**
|
|
* Enable/disable break point specified by arg using enable
|
|
*
|
|
* @param arg: is valid enable "commmand text" and in UTF-8
|
|
* @param enableType : enable break point if 1, disable if 0, toggle if -1
|
|
*
|
|
* @returns 1 if successful,
|
|
* 0 otherwise
|
|
*/
|
|
#endif
|
|
#endif
|
|
int xslDbgShellEnable(xmlChar * arg, int enableType);
|
|
|
|
|
|
#ifdef USE_GNOME_DOCS
|
|
|
|
/**
|
|
* xslDbgShellPrintBreakPoint:
|
|
* @payload: A valid xslBreakPointPtr
|
|
* @data: Not used
|
|
* @name: Not used
|
|
*
|
|
* Print data given by scan of break points
|
|
*/
|
|
#else
|
|
#ifdef USE_KDE_DOCS
|
|
|
|
/**
|
|
* Print data given by scan of break points
|
|
*
|
|
* @param payload Is valid xslBreakPointPtr
|
|
* @param data Not used
|
|
* @param name Not used
|
|
*/
|
|
#endif
|
|
#endif
|
|
void xslDbgShellPrintBreakPoint(void *payload, void *data,
|
|
xmlChar * name);
|
|
|
|
|
|
|
|
#ifdef USE_GNOME_DOCS
|
|
|
|
/**
|
|
* xslDbgShellValidateBreakPoint:
|
|
* @payload: A valid xslBreakPointPtr
|
|
* @data: Not used
|
|
* @name: Not used
|
|
*
|
|
* Print an warning if a breakpoint is invalid
|
|
*/
|
|
#else
|
|
#ifdef USE_KDE_DOCS
|
|
|
|
/**
|
|
* Print an warning if a breakpoint is invalid
|
|
*
|
|
* @param payload Is valid xslBreakPointPtr
|
|
* @param data Not used
|
|
* @param name Not used
|
|
*/
|
|
#endif
|
|
#endif
|
|
void xslDbgShellValidateBreakPoint(void *payload, void *data,
|
|
xmlChar * name);
|
|
|
|
|
|
/* -----------------------------------------
|
|
Template related commands
|
|
|
|
They are implemented in template_cmds.c
|
|
------------------------------------------- */
|
|
|
|
#ifdef USE_GNOME_DOCS
|
|
|
|
/**
|
|
* xslDbgShellPrintStyleSheets:
|
|
* @arg: The stylesheets of interests and in UTF-8, is NULL for all stylesheets
|
|
*
|
|
* Print stylesheets that can be found in loaded stylsheet
|
|
*
|
|
* Returns 1 on success,
|
|
* 0 otherwise
|
|
*/
|
|
#else
|
|
#ifdef USE_KDE_DOCS
|
|
|
|
/**
|
|
* Print stylesheets that can be found in loaded stylsheet
|
|
*
|
|
* @returns 1 on success,
|
|
* 0 otherwise
|
|
*
|
|
* @param arg The stylesheets of interests and in UTF-8, is NULL for all stylesheets
|
|
*
|
|
*/
|
|
#endif
|
|
#endif
|
|
int xslDbgShellPrintStyleSheets(xmlChar * arg);
|
|
|
|
|
|
|
|
#ifdef USE_GNOME_DOCS
|
|
|
|
/**
|
|
* xslDbgShellPrintTemplateNames:
|
|
* @styleCtxt: Is valid
|
|
* @ctxt: Not used
|
|
* @arg: Not used
|
|
* @verbose: If 1 then print extra messages about templates found,
|
|
* otherwise print normal messages only
|
|
* @allFiles: If 1 then look for all templates in stylsheets found in
|
|
* @styleCtxt
|
|
* otherwise look in the stylesheet found by
|
|
* debugXSLBreak function
|
|
*
|
|
* Print out the list of template names found that match critieria
|
|
*
|
|
* Returns 1 on success,
|
|
* 0 otherwise
|
|
*/
|
|
#else
|
|
#ifdef USE_KDE_DOCS
|
|
|
|
/**
|
|
* Print out the list of template names found that match critieria
|
|
*
|
|
* @param styleCtxt Is valid
|
|
* @param ctxt Not used
|
|
* @param arg Not used
|
|
* @param verbose If 1 then print extra messages about templates found,
|
|
* otherwise print normal messages only
|
|
* @param allFiles If 1 then look for all templates in stylsheets found in
|
|
* @p styleCtxt
|
|
* otherwise look in the stylesheet found by
|
|
* debugXSLBreak function
|
|
* @returns 1 on success,
|
|
* 0 otherwise
|
|
*/
|
|
#endif
|
|
#endif
|
|
int xslDbgShellPrintTemplateNames(xsltTransformContextPtr styleCtxt,
|
|
xmlShellCtxtPtr ctxt,
|
|
xmlChar * arg, int verbose,
|
|
int allFiles);
|
|
|
|
|
|
|
|
|
|
/* -----------------------------------------
|
|
|
|
Node viewing related commands
|
|
|
|
------------------------------------------- */
|
|
|
|
|
|
#ifdef USE_GNOME_DOCS
|
|
|
|
/**
|
|
* xslDbgShellPrintList:
|
|
* @ctxt: The current shell context
|
|
* @arg: What xpath to display and in UTF-8
|
|
* @dir: If 1 print in dir mode?,
|
|
* otherwise ls mode
|
|
*
|
|
* Print list of nodes in either ls or dir format
|
|
*
|
|
* Returns 1 on success,
|
|
* 0 otherwise
|
|
*/
|
|
#else
|
|
#ifdef USE_KDE_DOCS
|
|
|
|
/**
|
|
* Print list of nodes in either ls or dir format
|
|
*
|
|
* @returns 1 on success,
|
|
* 0 otherwise
|
|
*
|
|
* @param ctxt The current shell context
|
|
* @param arg What xpath to display and in UTF-8
|
|
* @param dir If 1 print in dir mode,
|
|
* otherwise ls mode
|
|
*/
|
|
#endif
|
|
#endif
|
|
int xslDbgShellPrintList(xmlShellCtxtPtr ctxt, xmlChar * arg, int dir);
|
|
|
|
|
|
|
|
#ifdef USE_GNOME_DOCS
|
|
|
|
/**
|
|
* xslDbgShellCat:
|
|
* @styleCtxt: the current stylesheet context
|
|
* @ctxt: The current shell context
|
|
* @arg: The xpath to print and in UTF-8
|
|
*
|
|
* Print the result of an xpath expression. This can include variables
|
|
* if styleCtxt is not NULL
|
|
*
|
|
* Returns 1 on success,
|
|
* 0 otherwise
|
|
*/
|
|
#else
|
|
#ifdef USE_KDE_DOCS
|
|
|
|
/**
|
|
* Print the result of an xpath expression. This can include variables
|
|
* if styleCtxt is not NULL
|
|
*
|
|
* @returns 1 on success,
|
|
* 0 otherwise
|
|
*
|
|
* @param styleCtxt Current stylesheet context
|
|
* @param ctxt Current shell context
|
|
* @param arg The xpath to print and in UTF-8
|
|
*/
|
|
#endif
|
|
#endif
|
|
int xslDbgShellCat(xsltTransformContextPtr styleCtxt,
|
|
xmlShellCtxtPtr ctxt, xmlChar * arg);
|
|
|
|
|
|
|
|
#ifdef USE_GNOME_DOCS
|
|
|
|
/**
|
|
* xslDbgShellPrintVariable:
|
|
* @styleCtxt: The current stylesheet context
|
|
* @arg: The name of variable to look for '$' prefix is optional and in UTF-8
|
|
* @type: A valid VariableTypeEnum
|
|
*
|
|
* Print the value variable specified by args.
|
|
*
|
|
* Returns 1 on success,
|
|
* 0 otherwise
|
|
*/
|
|
#else
|
|
#ifdef USE_KDE_DOCS
|
|
|
|
/**
|
|
* Print the value variable specified by args.
|
|
*
|
|
* @returns 1 on success,
|
|
* 0 otherwise
|
|
|
|
*
|
|
* @param styleCtxt The current stylesheet context
|
|
* @param arg The name of variable to look for '$' prefix is optional and in UTF-8
|
|
* @param type Is valid VariableTypeEnum
|
|
*/
|
|
#endif
|
|
#endif
|
|
int xslDbgShellPrintVariable(xsltTransformContextPtr styleCtxt,
|
|
xmlChar * arg, VariableTypeEnum type);
|
|
|
|
|
|
/* -----------------------------------------
|
|
|
|
File related command
|
|
|
|
Implemented in file_cmds.c
|
|
------------------------------------------- */
|
|
#ifdef USE_GNOME_DOCS
|
|
|
|
/**
|
|
* xslDbgShellOutput:
|
|
* @arg : Is valid, either a local file name which will be expanded
|
|
* if needed, or a "file://" protocol URI
|
|
*
|
|
* Set the output file name to use
|
|
*
|
|
* Returns 1 on success,
|
|
* 0 otherwise
|
|
*/
|
|
#else
|
|
#ifdef USE_KDE_DOCS
|
|
|
|
/**
|
|
* xslDbgShellOutput:
|
|
* @arg : Is valid, either a local file name which will be expanded
|
|
* if needed, or a "file://" protocol URI
|
|
*
|
|
* Set the output file name to use
|
|
*
|
|
* Returns 1 on success,
|
|
* 0 otherwise
|
|
*/
|
|
#endif
|
|
#endif
|
|
int xslDbgShellOutput(const xmlChar *arg);
|
|
|
|
|
|
|
|
|
|
#ifdef USE_GNOME_DOCS
|
|
|
|
/**
|
|
* xslDbgEntities:
|
|
*
|
|
* Print list of entites found
|
|
*
|
|
* Returns 1 on sucess,
|
|
* 0 otherwise
|
|
*/
|
|
#else
|
|
#ifdef USE_KDE_DOCS
|
|
|
|
#endif
|
|
#endif
|
|
int xslDbgEntities(void);
|
|
|
|
|
|
#ifdef USE_GNOME_DOCS
|
|
|
|
/**
|
|
* xslDbgSystem:
|
|
* @arg : Is valid in UTF-8
|
|
*
|
|
* Print what a system file @arg maps to via the current xml catalog
|
|
*
|
|
* Returns 1 on sucess,
|
|
* 0 otherwise
|
|
*/
|
|
#else
|
|
#ifdef USE_KDE_DOCS
|
|
|
|
/**
|
|
* Print what a system file @p arg maps to via the current xml catalog
|
|
*
|
|
* @param arg Is valid in UTF-8
|
|
*
|
|
* @returns 1 on sucess,
|
|
* 0 otherwise
|
|
*/
|
|
#endif
|
|
#endif
|
|
int xslDbgSystem(const xmlChar * arg);
|
|
|
|
|
|
#ifdef USE_GNOME_DOCS
|
|
|
|
/**
|
|
* xslDbgPublic:
|
|
* @arg : Is valid PublicID in UTF-8
|
|
*
|
|
* Print what a public ID @arg maps to via the current xml catalog
|
|
*
|
|
* Returns 1 on sucess,
|
|
* 0 otherwise
|
|
*/
|
|
#else
|
|
#ifdef USE_KDE_DOCS
|
|
|
|
/**
|
|
* Print what a public ID @p arg maps to via the current xml catalog
|
|
*
|
|
* @param arg Is valid PublicID in UTF-8
|
|
*
|
|
* @returns 1 on sucess,
|
|
* 0 otherwise
|
|
*/
|
|
#endif
|
|
#endif
|
|
int xslDbgPublic(const xmlChar * arg);
|
|
|
|
|
|
#ifdef USE_GNOME_DOCS
|
|
|
|
/**
|
|
* xslDbgEncoding:
|
|
* @arg: Is valid encoding supported by libxml2
|
|
*
|
|
* Set current encoding to use for output to standard output
|
|
*
|
|
* Returns 1 on sucess,
|
|
* 0 otherwise
|
|
*/
|
|
#else
|
|
#ifdef USE_KDE_DOCS
|
|
|
|
/**
|
|
* Set current encoding to use for output to standard output
|
|
*
|
|
* @param arg Is valid encoding supported by libxml2
|
|
*
|
|
*
|
|
* Returns 1 on sucess,
|
|
*/
|
|
#endif
|
|
#endif
|
|
int xslDbgEncoding(xmlChar * arg);
|
|
|
|
/* -----------------------------------------
|
|
|
|
Operating system related commands
|
|
|
|
Implemented in os_cmds.c
|
|
------------------------------------------- */
|
|
|
|
|
|
#ifdef USE_GNOME_DOCS
|
|
|
|
/**
|
|
* xslDbgShellChangeWd:
|
|
* @path: The path to change to and in UTF-8
|
|
*
|
|
* Change the current working directory of the operating system
|
|
*
|
|
* Returns 1 if able to change xsldbg's working directory to @path
|
|
* 0 otherwise
|
|
*/
|
|
#else
|
|
#ifdef USE_KDE_DOCS
|
|
|
|
/**
|
|
* @returns 1 if able to change xsldbg working direcorty to @p path
|
|
* 0 otherwise
|
|
*
|
|
* @param path Operating system path(directory) to change to and in UTF-8
|
|
*/
|
|
#endif
|
|
#endif
|
|
int xslDbgShellChangeWd(xmlChar * path);
|
|
|
|
|
|
|
|
#ifdef USE_GNOME_DOCS
|
|
|
|
/**
|
|
* xslDbgShellExecute:
|
|
* @name: The name of command string to be executed by operating system shell
|
|
* @verbose: If 1 then print extra debugging messages,
|
|
* normal messages otherwise
|
|
*
|
|
* Execute an operating system command
|
|
*
|
|
* Returns 1 on success,
|
|
* 0 otherwise
|
|
*/
|
|
#else
|
|
#ifdef USE_KDE_DOCS
|
|
|
|
/**
|
|
* @returns 1 if able to execute command @p name,
|
|
* 0 otherwise
|
|
*
|
|
* @param name The name of command string to be executed
|
|
* by operating system shell
|
|
* @param verbose If 1 then print extra debugging messages,
|
|
* normal messages otherwise
|
|
*/
|
|
#endif
|
|
#endif
|
|
int xslDbgShellExecute(xmlChar * name, int verbose);
|
|
|
|
|
|
|
|
|
|
/* -----------------------------------------
|
|
|
|
libxslt parameter related commands
|
|
|
|
Implemented in param_cmds.c
|
|
------------------------------------------- */
|
|
|
|
|
|
#ifdef USE_GNOME_DOCS
|
|
|
|
/**
|
|
* xslDbgShellAddParam:
|
|
* @arg: A string comprised of two words separated by
|
|
* one or more spaces which are in UTF-8.
|
|
*
|
|
* Add a libxslt parameter to be sent to libxslt later on
|
|
*
|
|
* Returns 1 on success,
|
|
* 0 otherwise
|
|
*/
|
|
#else
|
|
#ifdef USE_KDE_DOCS
|
|
|
|
/*
|
|
* Add a parameter to be sent to libxslt later on
|
|
*
|
|
* @returns 1 on success,
|
|
* 0 otherwise
|
|
*
|
|
* @param arg A string comprised of two words separated by
|
|
* one or more spaces which are in UTF-8
|
|
*/
|
|
#endif
|
|
#endif
|
|
int xslDbgShellAddParam(xmlChar * arg);
|
|
|
|
|
|
|
|
#ifdef USE_GNOME_DOCS
|
|
|
|
/**
|
|
* xslDbgShellDelParam:
|
|
* @arg: A single white space trimmed parameter number to look for
|
|
*
|
|
* Delete a libxslt parameter that was to be sent to libxslt later on
|
|
*
|
|
* Returns 1 if able to delete parameter @name,
|
|
* 0 otherwise
|
|
*/
|
|
#else
|
|
#ifdef USE_KDE_DOCS
|
|
|
|
/**
|
|
* Delete a libxslt parameter that was to be sent to libxslt later on
|
|
*
|
|
* @returns 1 if able to delete parameter @p name,
|
|
* 0 otherwise
|
|
*
|
|
* @param arg A single white space trimmed libxslt parameter number to look for
|
|
*/
|
|
#endif
|
|
#endif
|
|
int xslDbgShellDelParam(xmlChar * arg);
|
|
|
|
|
|
|
|
#ifdef USE_GNOME_DOCS
|
|
|
|
/**
|
|
* xslDbgShellShowParam:
|
|
* @arg: Not used
|
|
*
|
|
* Print list of current paramters
|
|
*
|
|
* Returns 1 on success,
|
|
* 0 otherwise
|
|
*/
|
|
#else
|
|
#ifdef USE_KDE_DOCS
|
|
|
|
/**
|
|
* Print list of current paramters
|
|
*
|
|
* @returns 1 on success,
|
|
* 0 otherwise
|
|
*
|
|
* @param arg Not used
|
|
*/
|
|
#endif
|
|
#endif
|
|
int xslDbgShellShowParam(xmlChar * arg);
|
|
|
|
|
|
/* -----------------------------------------
|
|
*
|
|
* Option related commands
|
|
*
|
|
* Implemented in option_cmds.c
|
|
*
|
|
* ------------------------------------------- */
|
|
|
|
#ifdef USE_GNOME_DOCS
|
|
|
|
/**
|
|
* xslDbgShellSetOption:
|
|
* @arg: Is valid, and in the format <NAME> <VALUE>
|
|
*
|
|
* Set the value of an option
|
|
*
|
|
* Returns 1 on success,
|
|
* 0 otherwise
|
|
*/
|
|
#else
|
|
#ifdef USE_KDE_DOCS
|
|
|
|
/**
|
|
* Set the value of an option
|
|
*
|
|
* @returns 1 on success,
|
|
* 0 otherwise
|
|
*
|
|
* @param arg is valid, and in format <NAME> <VALUE>
|
|
*
|
|
*/
|
|
#endif
|
|
#endif
|
|
int xslDbgShellSetOption(xmlChar * arg);
|
|
|
|
|
|
#ifdef USE_GNOME_DOCS
|
|
|
|
/**
|
|
* xslDbgShellOptions:
|
|
*
|
|
* Prints out values for user options
|
|
*
|
|
* Returns 1 on success,
|
|
* 0 otherwise
|
|
*/
|
|
#else
|
|
#ifdef USE_KDE_DOCS
|
|
|
|
/**
|
|
* Prints out values for user options
|
|
*
|
|
* @returns 1 on success,
|
|
* 0 otherwise
|
|
*/
|
|
#endif
|
|
#endif
|
|
int xslDbgShellOptions(void);
|
|
|
|
|
|
/**
|
|
* xslDbgShellShowWatches:
|
|
* @styleCtxt: the current stylesheet context
|
|
* @ctxt: The current shell context
|
|
* @showWarnings : If 1 then showWarning messages,
|
|
* otherwise do not show warning messages
|
|
*
|
|
* Print the current watches and their values
|
|
*
|
|
* Returns 1 on success,
|
|
* 0 otherwise
|
|
*/
|
|
int xslDbgShellShowWatches(xsltTransformContextPtr styleCtxt,
|
|
xmlShellCtxtPtr ctx,int showWarnings);
|
|
|
|
/**
|
|
* xslDbgShellAddWatch:
|
|
* @arg : A valid xPath of expression to watch the value of
|
|
*
|
|
* Add expression to list of expressions to watch value of
|
|
*
|
|
* Returns 1 on success,
|
|
* 0 otherwise
|
|
*/
|
|
int xslDbgShellAddWatch(xmlChar* arg);
|
|
|
|
/**
|
|
* xslDbgShellDeleteWatch:
|
|
* @arg : A watch ID to remove
|
|
*
|
|
* Delete a given watch ID from our list of expressions to watch
|
|
*
|
|
* Returns 1 on success,
|
|
* 0 otherwise
|
|
*/
|
|
int xslDbgShellDeleteWatch(xmlChar* arg);
|
|
|
|
|
|
/* -----------------------------------------
|
|
*
|
|
* Tracing, walking related commands
|
|
*
|
|
* Implemented in shell.c
|
|
*
|
|
* ------------------------------------------- */
|
|
|
|
|
|
#ifdef USE_GNOME_DOCS
|
|
|
|
/**
|
|
* xslDbgShellTrace:
|
|
* @arg: Not used
|
|
*
|
|
* Start the tracing of the stylesheet. First need to restart it.
|
|
*
|
|
* Returns 1 on success,
|
|
* 0 otherwise
|
|
*/
|
|
#else
|
|
#ifdef USE_KDE_DOCS
|
|
|
|
/**
|
|
* Start the tracing of the stylesheet. First need to restart it.
|
|
*
|
|
* @returns 1 on success,
|
|
* 0 otherwise
|
|
*
|
|
* @param arg Not used
|
|
*/
|
|
#endif
|
|
#endif
|
|
int xslDbgShellTrace(xmlChar * arg);
|
|
|
|
|
|
|
|
#ifdef USE_GNOME_DOCS
|
|
|
|
/**
|
|
* xslDbgShellWalk:
|
|
* @arg: An interger between 0 and 9 indicate the speed of walk
|
|
*
|
|
* Start walking through the stylesheet.
|
|
*
|
|
* Returns 1 on success,
|
|
* 0 otherwise
|
|
*/
|
|
#else
|
|
#ifdef USE_KDE_DOCS
|
|
|
|
/**
|
|
* Start walking through the stylesheet.
|
|
*
|
|
* @returns 1 on success,
|
|
* 0 otherwise
|
|
*
|
|
* @param arg An interger between 0 and 9 indicate the speed of walk
|
|
*/
|
|
#endif
|
|
#endif
|
|
int xslDbgShellWalk(xmlChar * arg);
|
|
|
|
|
|
|
|
/* -----------------------------------------
|
|
*
|
|
* Seach related commands
|
|
*
|
|
* Implemented in search_cmds.c
|
|
* ------------------------------------------- */
|
|
|
|
|
|
#ifdef USE_GNOME_DOCS
|
|
|
|
/**
|
|
* xslDbgShellSearch:
|
|
* @styleCtxt: Is valid
|
|
* @style: Is valid
|
|
* @arg: The xpath query to use for searching dataBase
|
|
*
|
|
* Displays the result of performing a query on the search dataBase
|
|
*
|
|
* Returns 1 if able to run query with @arg,
|
|
* 0 otherwise
|
|
*/
|
|
#else
|
|
#ifdef USE_KDE_DOCS
|
|
|
|
/**
|
|
* @returns 1 if able to run query with @p arg,
|
|
* 0 otherwise
|
|
*
|
|
* @param styleCtxt Is valid
|
|
* @param style Is valid
|
|
* @param arg The xpath query to use for searching dataBase
|
|
*/
|
|
#endif
|
|
#endif
|
|
int xslDbgShellSearch(xsltTransformContextPtr styleCtxt,
|
|
xsltStylesheetPtr style, xmlChar * arg);
|
|
|
|
|
|
/* -----------------------------------------
|
|
|
|
Seach related commands
|
|
|
|
Implemented in variable_cmds.c
|
|
------------------------------------------- */
|
|
|
|
#ifdef USE_GNOME_DOCS
|
|
|
|
/**
|
|
* xslDbgShellSetVariable:
|
|
* @styleCtxt : Is valid
|
|
* @arg : Is valid must be in the format of
|
|
* <VARIABLE_NAME> <XPATH>
|
|
*
|
|
* Change the value of a global or local variable
|
|
*
|
|
* Returns 1 on success,
|
|
* 0 otherwise
|
|
*/
|
|
#else
|
|
#ifdef USE_KDE_DOCS
|
|
|
|
/**
|
|
* Change the value of a global or local variable
|
|
*
|
|
* @param styleCtxt Is valid
|
|
* @param arg Is valid must be in the format of
|
|
* <VARIABLE_NAME> <XPATH>
|
|
*
|
|
* @returns 1 on success,
|
|
* 0 otherwise
|
|
*/
|
|
#endif
|
|
#endif
|
|
|
|
int xslDbgShellSetVariable(xsltTransformContextPtr styleCtxt,
|
|
xmlChar * arg);
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
#endif
|
|
/* __DEBUG_XSL__ */
|