root/third_party/libxslt/libxslt/imports.h

/* [<][>][^][v][top][bottom][index][help] */

INCLUDED FROM


/*
 * Summary: interface for the XSLT import support
 * Description: macros and fuctions needed to implement and
 *              access the import tree
 *
 * Copy: See Copyright for the status of this software.
 *
 * Author: Daniel Veillard
 */

#ifndef __XML_XSLT_IMPORTS_H__
#define __XML_XSLT_IMPORTS_H__

#include <libxml/tree.h>
#include "xsltexports.h"
#include "xsltInternals.h"

#ifdef __cplusplus
extern "C" {
#endif

/**
 * XSLT_GET_IMPORT_PTR:
 *
 * A macro to import pointers from the stylesheet cascading order.
 */
#define XSLT_GET_IMPORT_PTR(res, style, name) {                 \
    xsltStylesheetPtr st = style;                               \
    res = NULL;                                                 \
    while (st != NULL) {                                        \
        if (st->name != NULL) { res = st->name; break; }        \
        st = xsltNextImport(st);                                \
    }}

/**
 * XSLT_GET_IMPORT_INT:
 *
 * A macro to import intergers from the stylesheet cascading order.
 */
#define XSLT_GET_IMPORT_INT(res, style, name) {                 \
    xsltStylesheetPtr st = style;                               \
    res = -1;                                                   \
    while (st != NULL) {                                        \
        if (st->name != -1) { res = st->name; break; }  \
        st = xsltNextImport(st);                                \
    }}

/*
 * Module interfaces
 */
XSLTPUBFUN int XSLTCALL                 
                        xsltParseStylesheetImport(xsltStylesheetPtr style,
                                                  xmlNodePtr cur);
XSLTPUBFUN int XSLTCALL                 
                        xsltParseStylesheetInclude
                                                 (xsltStylesheetPtr style,
                                                  xmlNodePtr cur);
XSLTPUBFUN xsltStylesheetPtr XSLTCALL   
                        xsltNextImport           (xsltStylesheetPtr style);
XSLTPUBFUN int XSLTCALL                 
                        xsltNeedElemSpaceHandling(xsltTransformContextPtr ctxt);
XSLTPUBFUN int XSLTCALL                 
                        xsltFindElemSpaceHandling(xsltTransformContextPtr ctxt,
                                                  xmlNodePtr node);
XSLTPUBFUN xsltTemplatePtr XSLTCALL             
                        xsltFindTemplate         (xsltTransformContextPtr ctxt,
                                                  const xmlChar *name,
                                                  const xmlChar *nameURI);

#ifdef __cplusplus
}
#endif

#endif /* __XML_XSLT_IMPORTS_H__ */


/* [<][>][^][v][top][bottom][index][help] */