46#define XSLT_WIN32_PERFORMANCE_COUNTER
87 if (nameSpace ==
NULL)
90 if (
node->type == XML_NAMESPACE_DECL)
92 if (
node->type == XML_ELEMENT_NODE)
93 prop =
node->properties;
96 while (prop !=
NULL) {
105 ((prop->ns !=
NULL) &&
108 tmp = xmlNodeListGetString(
node->doc, prop->children, 1);
126 if (doc->intSubset !=
NULL) {
127 xmlAttributePtr attrDecl;
130 if ((attrDecl ==
NULL) && (doc->extSubset !=
NULL))
133 if ((attrDecl !=
NULL) && (attrDecl->prefix !=
NULL)) {
137 ns = xmlSearchNs(doc,
node, attrDecl->prefix);
140 attrDecl->defaultValue, -1));
174 if (nameSpace ==
NULL)
177 if (
node->type == XML_NAMESPACE_DECL)
179 if (
node->type == XML_ELEMENT_NODE)
180 prop =
node->properties;
192 while (prop !=
NULL) {
201 ((prop->ns !=
NULL) &&
205 ret = xmlNodeListGetString(
node->doc, prop->children, 1);
218 if (doc->intSubset !=
NULL) {
219 xmlAttributePtr attrDecl;
222 if ((attrDecl ==
NULL) && (doc->extSubset !=
NULL))
225 if ((attrDecl !=
NULL) && (attrDecl->prefix !=
NULL)) {
229 ns = xmlSearchNs(doc,
node, attrDecl->prefix);
231 return(
xmlStrdup(attrDecl->defaultValue));
265 if ((utf[1] & 0xc0) != 0x80)
267 if ((
c & 0xe0) == 0xe0) {
270 if ((utf[2] & 0xc0) != 0x80)
272 if ((
c & 0xf0) == 0xf0) {
275 if ((
c & 0xf8) != 0xf0 || (utf[3] & 0xc0) != 0x80)
279 c = (utf[0] & 0x7) << 18;
280 c |= (utf[1] & 0x3f) << 12;
281 c |= (utf[2] & 0x3f) << 6;
286 c = (utf[0] & 0xf) << 12;
287 c |= (utf[1] & 0x3f) << 6;
293 c = (utf[0] & 0x1f) << 6;
329 if ((utf[1] & 0xc0) != 0x80)
331 if ((
c & 0xe0) == 0xe0) {
332 if ((utf[2] & 0xc0) != 0x80)
334 if ((
c & 0xf0) == 0xf0) {
335 if ((
c & 0xf8) != 0xf0 || (utf[3] & 0xc0) != 0x80)
339 c = (utf[0] & 0x7) << 18;
340 c |= (utf[1] & 0x3f) << 12;
341 c |= (utf[2] & 0x3f) << 6;
346 c = (utf[0] & 0xf) << 12;
347 c |= (utf[1] & 0x3f) << 6;
353 c = (utf[0] & 0x1f) << 6;
368#ifdef XSLT_REFACTORED
382xsltPointerListAddSize(xsltPointerListPtr
list,
387 if (initialSize <= 0)
390 initialSize *
sizeof(
void *));
393 "xsltPointerListAddSize: memory allocation failure.\n");
404 "xsltPointerListAddSize: memory re-allocation failure.\n");
422xsltPointerListCreate(
int initialSize)
424 xsltPointerListPtr
ret;
429 "xsltPointerListCreate: memory allocation failure.\n");
433 if (initialSize > 0) {
434 xsltPointerListAddSize(
ret,
NULL, initialSize);
448xsltPointerListFree(xsltPointerListPtr
list)
465xsltPointerListClear(xsltPointerListPtr
list)
498 if ((ctxt ==
NULL) || (inst ==
NULL))
506 prop = xmlGetNsProp(inst, (
const xmlChar *)
"terminate",
NULL);
514 "xsl:message : terminate expecting 'yes' or 'no'\n");
537#define XSLT_GET_VAR_STR(msg, str) { \
543 str = (char *) xmlMalloc(150); \
549 while (size < 64000) { \
551 chars = vsnprintf(str, size, msg, ap); \
553 if ((chars > -1) && (chars < size)) \
559 if ((larger = (char *) xmlRealloc(str, size)) == NULL) {\
672 const char *
type =
"error";
688 if ((
node->type == XML_DOCUMENT_NODE) ||
689 (
node->type == XML_HTML_DOCUMENT_NODE)) {
690 xmlDocPtr doc = (xmlDocPtr)
node;
703 type =
"runtime error";
705#ifdef XSLT_REFACTORED
706 if (XSLT_CCTXT(
style)->errSeverity == XSLT_ERROR_SEVERITY_WARNING)
707 type =
"compilation warning";
709 type =
"compilation error";
711 type =
"compilation error";
716 error(errctx,
"%s: file %s line %d element %s\n",
765 const char *
msg, ...) {
846 if ((qname ==
NULL) || (*qname == 0))
850 "QName: no element for namespace lookup %s\n",
865 while ((qname[
len] != 0) && (qname[
len] !=
':'))
874 if ((qname[0] ==
'x') && (qname[1] ==
'm') &&
875 (qname[2] ==
'l') && (qname[3] ==
':')) {
880 return(XML_XML_NAMESPACE);
887 "%s:%s : no namespace bound to prefix %s\n",
888 qname, &qname[
len + 1], qname);
920 if ((qname ==
NULL) || (*qname == 0))
924 "QName: no element for namespace lookup %s\n",
934 while ((qname[
len] != 0) && (qname[
len] !=
':'))
943 if ((qname[0] ==
'x') && (qname[1] ==
'm') &&
944 (qname[2] ==
'l') && (qname[3] ==
':')) {
948 return(XML_XML_NAMESPACE);
956 "No namespace bound to prefix '%s'.\n",
961 "%s : no namespace bound to prefix %s\n",
998 for (
i = 0;
i <
len -1;
i++) {
999 for (
j =
i + 1;
j <
len;
j++) {
1000 tst = xmlXPathCmpNodes(
list->nodeTab[
i],
list->nodeTab[
j]);
1022static xmlXPathObjectPtr *
1025#ifdef XSLT_REFACTORED
1026 xsltStyleItemSortPtr comp;
1032 xmlXPathObjectPtr
res;
1037 int oldPos, oldSize ;
1039 xmlNsPtr *oldNamespaces;
1044 "xsl:sort : compilation failed\n");
1048 if ((comp->select ==
NULL) || (comp->comp ==
NULL))
1064 "xsltComputeSortResult: memory allocation failure\n");
1068 oldNode = ctxt->
node;
1069 oldInst = ctxt->
inst;
1070 oldPos = ctxt->
xpathCtxt->proximityPosition;
1073 oldNamespaces = ctxt->
xpathCtxt->namespaces;
1074 for (
i = 0;
i <
len;
i++) {
1080#ifdef XSLT_REFACTORED
1081 if (comp->inScopeNs !=
NULL) {
1082 ctxt->
xpathCtxt->namespaces = comp->inScopeNs->list;
1083 ctxt->
xpathCtxt->nsNr = comp->inScopeNs->xpathNumber;
1089 ctxt->
xpathCtxt->namespaces = comp->nsList;
1092 res = xmlXPathCompiledEval(comp->comp, ctxt->
xpathCtxt);
1094 if (
res->type != XPATH_STRING)
1095 res = xmlXPathConvertString(
res);
1097 res = xmlXPathConvertNumber(
res);
1102 if (
res->type == XPATH_NUMBER) {
1105#ifdef WITH_XSLT_DEBUG_PROCESS
1107 "xsltComputeSortResult: select didn't evaluate to a number\n");
1112 if (
res->type == XPATH_STRING) {
1117 if (sortKey ==
NULL) {
1119 "xsltComputeSortResult: sort key is null\n");
1121 res->stringval = sortKey;
1128#ifdef WITH_XSLT_DEBUG_PROCESS
1130 "xsltComputeSortResult: select didn't evaluate to a string\n");
1140 ctxt->
node = oldNode;
1141 ctxt->
inst = oldInst;
1143 ctxt->
xpathCtxt->proximityPosition = oldPos;
1145 ctxt->
xpathCtxt->namespaces = oldNamespaces;
1183#ifdef XSLT_REFACTORED
1184 xsltStyleItemSortPtr comp;
1196 xmlXPathObjectPtr tmp;
1200 if ((ctxt ==
NULL) || (sorts ==
NULL) || (nbsorts <= 0) ||
1203 if (sorts[0] ==
NULL)
1205 comp = sorts[0]->psvi;
1213 for (
j = 0;
j < nbsorts;
j++) {
1216 comp = sorts[
j]->psvi;
1217 if ((comp->stype ==
NULL) && (comp->has_stype != 0)) {
1229 "xsltDoSortFunction: no support for data-type = %s\n",
1237 if ((comp->order ==
NULL) && (comp->has_order != 0)) {
1248 "xsltDoSortFunction: invalid value %s for order\n",
1254 desc[
j] = comp->descending;
1256 if ((comp->lang ==
NULL) && (comp->has_lang != 0)) {
1265 if (
lang != comp->lang)
1277 resultsTab[
i] =
NULL;
1281 comp = sorts[0]->psvi;
1286 for (incr =
len / 2; incr > 0; incr /= 2) {
1287 for (
i = incr;
i <
len;
i++) {
1299 if (xmlXPathIsNaN(
results[
j]->floatval)) {
1300 if (xmlXPathIsNaN(
results[
j + incr]->floatval))
1304 }
else if (xmlXPathIsNaN(
results[
j + incr]->floatval))
1325 while (
depth < nbsorts) {
1328 comp = sorts[
depth]->psvi;
1354 if (xmlXPathIsNaN(
res[
j]->floatval)) {
1355 if (xmlXPathIsNaN(
res[
j +
1360 }
else if (xmlXPathIsNaN(
res[
j + incr]->
1363 else if (
res[
j]->floatval ==
res[
j + incr]->
1366 else if (
res[
j]->floatval >
1367 res[
j + incr]->floatval)
1372 res[
j + incr]->stringval);
1398 while (
depth < nbsorts) {
1406 res[
j + incr] = tmp;
1417 for (
j = 0;
j < nbsorts;
j++) {
1421 if (resultsTab[
j] !=
NULL) {
1423 xmlXPathFreeObject(resultsTab[
j][
i]);
1451 (ctxt->
sortfunc)(ctxt, sorts, nbsorts);
1574 ((
result->children->type == XML_DTD_NODE) &&
1582 "xsltSaveResultTo : unknown output method\n");
1597 if (encoding !=
NULL) {
1604 htmlDocContentDumpFormatOutput(
buf,
result, (
const char *) encoding,
1606 xmlOutputBufferFlush(
buf);
1609 if (encoding !=
NULL) {
1614 htmlDocContentDumpOutput(
buf,
result, (
const char *) encoding);
1615 xmlOutputBufferFlush(
buf);
1622 if (
cur->type == XML_TEXT_NODE)
1623 xmlOutputBufferWriteString(
buf, (
const char *)
cur->content);
1629 if ((
cur->children->type != XML_ENTITY_DECL) &&
1630 (
cur->children->type != XML_ENTITY_REF_NODE) &&
1631 (
cur->children->type != XML_ENTITY_NODE)) {
1645 if (
cur == (xmlNodePtr)
style->doc) {
1655 xmlOutputBufferFlush(
buf);
1663 if (omitXmlDecl != 1) {
1664 xmlOutputBufferWriteString(
buf,
"<?xml version=");
1666 xmlOutputBufferWriteString(
buf,
"\"");
1667 xmlOutputBufferWriteString(
buf, (
const char *)
result->version);
1668 xmlOutputBufferWriteString(
buf,
"\"");
1670 xmlOutputBufferWriteString(
buf,
"\"1.0\"");
1671 if (encoding ==
NULL) {
1673 encoding =
result->encoding;
1679 if (encoding !=
NULL) {
1680 xmlOutputBufferWriteString(
buf,
" encoding=");
1681 xmlOutputBufferWriteString(
buf,
"\"");
1682 xmlOutputBufferWriteString(
buf, (
const char *) encoding);
1683 xmlOutputBufferWriteString(
buf,
"\"");
1685 switch (standalone) {
1687 xmlOutputBufferWriteString(
buf,
" standalone=\"no\"");
1690 xmlOutputBufferWriteString(
buf,
" standalone=\"yes\"");
1695 xmlOutputBufferWriteString(
buf,
"?>\n");
1698 xmlNodePtr children =
result->children;
1699 xmlNodePtr
child = children;
1710 (
const char *) encoding);
1712 ((
child->type == XML_COMMENT_NODE) &&
1714 xmlOutputBufferWriteString(
buf,
"\n");
1718 xmlOutputBufferWriteString(
buf,
"\n");
1720 result->children = children;
1722 xmlOutputBufferFlush(
buf);
1742 xmlOutputBufferPtr
buf;
1752 if (encoding !=
NULL) {
1766 ret = xmlOutputBufferClose(
buf);
1784 xmlOutputBufferPtr
buf;
1794 if (encoding !=
NULL) {
1809 ret = xmlOutputBufferClose(
buf);
1827 xmlOutputBufferPtr
buf;
1837 if (encoding !=
NULL) {
1846 buf = xmlOutputBufferCreateFd(
fd,
NULL);
1851 ret = xmlOutputBufferClose(
buf);
1870 xmlOutputBufferPtr
buf;
1873 *doc_txt_ptr =
NULL;
1879 if (encoding !=
NULL) {
1890 buf = xmlAllocOutputBuffer(
NULL);
1895#ifdef LIBXML2_NEW_BUFFER
1905 *doc_txt_len =
buf->conv->use;
1906 *doc_txt_ptr =
xmlStrndup(
buf->conv->content, *doc_txt_len);
1908 *doc_txt_len =
buf->buffer->use;
1909 *doc_txt_ptr =
xmlStrndup(
buf->buffer->content, *doc_txt_len);
1912 (
void)xmlOutputBufferClose(
buf);
1931 switch (
node->type) {
1932 case XML_DOCUMENT_NODE:
1933 case XML_HTML_DOCUMENT_NODE:
1934 return ((xmlDocPtr)
node)->properties >> 27;
1936 case XML_ATTRIBUTE_NODE:
1937 return ((xmlAttrPtr)
node)->atype >> 27;
1939 case XML_ELEMENT_NODE:
1941 case XML_CDATA_SECTION_NODE:
1943 case XML_COMMENT_NODE:
1944 return node->extra >> 12;
1966 switch (
node->type) {
1967 case XML_DOCUMENT_NODE:
1968 case XML_HTML_DOCUMENT_NODE:
1969 ((xmlDocPtr)
node)->properties |=
flags << 27;
1972 case XML_ATTRIBUTE_NODE:
1973 ((xmlAttrPtr)
node)->atype |=
flags << 27;
1976 case XML_ELEMENT_NODE:
1978 case XML_CDATA_SECTION_NODE:
1980 case XML_COMMENT_NODE:
2000 switch (
node->type) {
2001 case XML_DOCUMENT_NODE:
2002 case XML_HTML_DOCUMENT_NODE:
2003 ((xmlDocPtr)
node)->properties &= ~(
flags << 27);
2006 case XML_ATTRIBUTE_NODE:
2007 ((xmlAttrPtr)
node)->atype &= ~(
flags << 27);
2010 case XML_ELEMENT_NODE:
2012 case XML_CDATA_SECTION_NODE:
2014 case XML_COMMENT_NODE:
2031 switch (
cur->type) {
2032 case XML_DOCUMENT_NODE:
2033 case XML_HTML_DOCUMENT_NODE:
2034 return &((xmlDocPtr)
cur)->psvi;
2036 case XML_ATTRIBUTE_NODE:
2037 return &((xmlAttrPtr)
cur)->psvi;
2039 case XML_ELEMENT_NODE:
2041 case XML_CDATA_SECTION_NODE:
2043 case XML_COMMENT_NODE:
2059static long calibration = -1;
2069#if !defined(XSLT_WIN32_PERFORMANCE_COUNTER) && \
2070 (defined(HAVE_CLOCK_GETTIME) || defined(HAVE_GETTIMEOFDAY))
2072xsltCalibrateTimestamps(
void) {
2075 for (
i = 0;
i < 999;
i++)
2077 return(xsltTimestamp() / 1000);
2088xsltCalibrateAdjust(
long delta) {
2089 calibration += delta;
2103#ifdef XSLT_WIN32_PERFORMANCE_COUNTER
2109 static LONGLONG startupQuadCount = 0;
2110 static LONGLONG startupQuadFreq = 0;
2115 quadCount = performanceCount.
QuadPart;
2116 if (calibration < 0) {
2121 startupQuadFreq = performanceFrequency.
QuadPart;
2122 startupQuadCount = quadCount;
2125 if (startupQuadFreq == 0)
2127 seconds = (quadCount - startupQuadCount) / (
double) startupQuadFreq;
2131#ifdef HAVE_CLOCK_GETTIME
2132# if defined(CLOCK_MONOTONIC)
2133# define XSLT_CLOCK CLOCK_MONOTONIC
2134# elif defined(CLOCK_HIGHRES)
2135# define XSLT_CLOCK CLOCK_HIGHRES
2137# define XSLT_CLOCK CLOCK_REALTIME
2143 if (calibration < 0) {
2144 clock_gettime(XSLT_CLOCK, &
startup);
2146 calibration = xsltCalibrateTimestamps();
2147 clock_gettime(XSLT_CLOCK, &
startup);
2151 clock_gettime(XSLT_CLOCK, &
cur);
2156 tics -= calibration;
2159#elif HAVE_GETTIMEOFDAY
2164 if (calibration < 0) {
2167 calibration = xsltCalibrateTimestamps();
2177 tics -= calibration;
2191 static char dst[1001];
2197 for(;
src[
j]==
' ';
j++);
2200 if(i<998 && templ->
mode) {
2213#define MAX_TEMPLATES 10000
2227 unsigned long totalt;
2233 if ((output ==
NULL) || (ctxt ==
NULL))
2246 templ1 =
style->templates;
2247 while (templ1 !=
NULL) {
2253 templ1 = templ1->
next;
2259 for (
i = 0;
i < nb -1;
i++) {
2260 for (
j =
i + 1;
j < nb;
j++) {
2274 fprintf(output,
"%6s%20s%20s%10s Calls Tot 100us Avg\n\n",
2275 "number",
"match",
"name",
"mode");
2278 for (
i = 0;
i < nb;
i++) {
2309 totalt += templ1->
time;
2311 fprintf(output,
"\n%30s%26s %6d %6ld\n",
"Total",
"",
total, totalt);
2316 childt =
xmlMalloc((nb + 1) *
sizeof(
int));
2321 for (
i = 0;
i < nb;
i++) {
2325 for (
k = 0;
k < nb;
k++) {
2329 childt[
i] +=templ2->
time;
2336 fprintf(output,
"\nindex %% time self children called name\n");
2338 for (
i = 0;
i < nb;
i++) {
2339 char ix_str[20], timep_str[20], times_str[20], timec_str[20], called_str[20];
2346 for (
k = 0;
k < nb;
k++) {
2350 t=templ2?templ2->
time:totalt;
2353 snprintf(called_str,
sizeof(called_str),
"%6d/%d",
2357 fprintf(output,
" %-8s %-8s %-12s %s [%d]\n",
2358 times_str,timec_str,called_str,
2359 (templ2?(templ2->
name?(
char *)templ2->
name:pretty_templ_match(templ2)):
"-"),
k);
2362 snprintf(ix_str,
sizeof(ix_str),
"[%d]",
i);
2363 snprintf(timep_str,
sizeof(timep_str),
"%6.2f",(
float)templ1->
time*100.0/totalt);
2366 fprintf(output,
"%-5s %-6s %-8s %-8s %6d %s [%d]\n",
2367 ix_str, timep_str,times_str,timec_str,
2369 templ1->
name?(
char *)templ1->
name:pretty_templ_match(templ1),
i);
2375 for (
k = 0;
k < nb;
k++) {
2383 for (
k = 0;
k < nb;
k++) {
2389 snprintf(called_str,
sizeof(called_str),
"%6d/%d",
2392 fprintf(output,
" %-8s %-8s %-12s %s [%d]\n",
2393 times_str,timec_str,called_str,
2394 templ2->
name?(
char *)templ2->
name:pretty_templ_match(templ2),
k);
2398 fprintf(output,
"-----------------------------------------------\n");
2401 fprintf(output,
"\f\nIndex by function name\n");
2402 for (
i = 0;
i < nb;
i++) {
2404 fprintf(output,
"[%d] %s (%s:%d)\n",
2405 i, templ1->
name?(
char *)templ1->
name:pretty_templ_match(templ1),
2406 templ1->
style->doc->URL,templ1->
elem->line);
2452 int nb = 0,
max = 0,
i,
j;
2472 templ =
style->templates;
2473 while (templ !=
NULL) {
2479 templ = templ->
next;
2488 for (
i = 0;
i < nb - 1;
i++) {
2489 for (
j =
i + 1;
j < nb;
j++) {
2505 xmlDocSetRootElement(
ret,
root);
2507 for (
i = 0;
i < nb;
i++) {
2551 xmlXPathContextPtr xpathCtxt;
2552 xmlXPathCompExprPtr
ret;
2555 xpathCtxt =
style->principal->xpathCtxt;
2556 if (xpathCtxt ==
NULL)
2558 xpathCtxt->dict =
style->dict;
2560 xpathCtxt = xmlXPathNewContext(
NULL);
2561 if (xpathCtxt ==
NULL)
2564 xpathCtxt->flags =
flags;
2569 ret = xmlXPathCtxtCompile(xpathCtxt,
str);
2572 xmlXPathFreeContext(xpathCtxt);
2624#define XSLT_CALLBACK_NUMBER 3
2626typedef struct _xsltDebuggerCallbacks xsltDebuggerCallbacks;
2627typedef xsltDebuggerCallbacks *xsltDebuggerCallbacksPtr;
2628struct _xsltDebuggerCallbacks {
2634static xsltDebuggerCallbacks xsltDebuggerCurrentCallbacks = {
2647xsltSetDebuggerStatus(
int value)
2664xsltSetDebuggerCallbacks(
int no,
void *
block)
2666 xsltDebuggerCallbacksPtr callbacks;
2668 if ((
block ==
NULL) || (
no != XSLT_CALLBACK_NUMBER))
2671 callbacks = (xsltDebuggerCallbacksPtr)
block;
2672 xsltDebuggerCurrentCallbacks.handler = callbacks->handler;
2673 xsltDebuggerCurrentCallbacks.add = callbacks->add;
2674 xsltDebuggerCurrentCallbacks.drop = callbacks->drop;
2693 if (xsltDebuggerCurrentCallbacks.handler !=
NULL)
2694 xsltDebuggerCurrentCallbacks.handler(
cur,
node, templ, ctxt);
2709 if (xsltDebuggerCurrentCallbacks.add !=
NULL)
2710 return(xsltDebuggerCurrentCallbacks.add(templ,
source));
2722 if (xsltDebuggerCurrentCallbacks.drop !=
NULL)
2723 xsltDebuggerCurrentCallbacks.drop();
static struct _test_info results[8]
#define gettimeofday(tv, tz)
static void startup(void)
_In_ fcb _In_ chunk _In_ uint64_t _In_ uint64_t _In_ bool _In_opt_ void _In_opt_ PIRP _In_ LIST_ENTRY _In_ uint8_t compression
xmlChar * xmlBufContent(const xmlBuf *buf)
size_t xmlBufUse(const xmlBufPtr buf)
static const WCHAR indent[]
static WCHAR no[MAX_STRING_RESOURCE_LEN]
static void cleanup(void)
BOOL WINAPI QueryPerformanceFrequency(OUT PLARGE_INTEGER lpFrequency)
BOOL WINAPI QueryPerformanceCounter(OUT PLARGE_INTEGER lpPerformanceCount)
UINT(* handler)(MSIPACKAGE *)
void CDECL terminate(void)
int WINAPIV fprintf(FILE *file, const char *format,...)
int CDECL vfprintf(FILE *file, const char *format, va_list valist)
const char * xmlGetCharEncodingName(xmlCharEncoding enc)
xmlCharEncodingHandlerPtr xmlFindCharEncodingHandler(const char *name)
XMLPUBFUN int xmlCharEncCloseFunc(xmlCharEncodingHandler *handler)
GLint GLint GLsizei GLsizei GLsizei depth
GLuint GLuint GLsizei GLenum type
GLenum GLuint GLenum GLsizei const GLchar * buf
GLuint GLdouble GLdouble GLint GLint order
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint GLint GLint j
xsltStylesheetPtr xsltNextImport(xsltStylesheetPtr cur)
D3D11_SHADER_VARIABLE_DESC desc
static unsigned int number
__forceinline bool __cdecl add(big_integer &x, uint32_t const value)
#define XSLT_GET_IMPORT_INT(res, style, name)
#define XSLT_GET_IMPORT_PTR(res, style, name)
const xmlChar * xmlDictLookup(xmlDictPtr dict, const xmlChar *name, int len)
xmlReallocFunc xmlRealloc
struct _xsltTemplate * next
struct _xsltStylesheet * style
xsltTemplatePtr * templCalledTab
xsltNewLocaleFunc newLocale
xsltGenSortKeyFunc genSortKey
xsltFreeLocaleFunc freeLocale
xmlGenericErrorFunc error
xmlXPathContextPtr xpathCtxt
xmlDocPtr initialContextDoc
xmlChar * xsltEvalAttrValueTemplate(xsltTransformContextPtr ctxt, xmlNodePtr inst, const xmlChar *name, const xmlChar *ns)
xmlChar * xsltEvalTemplateString(xsltTransformContextPtr ctxt, xmlNodePtr contextNode, xmlNodePtr inst)
Character const *const prefix
XMLPUBFUN xmlAttributePtr xmlGetDtdAttrDesc(xmlDtdPtr dtd, const xmlChar *elem, const xmlChar *name)
static const WCHAR lang[]
void(* xmlGenericErrorFunc)(void *ctx, const char *msg,...) LIBXML_ATTR_FORMAT(2
static unsigned int block
XMLPUBFUN xmlChar * xmlStrndup(const xmlChar *cur, int len)
XMLPUBFUN int xmlStrlen(const xmlChar *str)
XMLPUBFUN int xmlStrcasecmp(const xmlChar *str1, const xmlChar *str2)
XMLPUBFUN int xmlStrcmp(const xmlChar *str1, const xmlChar *str2)
XMLPUBFUN int xmlStrEqual(const xmlChar *str1, const xmlChar *str2)
XMLPUBFUN xmlChar * xmlStrdup(const xmlChar *cur)
xmlChar *(* xsltGenSortKeyFunc)(void *locale, const xmlChar *lang)
void(* xsltSortFunc)(xsltTransformContextPtr ctxt, xmlNodePtr *sorts, int nbsorts)
void *(* xsltNewLocaleFunc)(const xmlChar *lang, int lowerFirst)
xsltStylesheet * xsltStylesheetPtr
void(* xsltFreeLocaleFunc)(void *locale)
#define LIBXSLT_ATTR_FORMAT(fmt, args)
void xsltDoSortFunction(xsltTransformContextPtr ctxt, xmlNodePtr *sorts, int nbsorts)
const xmlChar * xsltGetQNameURI(xmlNodePtr node, xmlChar **name)
void xsltTransformError(xsltTransformContextPtr ctxt, xsltStylesheetPtr style, xmlNodePtr node, const char *msg,...)
xmlXPathCompExprPtr xsltXPathCompileFlags(xsltStylesheetPtr style, const xmlChar *str, int flags)
xmlXPathObjectPtr * xsltComputeSortResult(xsltTransformContextPtr ctxt, xmlNodePtr sort)
static xmlXPathObjectPtr * xsltComputeSortResultInternal(xsltTransformContextPtr ctxt, xmlNodePtr sort, int number, void *locale)
int xsltGetDebuggerStatus(void)
xmlGenericErrorFunc xsltGenericError
void xsltDocumentSortFunction(xmlNodeSetPtr list)
void xsltSetGenericDebugFunc(void *ctx, xmlGenericErrorFunc handler)
const xmlChar * xsltGetCNsProp(xsltStylesheetPtr style, xmlNodePtr node, const xmlChar *name, const xmlChar *nameSpace)
int xsltSetSourceNodeFlags(xsltTransformContextPtr ctxt, xmlNodePtr node, int flags)
static xsltSortFunc xsltSortFunction
int xsltSaveResultToFd(int fd, xmlDocPtr result, xsltStylesheetPtr style)
int xsltClearSourceNodeFlags(xmlNodePtr node, int flags)
xmlXPathCompExprPtr xsltXPathCompile(xsltStylesheetPtr style, const xmlChar *str)
int xsltGetSourceNodeFlags(xmlNodePtr node)
int xsltSetCtxtParseOptions(xsltTransformContextPtr ctxt, int options)
xmlGenericErrorFunc xsltGenericDebug
#define XSLT_GET_VAR_STR(msg, str)
int xsltGetUTF8Char(const unsigned char *utf, int *len)
void xsltSetCtxtLocaleHandlers(xsltTransformContextPtr ctxt, xsltNewLocaleFunc newLocale, xsltFreeLocaleFunc freeLocale, xsltGenSortKeyFunc genSortKey)
void xsltDefaultSortFunction(xsltTransformContextPtr ctxt, xmlNodePtr *sorts, int nbsorts)
void ** xsltGetPSVIPtr(xmlNodePtr cur)
const xmlChar * xsltGetQNameURI2(xsltStylesheetPtr style, xmlNodePtr node, const xmlChar **name)
void xsltSetTransformErrorFunc(xsltTransformContextPtr ctxt, void *ctx, xmlGenericErrorFunc handler)
void xsltPrintErrorContext(xsltTransformContextPtr ctxt, xsltStylesheetPtr style, xmlNodePtr node)
int xsltSaveResultToString(xmlChar **doc_txt_ptr, int *doc_txt_len, xmlDocPtr result, xsltStylesheetPtr style)
int xsltGetUTF8CharZ(const unsigned char *utf, int *len)
int xsltSaveResultTo(xmlOutputBufferPtr buf, xmlDocPtr result, xsltStylesheetPtr style)
int xsltSaveResultToFilename(const char *URL, xmlDocPtr result, xsltStylesheetPtr style, int compression)
void xsltSetGenericErrorFunc(void *ctx, xmlGenericErrorFunc handler)
void * xsltGenericDebugContext
void xsltSetCtxtSortFunc(xsltTransformContextPtr ctxt, xsltSortFunc handler)
void * xsltGenericErrorContext
const xmlChar * xsltSplitQName(xmlDictPtr dict, const xmlChar *name, const xmlChar **prefix)
void xsltSetSortFunc(xsltSortFunc handler)
int xsltSaveResultToFile(FILE *file, xmlDocPtr result, xsltStylesheetPtr style)
xmlChar * xsltGetNsProp(xmlNodePtr node, const xmlChar *name, const xmlChar *nameSpace)
void xsltMessage(xsltTransformContextPtr ctxt, xmlNodePtr node, xmlNodePtr inst)
int(* xsltAddCallCallback)(xsltTemplatePtr templ, xmlNodePtr source)
void(* xsltHandleDebuggerCallback)(xmlNodePtr cur, xmlNodePtr node, xsltTemplatePtr templ, xsltTransformContextPtr ctxt)
void(* xsltDropCallCallback)(void)
#define XSLT_TIMESTAMP_TICS_PER_SEC