Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(286)

Side by Side Diff: third_party/libxslt/libxslt/xsltInternals.h

Issue 1193533007: Upgrade to libxml 2.9.2 and libxslt 1.1.28 (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: to numbered version, update readme Created 5 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 /* 1 /*
2 * Summary: internal data structures, constants and functions 2 * Summary: internal data structures, constants and functions
3 * Description: Internal data structures, constants and functions used 3 * Description: Internal data structures, constants and functions used
4 * by the XSLT engine. 4 * by the XSLT engine.
5 * They are not part of the API or ABI, i.e. they can change 5 * They are not part of the API or ABI, i.e. they can change
6 * without prior notice, use carefully. 6 * without prior notice, use carefully.
7 * 7 *
8 * Copy: See Copyright for the status of this software. 8 * Copy: See Copyright for the status of this software.
9 * 9 *
10 * Author: Daniel Veillard 10 * Author: Daniel Veillard
11 */ 11 */
12 12
13 #ifndef __XML_XSLT_INTERNALS_H__ 13 #ifndef __XML_XSLT_INTERNALS_H__
14 #define __XML_XSLT_INTERNALS_H__ 14 #define __XML_XSLT_INTERNALS_H__
(...skipping 79 matching lines...) Expand 10 before | Expand all | Expand 10 after
94 94
95 95
96 /* TODO: REMOVE: #define XSLT_REFACTORED_EXCLRESNS */ 96 /* TODO: REMOVE: #define XSLT_REFACTORED_EXCLRESNS */
97 97
98 /* TODO: REMOVE: #define XSLT_REFACTORED_NSALIAS */ 98 /* TODO: REMOVE: #define XSLT_REFACTORED_NSALIAS */
99 99
100 /** 100 /**
101 * XSLT_REFACTORED_XSLT_NSCOMP 101 * XSLT_REFACTORED_XSLT_NSCOMP
102 * 102 *
103 * Internal define to enable the pointer-comparison of 103 * Internal define to enable the pointer-comparison of
104 * namespaces of XSLT elements. 104 * namespaces of XSLT elements.
105 */ 105 */
106 /* #define XSLT_REFACTORED_XSLT_NSCOMP */ 106 /* #define XSLT_REFACTORED_XSLT_NSCOMP */
107 107
108 /** 108 /**
109 * XSLT_REFACTORED_XPATHCOMP: 109 * XSLT_REFACTORED_XPATHCOMP:
110 * 110 *
111 * Internal define to enable the optimization of the 111 * Internal define to enable the optimization of the
112 * compilation of XPath expressions. 112 * compilation of XPath expressions.
113 */ 113 */
114 #define XSLT_REFACTORED_XPATHCOMP 114 #define XSLT_REFACTORED_XPATHCOMP
(...skipping 172 matching lines...) Expand 10 before | Expand all | Expand 10 after
287 * TODO: @inheritedNsNr and @inheritedNs won't be used in the 287 * TODO: @inheritedNsNr and @inheritedNs won't be used in the
288 * refactored code. 288 * refactored code.
289 */ 289 */
290 int inheritedNsNr; /* number of inherited namespaces */ 290 int inheritedNsNr; /* number of inherited namespaces */
291 xmlNsPtr *inheritedNs;/* inherited non-excluded namespaces */ 291 xmlNsPtr *inheritedNs;/* inherited non-excluded namespaces */
292 292
293 /* Profiling informations */ 293 /* Profiling informations */
294 int nbCalls; /* the number of time the template was called */ 294 int nbCalls; /* the number of time the template was called */
295 unsigned long time; /* the time spent in this template */ 295 unsigned long time; /* the time spent in this template */
296 void *params; /* xsl:param instructions */ 296 void *params; /* xsl:param instructions */
297
298 int templNr; /* Nb of templates in the stack */
299 int templMax; /* Size of the templtes stack */
300 xsltTemplatePtr *templCalledTab; /* templates called */
301 int *templCountTab; /* .. and how often */
297 }; 302 };
298 303
299 /** 304 /**
300 * xsltDecimalFormat: 305 * xsltDecimalFormat:
301 * 306 *
302 * Data structure of decimal-format. 307 * Data structure of decimal-format.
303 */ 308 */
304 typedef struct _xsltDecimalFormat xsltDecimalFormat; 309 typedef struct _xsltDecimalFormat xsltDecimalFormat;
305 typedef xsltDecimalFormat *xsltDecimalFormatPtr; 310 typedef xsltDecimalFormat *xsltDecimalFormatPtr;
306 struct _xsltDecimalFormat { 311 struct _xsltDecimalFormat {
(...skipping 160 matching lines...) Expand 10 before | Expand all | Expand 10 after
467 * 472 *
468 * The basic structure for compiled items of the AST of the XSLT processor. 473 * The basic structure for compiled items of the AST of the XSLT processor.
469 * This structure is also intended to be extended by extension implementors. 474 * This structure is also intended to be extended by extension implementors.
470 * TODO: This is somehow not nice, since it has a "free" field, which 475 * TODO: This is somehow not nice, since it has a "free" field, which
471 * derived stylesheet-structs do not have. 476 * derived stylesheet-structs do not have.
472 */ 477 */
473 struct _xsltElemPreComp { 478 struct _xsltElemPreComp {
474 xsltElemPreCompPtr next; /* next item in the global chained 479 xsltElemPreCompPtr next; /* next item in the global chained
475 list hold by xsltStylesheet. */ 480 list hold by xsltStylesheet. */
476 xsltStyleType type; /* type of the element */ 481 xsltStyleType type; /* type of the element */
477 xsltTransformFunction func; » /* handling function */ 482 xsltTransformFunction func;»/* handling function */
478 xmlNodePtr inst; /* the node in the stylesheet's tree 483 xmlNodePtr inst; /* the node in the stylesheet's tree
479 corresponding to this item */ 484 corresponding to this item */
480 485
481 /* end of common part */ 486 /* end of common part */
482 xsltElemPreCompDeallocator free; /* the deallocator */ 487 xsltElemPreCompDeallocator free; /* the deallocator */
483 }; 488 };
484 489
485 /** 490 /**
486 * xsltStylePreComp: 491 * xsltStylePreComp:
487 * 492 *
(...skipping 11 matching lines...) Expand all
499 /* 504 /*
500 * Some pointer-list utility functions. 505 * Some pointer-list utility functions.
501 */ 506 */
502 XSLTPUBFUN xsltPointerListPtr XSLTCALL 507 XSLTPUBFUN xsltPointerListPtr XSLTCALL
503 xsltPointerListCreate (int initialSize); 508 xsltPointerListCreate (int initialSize);
504 XSLTPUBFUN void XSLTCALL 509 XSLTPUBFUN void XSLTCALL
505 xsltPointerListFree (xsltPointerListPtr list); 510 xsltPointerListFree (xsltPointerListPtr list);
506 XSLTPUBFUN void XSLTCALL 511 XSLTPUBFUN void XSLTCALL
507 xsltPointerListClear (xsltPointerListPtr list); 512 xsltPointerListClear (xsltPointerListPtr list);
508 XSLTPUBFUN int XSLTCALL 513 XSLTPUBFUN int XSLTCALL
509 » » xsltPointerListAddSize» » (xsltPointerListPtr list,» » » » » » 514 » » xsltPointerListAddSize» » (xsltPointerListPtr list,
510 void *item, 515 void *item,
511 int initialSize); 516 int initialSize);
512 517
513 /************************************************************************ 518 /************************************************************************
514 * * 519 * *
515 * Refactored structures * 520 * Refactored structures *
516 * * 521 * *
517 ************************************************************************/ 522 ************************************************************************/
518 523
519 typedef struct _xsltNsListContainer xsltNsListContainer; 524 typedef struct _xsltNsListContainer xsltNsListContainer;
520 typedef xsltNsListContainer *xsltNsListContainerPtr; 525 typedef xsltNsListContainer *xsltNsListContainerPtr;
521 struct _xsltNsListContainer { 526 struct _xsltNsListContainer {
522 xmlNsPtr *list; 527 xmlNsPtr *list;
523 int totalNumber; 528 int totalNumber;
524 int xpathNumber; 529 int xpathNumber;
525 }; 530 };
526 531
527 /** 532 /**
528 * XSLT_ITEM_COMPATIBILITY_FIELDS: 533 * XSLT_ITEM_COMPATIBILITY_FIELDS:
529 * 534 *
530 * Fields for API compatibility to the structure 535 * Fields for API compatibility to the structure
531 * _xsltElemPreComp which is used for extension functions. 536 * _xsltElemPreComp which is used for extension functions.
532 * Note that @next is used for storage; it does not reflect a next 537 * Note that @next is used for storage; it does not reflect a next
533 * sibling in the tree. 538 * sibling in the tree.
534 * TODO: Evaluate if we really need such a compatibility. 539 * TODO: Evaluate if we really need such a compatibility.
535 */ 540 */
536 #define XSLT_ITEM_COMPATIBILITY_FIELDS \ 541 #define XSLT_ITEM_COMPATIBILITY_FIELDS \
537 xsltElemPreCompPtr next;\ 542 xsltElemPreCompPtr next;\
538 xsltStyleType type;\ 543 xsltStyleType type;\
539 xsltTransformFunction func;\ 544 xsltTransformFunction func;\
540 xmlNodePtr inst; 545 xmlNodePtr inst;
541 546
542 /** 547 /**
543 * XSLT_ITEM_NAVIGATION_FIELDS: 548 * XSLT_ITEM_NAVIGATION_FIELDS:
544 * 549 *
545 * Currently empty. 550 * Currently empty.
546 * TODO: It is intended to hold navigational fields in the future. 551 * TODO: It is intended to hold navigational fields in the future.
547 */ 552 */
548 #define XSLT_ITEM_NAVIGATION_FIELDS 553 #define XSLT_ITEM_NAVIGATION_FIELDS
549 /* 554 /*
550 xsltStylePreCompPtr parent;\ 555 xsltStylePreCompPtr parent;\
551 xsltStylePreCompPtr children;\ 556 xsltStylePreCompPtr children;\
552 xsltStylePreCompPtr nextItem; 557 xsltStylePreCompPtr nextItem;
553 */ 558 */
554 559
555 /** 560 /**
556 * XSLT_ITEM_NSINSCOPE_FIELDS: 561 * XSLT_ITEM_NSINSCOPE_FIELDS:
557 * 562 *
558 * The in-scope namespaces. 563 * The in-scope namespaces.
559 */ 564 */
560 #define XSLT_ITEM_NSINSCOPE_FIELDS xsltNsListContainerPtr inScopeNs; 565 #define XSLT_ITEM_NSINSCOPE_FIELDS xsltNsListContainerPtr inScopeNs;
561 566
562 /** 567 /**
563 * XSLT_ITEM_COMMON_FIELDS: 568 * XSLT_ITEM_COMMON_FIELDS:
564 * 569 *
565 * Common fields used for all items. 570 * Common fields used for all items.
566 */ 571 */
567 #define XSLT_ITEM_COMMON_FIELDS \ 572 #define XSLT_ITEM_COMMON_FIELDS \
568 XSLT_ITEM_COMPATIBILITY_FIELDS \ 573 XSLT_ITEM_COMPATIBILITY_FIELDS \
569 XSLT_ITEM_NAVIGATION_FIELDS \ 574 XSLT_ITEM_NAVIGATION_FIELDS \
570 XSLT_ITEM_NSINSCOPE_FIELDS 575 XSLT_ITEM_NSINSCOPE_FIELDS
571 576
572 /** 577 /**
573 * _xsltStylePreComp: 578 * _xsltStylePreComp:
574 * 579 *
575 * The abstract basic structure for items of the XSLT processor. 580 * The abstract basic structure for items of the XSLT processor.
576 * This includes: 581 * This includes:
577 * 1) compiled forms of XSLT instructions (e.g. xsl:if, xsl:attribute, etc.) 582 * 1) compiled forms of XSLT instructions (e.g. xsl:if, xsl:attribute, etc.)
578 * 2) compiled forms of literal result elements 583 * 2) compiled forms of literal result elements
579 * 3) various properties for XSLT instructions (e.g. xsl:when, 584 * 3) various properties for XSLT instructions (e.g. xsl:when,
580 * xsl:with-param) 585 * xsl:with-param)
581 * 586 *
582 * REVISIT TODO: Keep this structure equal to the fields 587 * REVISIT TODO: Keep this structure equal to the fields
583 * defined by XSLT_ITEM_COMMON_FIELDS 588 * defined by XSLT_ITEM_COMMON_FIELDS
584 */ 589 */
585 struct _xsltStylePreComp { 590 struct _xsltStylePreComp {
586 xsltElemPreCompPtr next; /* next item in the global chained 591 xsltElemPreCompPtr next; /* next item in the global chained
587 list hold by xsltStylesheet */ 592 list hold by xsltStylesheet */
588 xsltStyleType type; /* type of the item */ 593 xsltStyleType type; /* type of the item */
589 xsltTransformFunction func; /* handling function */ 594 xsltTransformFunction func; /* handling function */
590 xmlNodePtr inst; /* the node in the stylesheet's tree 595 xmlNodePtr inst; /* the node in the stylesheet's tree
591 corresponding to this item. */ 596 corresponding to this item. */
592 /* Currently no navigational fields. */ 597 /* Currently no navigational fields. */
593 xsltNsListContainerPtr inScopeNs; 598 xsltNsListContainerPtr inScopeNs;
594 }; 599 };
595 600
596 /** 601 /**
597 * xsltStyleBasicEmptyItem: 602 * xsltStyleBasicEmptyItem:
598 * 603 *
599 * Abstract structure only used as a short-cut for 604 * Abstract structure only used as a short-cut for
600 * XSLT items with no extra fields. 605 * XSLT items with no extra fields.
601 * NOTE that it is intended that this structure looks the same as 606 * NOTE that it is intended that this structure looks the same as
602 * _xsltStylePreComp. 607 * _xsltStylePreComp.
603 */ 608 */
604 typedef struct _xsltStyleBasicEmptyItem xsltStyleBasicEmptyItem; 609 typedef struct _xsltStyleBasicEmptyItem xsltStyleBasicEmptyItem;
605 typedef xsltStyleBasicEmptyItem *xsltStyleBasicEmptyItemPtr; 610 typedef xsltStyleBasicEmptyItem *xsltStyleBasicEmptyItemPtr;
606 611
607 struct _xsltStyleBasicEmptyItem { 612 struct _xsltStyleBasicEmptyItem {
608 XSLT_ITEM_COMMON_FIELDS 613 XSLT_ITEM_COMMON_FIELDS
609 }; 614 };
610 615
611 /** 616 /**
612 * xsltStyleBasicExpressionItem: 617 * xsltStyleBasicExpressionItem:
613 * 618 *
614 * Abstract structure only used as a short-cut for 619 * Abstract structure only used as a short-cut for
615 * XSLT items with just an expression. 620 * XSLT items with just an expression.
616 */ 621 */
617 typedef struct _xsltStyleBasicExpressionItem xsltStyleBasicExpressionItem; 622 typedef struct _xsltStyleBasicExpressionItem xsltStyleBasicExpressionItem;
618 typedef xsltStyleBasicExpressionItem *xsltStyleBasicExpressionItemPtr; 623 typedef xsltStyleBasicExpressionItem *xsltStyleBasicExpressionItemPtr;
619 624
620 struct _xsltStyleBasicExpressionItem { 625 struct _xsltStyleBasicExpressionItem {
621 XSLT_ITEM_COMMON_FIELDS 626 XSLT_ITEM_COMMON_FIELDS
622 627
623 const xmlChar *select; /* TODO: Change this to "expression". */ 628 const xmlChar *select; /* TODO: Change this to "expression". */
624 xmlXPathCompExprPtr comp; /* TODO: Change this to compExpr. */ 629 xmlXPathCompExprPtr comp; /* TODO: Change this to compExpr. */
625 }; 630 };
626 631
627 /************************************************************************ 632 /************************************************************************
628 * * 633 * *
629 * XSLT-instructions/declarations * 634 * XSLT-instructions/declarations *
630 * * 635 * *
631 ************************************************************************/ 636 ************************************************************************/
632 637
633 /** 638 /**
634 * xsltStyleItemElement: 639 * xsltStyleItemElement:
635 * 640 *
636 * <!-- Category: instruction --> 641 * <!-- Category: instruction -->
637 * <xsl:element 642 * <xsl:element
638 * name = { qname } 643 * name = { qname }
639 * namespace = { uri-reference } 644 * namespace = { uri-reference }
640 * use-attribute-sets = qnames> 645 * use-attribute-sets = qnames>
641 * <!-- Content: template --> 646 * <!-- Content: template -->
642 * </xsl:element> 647 * </xsl:element>
643 */ 648 */
644 typedef struct _xsltStyleItemElement xsltStyleItemElement; 649 typedef struct _xsltStyleItemElement xsltStyleItemElement;
645 typedef xsltStyleItemElement *xsltStyleItemElementPtr; 650 typedef xsltStyleItemElement *xsltStyleItemElementPtr;
646 651
647 struct _xsltStyleItemElement { 652 struct _xsltStyleItemElement {
648 XSLT_ITEM_COMMON_FIELDS 653 XSLT_ITEM_COMMON_FIELDS
649 654
650 const xmlChar *use; 655 const xmlChar *use;
651 int has_use; 656 int has_use;
652 const xmlChar *name; 657 const xmlChar *name;
653 int has_name; 658 int has_name;
654 const xmlChar *ns; 659 const xmlChar *ns;
655 const xmlChar *nsPrefix; 660 const xmlChar *nsPrefix;
656 int has_ns; 661 int has_ns;
657 }; 662 };
658 663
659 /** 664 /**
660 * xsltStyleItemAttribute: 665 * xsltStyleItemAttribute:
661 * 666 *
662 * <!-- Category: instruction --> 667 * <!-- Category: instruction -->
(...skipping 124 matching lines...) Expand 10 before | Expand all | Expand 10 after
787 * use-attribute-sets = qnames> 792 * use-attribute-sets = qnames>
788 * <!-- Content: template --> 793 * <!-- Content: template -->
789 * </xsl:copy> 794 * </xsl:copy>
790 */ 795 */
791 typedef struct _xsltStyleItemCopy xsltStyleItemCopy; 796 typedef struct _xsltStyleItemCopy xsltStyleItemCopy;
792 typedef xsltStyleItemCopy *xsltStyleItemCopyPtr; 797 typedef xsltStyleItemCopy *xsltStyleItemCopyPtr;
793 798
794 struct _xsltStyleItemCopy { 799 struct _xsltStyleItemCopy {
795 XSLT_ITEM_COMMON_FIELDS 800 XSLT_ITEM_COMMON_FIELDS
796 const xmlChar *use; /* copy, element */ 801 const xmlChar *use; /* copy, element */
797 int has_use;» » /* copy, element */ 802 int has_use;» » /* copy, element */
798 }; 803 };
799 804
800 /** 805 /**
801 * xsltStyleItemIf: 806 * xsltStyleItemIf:
802 * 807 *
803 * <!-- Category: instruction --> 808 * <!-- Category: instruction -->
804 * <xsl:if 809 * <xsl:if
805 * test = boolean-expression> 810 * test = boolean-expression>
806 * <!-- Content: template --> 811 * <!-- Content: template -->
807 * </xsl:if> 812 * </xsl:if>
(...skipping 101 matching lines...) Expand 10 before | Expand all | Expand 10 after
909 * <!-- Category: instruction --> 914 * <!-- Category: instruction -->
910 * <xsl:message 915 * <xsl:message
911 * terminate = "yes" | "no"> 916 * terminate = "yes" | "no">
912 * <!-- Content: template --> 917 * <!-- Content: template -->
913 * </xsl:message> 918 * </xsl:message>
914 */ 919 */
915 typedef struct _xsltStyleItemMessage xsltStyleItemMessage; 920 typedef struct _xsltStyleItemMessage xsltStyleItemMessage;
916 typedef xsltStyleItemMessage *xsltStyleItemMessagePtr; 921 typedef xsltStyleItemMessage *xsltStyleItemMessagePtr;
917 922
918 struct _xsltStyleItemMessage { 923 struct _xsltStyleItemMessage {
919 XSLT_ITEM_COMMON_FIELDS 924 XSLT_ITEM_COMMON_FIELDS
920 int terminate; 925 int terminate;
921 }; 926 };
922 927
923 /** 928 /**
924 * xsltStyleItemDocument: 929 * xsltStyleItemDocument:
925 * 930 *
926 * NOTE: This is not an instruction of XSLT 1.0. 931 * NOTE: This is not an instruction of XSLT 1.0.
927 */ 932 */
928 typedef struct _xsltStyleItemDocument xsltStyleItemDocument; 933 typedef struct _xsltStyleItemDocument xsltStyleItemDocument;
929 typedef xsltStyleItemDocument *xsltStyleItemDocumentPtr; 934 typedef xsltStyleItemDocument *xsltStyleItemDocumentPtr;
930 935
931 struct _xsltStyleItemDocument { 936 struct _xsltStyleItemDocument {
932 XSLT_ITEM_COMMON_FIELDS 937 XSLT_ITEM_COMMON_FIELDS
933 int ver11; /* assigned: in xsltDocumentComp; 938 int ver11; /* assigned: in xsltDocumentComp;
934 read: nowhere; 939 read: nowhere;
935 TODO: Check if we need. */ 940 TODO: Check if we need. */
936 const xmlChar *filename; /* document URL */ 941 const xmlChar *filename; /* document URL */
937 int has_filename; 942 int has_filename;
938 }; 943 };
939 944
940 /************************************************************************ 945 /************************************************************************
941 * * 946 * *
942 * Non-instructions (actually properties of instructions/declarations) * 947 * Non-instructions (actually properties of instructions/declarations) *
943 * * 948 * *
944 ************************************************************************/ 949 ************************************************************************/
945 950
946 /** 951 /**
947 * xsltStyleBasicItemVariable: 952 * xsltStyleBasicItemVariable:
948 * 953 *
(...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after
998 1003
999 struct _xsltStyleItemParam { 1004 struct _xsltStyleItemParam {
1000 XSLT_ITEM_COMMON_FIELDS 1005 XSLT_ITEM_COMMON_FIELDS
1001 1006
1002 const xmlChar *select; 1007 const xmlChar *select;
1003 xmlXPathCompExprPtr comp; 1008 xmlXPathCompExprPtr comp;
1004 1009
1005 const xmlChar *name; 1010 const xmlChar *name;
1006 int has_name; 1011 int has_name;
1007 const xmlChar *ns; 1012 const xmlChar *ns;
1008 int has_ns; 1013 int has_ns;
1009 }; 1014 };
1010 1015
1011 /** 1016 /**
1012 * xsltStyleItemWithParam: 1017 * xsltStyleItemWithParam:
1013 * 1018 *
1014 * <xsl:with-param 1019 * <xsl:with-param
1015 * name = qname 1020 * name = qname
1016 * select = expression> 1021 * select = expression>
1017 * <!-- Content: template --> 1022 * <!-- Content: template -->
1018 * </xsl:with-param> 1023 * </xsl:with-param>
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after
1054 int has_use; 1059 int has_use;
1055 1060
1056 const xmlChar *select; /* sort, copy-of, value-of, apply-templates */ 1061 const xmlChar *select; /* sort, copy-of, value-of, apply-templates */
1057 1062
1058 xmlXPathCompExprPtr comp; /* a precompiled XPath expression */ 1063 xmlXPathCompExprPtr comp; /* a precompiled XPath expression */
1059 }; 1064 };
1060 1065
1061 1066
1062 /** 1067 /**
1063 * xsltStyleItemWhen: 1068 * xsltStyleItemWhen:
1064 * 1069 *
1065 * <xsl:when 1070 * <xsl:when
1066 * test = boolean-expression> 1071 * test = boolean-expression>
1067 * <!-- Content: template --> 1072 * <!-- Content: template -->
1068 * </xsl:when> 1073 * </xsl:when>
1069 * Allowed parent: xsl:choose 1074 * Allowed parent: xsl:choose
1070 */ 1075 */
1071 typedef struct _xsltStyleItemWhen xsltStyleItemWhen; 1076 typedef struct _xsltStyleItemWhen xsltStyleItemWhen;
1072 typedef xsltStyleItemWhen *xsltStyleItemWhenPtr; 1077 typedef xsltStyleItemWhen *xsltStyleItemWhenPtr;
1073 1078
1074 struct _xsltStyleItemWhen { 1079 struct _xsltStyleItemWhen {
(...skipping 62 matching lines...) Expand 10 before | Expand all | Expand 10 after
1137 * the xsltElemPreCompPtr. 1142 * the xsltElemPreCompPtr.
1138 * However the place where the structure is anchored in the node-tree, 1143 * However the place where the structure is anchored in the node-tree,
1139 * namely node->psvi, has beed already once been moved from node->_private 1144 * namely node->psvi, has beed already once been moved from node->_private
1140 * to node->psvi, so we have a precedent here, which, I think, should allow 1145 * to node->psvi, so we have a precedent here, which, I think, should allow
1141 * us to change such semantics without headaches. 1146 * us to change such semantics without headaches.
1142 */ 1147 */
1143 typedef struct _xsltStyleItemExtElement xsltStyleItemExtElement; 1148 typedef struct _xsltStyleItemExtElement xsltStyleItemExtElement;
1144 typedef xsltStyleItemExtElement *xsltStyleItemExtElementPtr; 1149 typedef xsltStyleItemExtElement *xsltStyleItemExtElementPtr;
1145 struct _xsltStyleItemExtElement { 1150 struct _xsltStyleItemExtElement {
1146 XSLT_ITEM_COMMON_FIELDS 1151 XSLT_ITEM_COMMON_FIELDS
1147 xsltElemPreCompPtr item; 1152 xsltElemPreCompPtr item;
1148 }; 1153 };
1149 1154
1150 /************************************************************************ 1155 /************************************************************************
1151 * * 1156 * *
1152 * Literal result elements * 1157 * Literal result elements *
1153 * * 1158 * *
1154 ************************************************************************/ 1159 ************************************************************************/
1155 1160
1156 typedef struct _xsltEffectiveNs xsltEffectiveNs; 1161 typedef struct _xsltEffectiveNs xsltEffectiveNs;
1157 typedef xsltEffectiveNs *xsltEffectiveNsPtr; 1162 typedef xsltEffectiveNs *xsltEffectiveNsPtr;
1158 struct _xsltEffectiveNs { 1163 struct _xsltEffectiveNs {
1159 xsltEffectiveNsPtr nextInStore; /* storage next */ 1164 xsltEffectiveNsPtr nextInStore; /* storage next */
1160 xsltEffectiveNsPtr next; /* next item in the list */ 1165 xsltEffectiveNsPtr next; /* next item in the list */
1161 const xmlChar *prefix; 1166 const xmlChar *prefix;
1162 const xmlChar *nsName; 1167 const xmlChar *nsName;
1163 /* 1168 /*
1164 * Indicates if eclared on the literal result element; dunno if really 1169 * Indicates if eclared on the literal result element; dunno if really
1165 * needed. 1170 * needed.
1166 */ 1171 */
1167 int holdByElem; 1172 int holdByElem;
1168 }; 1173 };
1169 1174
1170 /* 1175 /*
1171 * Info for literal result elements. 1176 * Info for literal result elements.
1172 * This will be set on the elem->psvi field and will be 1177 * This will be set on the elem->psvi field and will be
1173 * shared by literal result elements, which have the same 1178 * shared by literal result elements, which have the same
(...skipping 15 matching lines...) Expand all
1189 */ 1194 */
1190 xsltEffectiveNsPtr effectiveNs; 1195 xsltEffectiveNsPtr effectiveNs;
1191 1196
1192 }; 1197 };
1193 1198
1194 #ifdef XSLT_REFACTORED 1199 #ifdef XSLT_REFACTORED
1195 1200
1196 typedef struct _xsltNsAlias xsltNsAlias; 1201 typedef struct _xsltNsAlias xsltNsAlias;
1197 typedef xsltNsAlias *xsltNsAliasPtr; 1202 typedef xsltNsAlias *xsltNsAliasPtr;
1198 struct _xsltNsAlias { 1203 struct _xsltNsAlias {
1199 xsltNsAliasPtr next; /* next in the list */ 1204 xsltNsAliasPtr next; /* next in the list */
1200 xmlNsPtr literalNs; 1205 xmlNsPtr literalNs;
1201 xmlNsPtr targetNs; 1206 xmlNsPtr targetNs;
1202 xmlDocPtr docOfTargetNs; 1207 xmlDocPtr docOfTargetNs;
1203 }; 1208 };
1204 #endif 1209 #endif
1205 1210
1206 #ifdef XSLT_REFACTORED_XSLT_NSCOMP 1211 #ifdef XSLT_REFACTORED_XSLT_NSCOMP
1207 1212
1208 typedef struct _xsltNsMap xsltNsMap; 1213 typedef struct _xsltNsMap xsltNsMap;
1209 typedef xsltNsMap *xsltNsMapPtr; 1214 typedef xsltNsMap *xsltNsMapPtr;
1210 struct _xsltNsMap { 1215 struct _xsltNsMap {
1211 xsltNsMapPtr next; /* next in the list */ 1216 xsltNsMapPtr next; /* next in the list */
1212 xmlDocPtr doc; 1217 xmlDocPtr doc;
1213 xmlNodePtr elem; /* the element holding the ns-decl */ 1218 xmlNodePtr elem; /* the element holding the ns-decl */
1214 xmlNsPtr ns; /* the xmlNs structure holding the XML namespace name */ 1219 xmlNsPtr ns; /* the xmlNs structure holding the XML namespace name */
1215 const xmlChar *origNsName; /* the original XML namespace name */ 1220 const xmlChar *origNsName; /* the original XML namespace name */
1216 const xmlChar *newNsName; /* the mapped XML namespace name */ 1221 const xmlChar *newNsName; /* the mapped XML namespace name */
1217 }; 1222 };
1218 #endif 1223 #endif
1219 1224
1220 /************************************************************************ 1225 /************************************************************************
1221 * * 1226 * *
1222 * Compile-time structures for *internal* use only * 1227 * Compile-time structures for *internal* use only *
1223 * * 1228 * *
1224 ************************************************************************/ 1229 ************************************************************************/
1225 1230
1226 typedef struct _xsltPrincipalStylesheetData xsltPrincipalStylesheetData; 1231 typedef struct _xsltPrincipalStylesheetData xsltPrincipalStylesheetData;
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after
1261 xmlNodePtr node; 1266 xmlNodePtr node;
1262 int depth; 1267 int depth;
1263 xsltTemplatePtr templ; /* The owning template */ 1268 xsltTemplatePtr templ; /* The owning template */
1264 int category; /* XSLT element, LR-element or 1269 int category; /* XSLT element, LR-element or
1265 extension element */ 1270 extension element */
1266 xsltStyleType type; 1271 xsltStyleType type;
1267 xsltElemPreCompPtr item; /* The compiled information */ 1272 xsltElemPreCompPtr item; /* The compiled information */
1268 /* The current in-scope namespaces */ 1273 /* The current in-scope namespaces */
1269 xsltNsListContainerPtr inScopeNs; 1274 xsltNsListContainerPtr inScopeNs;
1270 /* The current excluded result namespaces */ 1275 /* The current excluded result namespaces */
1271 xsltPointerListPtr exclResultNs; 1276 xsltPointerListPtr exclResultNs;
1272 /* The current extension instruction namespaces */ 1277 /* The current extension instruction namespaces */
1273 xsltPointerListPtr extElemNs; 1278 xsltPointerListPtr extElemNs;
1274 1279
1275 /* The current info for literal result elements. */ 1280 /* The current info for literal result elements. */
1276 xsltStyleItemLRElementInfoPtr litResElemInfo; 1281 xsltStyleItemLRElementInfoPtr litResElemInfo;
1277 /* 1282 /*
1278 * Set to 1 if in-scope namespaces changed, 1283 * Set to 1 if in-scope namespaces changed,
1279 * or excluded result namespaces changed, 1284 * or excluded result namespaces changed,
1280 * or extension element namespaces changed. 1285 * or extension element namespaces changed.
1281 * This will trigger creation of new infos 1286 * This will trigger creation of new infos
1282 * for literal result elements. 1287 * for literal result elements.
1283 */ 1288 */
1284 int nsChanged; 1289 int nsChanged;
1285 int preserveWhitespace; 1290 int preserveWhitespace;
1286 int stripWhitespace; 1291 int stripWhitespace;
1287 int isRoot; /* whether this is the stylesheet's root node */ 1292 int isRoot; /* whether this is the stylesheet's root node */
1288 int forwardsCompat; /* whether forwards-compatible mode is enabled */ 1293 int forwardsCompat; /* whether forwards-compatible mode is enabled */
1289 /* whether the content of an extension element was processed */ 1294 /* whether the content of an extension element was processed */
1290 int extContentHandled; 1295 int extContentHandled;
1291 /* the type of the current child */ 1296 /* the type of the current child */
1292 xsltStyleType curChildType; 1297 xsltStyleType curChildType;
1293 }; 1298 };
1294 1299
1295 /** 1300 /**
1296 * XSLT_CCTXT: 1301 * XSLT_CCTXT:
1297 * 1302 *
1298 * get pointer to compiler context 1303 * get pointer to compiler context
1299 */ 1304 */
1300 #define XSLT_CCTXT(style) ((xsltCompilerCtxtPtr) style->compCtxt) 1305 #define XSLT_CCTXT(style) ((xsltCompilerCtxtPtr) style->compCtxt)
1301 1306
1302 typedef enum { 1307 typedef enum {
1303 XSLT_ERROR_SEVERITY_ERROR = 0, 1308 XSLT_ERROR_SEVERITY_ERROR = 0,
1304 XSLT_ERROR_SEVERITY_WARNING 1309 XSLT_ERROR_SEVERITY_WARNING
1305 } xsltErrorSeverityType; 1310 } xsltErrorSeverityType;
1306 1311
1307 typedef struct _xsltCompilerCtxt xsltCompilerCtxt; 1312 typedef struct _xsltCompilerCtxt xsltCompilerCtxt;
1308 typedef xsltCompilerCtxt *xsltCompilerCtxtPtr; 1313 typedef xsltCompilerCtxt *xsltCompilerCtxtPtr;
1309 struct _xsltCompilerCtxt { 1314 struct _xsltCompilerCtxt {
1310 void *errorCtxt; /* user specific error context */ 1315 void *errorCtxt; /* user specific error context */
1311 /* 1316 /*
1312 * used for error/warning reports; e.g. XSLT_ERROR_SEVERITY_WARNING */ 1317 * used for error/warning reports; e.g. XSLT_ERROR_SEVERITY_WARNING */
1313 xsltErrorSeverityType errSeverity;» » 1318 xsltErrorSeverityType errSeverity;
1314 int warnings; /* TODO: number of warnings found at 1319 int warnings; /* TODO: number of warnings found at
1315 compilation */ 1320 compilation */
1316 int errors; /* TODO: number of errors found at 1321 int errors; /* TODO: number of errors found at
1317 compilation */ 1322 compilation */
1318 xmlDictPtr dict; 1323 xmlDictPtr dict;
1319 xsltStylesheetPtr style; 1324 xsltStylesheetPtr style;
1320 int simplified; /* whether this is a simplified stylesheet */ 1325 int simplified; /* whether this is a simplified stylesheet */
1321 /* TODO: structured/unstructured error contexts. */ 1326 /* TODO: structured/unstructured error contexts. */
1322 int depth; /* Current depth of processing */ 1327 int depth; /* Current depth of processing */
1323 1328
1324 xsltCompilerNodeInfoPtr inode; 1329 xsltCompilerNodeInfoPtr inode;
1325 xsltCompilerNodeInfoPtr inodeList; 1330 xsltCompilerNodeInfoPtr inodeList;
1326 xsltCompilerNodeInfoPtr inodeLast; 1331 xsltCompilerNodeInfoPtr inodeLast;
1327 xsltPointerListPtr tmpList; /* Used for various purposes */ 1332 xsltPointerListPtr tmpList; /* Used for various purposes */
1328 /* 1333 /*
1329 * The XSLT version as specified by the stylesheet's root element. 1334 * The XSLT version as specified by the stylesheet's root element.
1330 */ 1335 */
1331 int isInclude; 1336 int isInclude;
1332 int hasForwardsCompat; /* whether forwards-compatible mode was used 1337 int hasForwardsCompat; /* whether forwards-compatible mode was used
1333 in a parsing episode */ 1338 in a parsing episode */
1334 int maxNodeInfos; /* TEMP TODO: just for the interest */ 1339 int maxNodeInfos; /* TEMP TODO: just for the interest */
1335 int maxLREs; /* TEMP TODO: just for the interest */ 1340 int maxLREs; /* TEMP TODO: just for the interest */
1336 /* 1341 /*
1337 * In order to keep the old behaviour, applying strict rules of 1342 * In order to keep the old behaviour, applying strict rules of
1338 * the spec can be turned off. This has effect only on special 1343 * the spec can be turned off. This has effect only on special
1339 * mechanisms like whitespace-stripping in the stylesheet. 1344 * mechanisms like whitespace-stripping in the stylesheet.
1340 */ 1345 */
1341 int strict; 1346 int strict;
1342 xsltPrincipalStylesheetDataPtr psData; 1347 xsltPrincipalStylesheetDataPtr psData;
1343 #ifdef XSLT_REFACTORED_XPATHCOMP 1348 #ifdef XSLT_REFACTORED_XPATHCOMP
1344 xmlXPathContextPtr xpathCtxt; 1349 xmlXPathContextPtr xpathCtxt;
1345 #endif 1350 #endif
1346 xsltStyleItemUknownPtr unknownItem; 1351 xsltStyleItemUknownPtr unknownItem;
1347 int hasNsAliases; /* Indicator if there was an xsl:namespace-alias. */ 1352 int hasNsAliases; /* Indicator if there was an xsl:namespace-alias. */
1348 xsltNsAliasPtr nsAliases; 1353 xsltNsAliasPtr nsAliases;
1349 xsltVarInfoPtr ivars; /* Storage of local in-scope variables/params. */ 1354 xsltVarInfoPtr ivars; /* Storage of local in-scope variables/params. */
1350 xsltVarInfoPtr ivar; /* topmost local variable/param. */ 1355 xsltVarInfoPtr ivar; /* topmost local variable/param. */
1351 }; 1356 };
1352 1357
1353 #else /* XSLT_REFACTORED */ 1358 #else /* XSLT_REFACTORED */
1354 /* 1359 /*
1355 * The old structures before refactoring. 1360 * The old structures before refactoring.
1356 */ 1361 */
1357 1362
1358 /** 1363 /**
1359 * _xsltStylePreComp: 1364 * _xsltStylePreComp:
1360 * 1365 *
1361 * The in-memory structure corresponding to XSLT stylesheet constructs 1366 * The in-memory structure corresponding to XSLT stylesheet constructs
(...skipping 102 matching lines...) Expand 10 before | Expand all | Expand 10 after
1464 xsltPointerListPtr extElemNamespaces; 1469 xsltPointerListPtr extElemNamespaces;
1465 xsltEffectiveNsPtr effectiveNs; 1470 xsltEffectiveNsPtr effectiveNs;
1466 #ifdef XSLT_REFACTORED_XSLT_NSCOMP 1471 #ifdef XSLT_REFACTORED_XSLT_NSCOMP
1467 /* 1472 /*
1468 * Namespace name map to get rid of string comparison of namespace names. 1473 * Namespace name map to get rid of string comparison of namespace names.
1469 */ 1474 */
1470 xsltNsMapPtr nsMap; 1475 xsltNsMapPtr nsMap;
1471 #endif 1476 #endif
1472 }; 1477 };
1473 1478
1474 1479
1475 #endif 1480 #endif
1476 /* 1481 /*
1477 * Note that we added a @compCtxt field to anchor an stylesheet compilation 1482 * Note that we added a @compCtxt field to anchor an stylesheet compilation
1478 * context, since, due to historical reasons, various compile-time function 1483 * context, since, due to historical reasons, various compile-time function
1479 * take only the stylesheet as argument and not a compilation context. 1484 * take only the stylesheet as argument and not a compilation context.
1480 */ 1485 */
1481 struct _xsltStylesheet { 1486 struct _xsltStylesheet {
1482 /* 1487 /*
1483 * The stylesheet import relation is kept as a tree. 1488 * The stylesheet import relation is kept as a tree.
1484 */ 1489 */
(...skipping 24 matching lines...) Expand all
1509 void *templatesHash; /* hash table or wherever compiled templates 1514 void *templatesHash; /* hash table or wherever compiled templates
1510 informations are stored */ 1515 informations are stored */
1511 void *rootMatch; /* template based on / */ 1516 void *rootMatch; /* template based on / */
1512 void *keyMatch; /* template based on key() */ 1517 void *keyMatch; /* template based on key() */
1513 void *elemMatch; /* template based on * */ 1518 void *elemMatch; /* template based on * */
1514 void *attrMatch; /* template based on @* */ 1519 void *attrMatch; /* template based on @* */
1515 void *parentMatch; /* template based on .. */ 1520 void *parentMatch; /* template based on .. */
1516 void *textMatch; /* template based on text() */ 1521 void *textMatch; /* template based on text() */
1517 void *piMatch; /* template based on processing-instruction() */ 1522 void *piMatch; /* template based on processing-instruction() */
1518 void *commentMatch; /* template based on comment() */ 1523 void *commentMatch; /* template based on comment() */
1519 1524
1520 /* 1525 /*
1521 * Namespace aliases. 1526 * Namespace aliases.
1522 * NOTE: Not used in the refactored code. 1527 * NOTE: Not used in the refactored code.
1523 */ 1528 */
1524 xmlHashTablePtr nsAliases; /* the namespace alias hash tables */ 1529 xmlHashTablePtr nsAliases; /* the namespace alias hash tables */
1525 1530
1526 /* 1531 /*
1527 * Attribute sets. 1532 * Attribute sets.
1528 */ 1533 */
1529 xmlHashTablePtr attributeSets;/* the attribute sets hash tables */ 1534 xmlHashTablePtr attributeSets;/* the attribute sets hash tables */
1530 1535
1531 /* 1536 /*
1532 * Namespaces. 1537 * Namespaces.
1533 * TODO: Eliminate this. 1538 * TODO: Eliminate this.
1534 */ 1539 */
1535 xmlHashTablePtr nsHash; /* the set of namespaces in use: 1540 xmlHashTablePtr nsHash; /* the set of namespaces in use:
1536 ATTENTION: This is used for 1541 ATTENTION: This is used for
1537 execution of XPath expressions; unfortunately 1542 execution of XPath expressions; unfortunately
1538 it restricts the stylesheet to have distinct 1543 it restricts the stylesheet to have distinct
1539 prefixes. 1544 prefixes.
1540 » » » » TODO: We need to get rid of this. 1545 » » » » TODO: We need to get rid of this.
1541 */ 1546 */
1542 void *nsDefs; /* ATTENTION TODO: This is currently used to sto re 1547 void *nsDefs; /* ATTENTION TODO: This is currently used to sto re
1543 xsltExtDefPtr (in extensions.c) and 1548 xsltExtDefPtr (in extensions.c) and
1544 *not* xmlNsPtr. 1549 *not* xmlNsPtr.
1545 */ 1550 */
1546 1551
1547 /* 1552 /*
1548 * Key definitions. 1553 * Key definitions.
1549 */ 1554 */
1550 void *keys; /* key definitions */ 1555 void *keys; /* key definitions */
1551 1556
1552 /* 1557 /*
1553 * Output related stuff. 1558 * Output related stuff.
1554 */ 1559 */
1555 xmlChar *method; /* the output method */ 1560 xmlChar *method; /* the output method */
1556 xmlChar *methodURI; /* associated namespace if any */ 1561 xmlChar *methodURI; /* associated namespace if any */
1557 xmlChar *version; /* version string */ 1562 xmlChar *version; /* version string */
1558 xmlChar *encoding; /* encoding string */ 1563 xmlChar *encoding; /* encoding string */
1559 int omitXmlDeclaration; /* omit-xml-declaration = "yes" | "no" */ 1564 int omitXmlDeclaration; /* omit-xml-declaration = "yes" | "no" */
1560 1565
1561 /* 1566 /*
1562 * Number formatting. 1567 * Number formatting.
1563 */ 1568 */
1564 xsltDecimalFormatPtr decimalFormat; 1569 xsltDecimalFormatPtr decimalFormat;
1565 int standalone; /* standalone = "yes" | "no" */ 1570 int standalone; /* standalone = "yes" | "no" */
1566 xmlChar *doctypePublic; /* doctype-public string */ 1571 xmlChar *doctypePublic; /* doctype-public string */
1567 xmlChar *doctypeSystem; /* doctype-system string */ 1572 xmlChar *doctypeSystem; /* doctype-system string */
1568 int indent; /* should output being indented */ 1573 int indent; /* should output being indented */
1569 xmlChar *mediaType; /* media-type string */ 1574 xmlChar *mediaType; /* media-type string */
1570 1575
1571 /* 1576 /*
(...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after
1621 /* 1626 /*
1622 * The principal stylesheet 1627 * The principal stylesheet
1623 */ 1628 */
1624 xsltStylesheetPtr principal; 1629 xsltStylesheetPtr principal;
1625 #ifdef XSLT_REFACTORED 1630 #ifdef XSLT_REFACTORED
1626 /* 1631 /*
1627 * Compilation context used during compile-time. 1632 * Compilation context used during compile-time.
1628 */ 1633 */
1629 xsltCompilerCtxtPtr compCtxt; /* TODO: Change this to (void *). */ 1634 xsltCompilerCtxtPtr compCtxt; /* TODO: Change this to (void *). */
1630 1635
1631 xsltPrincipalStylesheetDataPtr principalData; 1636 xsltPrincipalStylesheetDataPtr principalData;
1632 #endif 1637 #endif
1638 /*
1639 * Forwards-compatible processing
1640 */
1641 int forwards_compatible;
1633 }; 1642 };
1634 1643
1635 typedef struct _xsltTransformCache xsltTransformCache; 1644 typedef struct _xsltTransformCache xsltTransformCache;
1636 typedef xsltTransformCache *xsltTransformCachePtr; 1645 typedef xsltTransformCache *xsltTransformCachePtr;
1637 struct _xsltTransformCache { 1646 struct _xsltTransformCache {
1638 xmlDocPtr RVT; 1647 xmlDocPtr RVT;
1639 int nbRVT; 1648 int nbRVT;
1640 xsltStackElemPtr stackItems; 1649 xsltStackElemPtr stackItems;
1641 int nbStackItems; 1650 int nbStackItems;
1642 #ifdef XSLT_DEBUG_PROFILE_CACHE 1651 #ifdef XSLT_DEBUG_PROFILE_CACHE
(...skipping 125 matching lines...) Expand 10 before | Expand all | Expand 10 after
1768 xmlNodePtr initialContextNode; 1777 xmlNodePtr initialContextNode;
1769 xmlDocPtr initialContextDoc; 1778 xmlDocPtr initialContextDoc;
1770 xsltTransformCachePtr cache; 1779 xsltTransformCachePtr cache;
1771 void *contextVariable; /* the current variable item */ 1780 void *contextVariable; /* the current variable item */
1772 xmlDocPtr localRVT; /* list of local tree fragments; will be freed when 1781 xmlDocPtr localRVT; /* list of local tree fragments; will be freed when
1773 the instruction which created the fragment 1782 the instruction which created the fragment
1774 exits */ 1783 exits */
1775 xmlDocPtr localRVTBase; 1784 xmlDocPtr localRVTBase;
1776 int keyInitLevel; /* Needed to catch recursive keys issues */ 1785 int keyInitLevel; /* Needed to catch recursive keys issues */
1777 int funcLevel; /* Needed to catch recursive functions issues */ 1786 int funcLevel; /* Needed to catch recursive functions issues */
1787 int maxTemplateDepth;
1788 int maxTemplateVars;
1778 }; 1789 };
1779 1790
1780 /** 1791 /**
1781 * CHECK_STOPPED: 1792 * CHECK_STOPPED:
1782 * 1793 *
1783 * Macro to check if the XSLT processing should be stopped. 1794 * Macro to check if the XSLT processing should be stopped.
1784 * Will return from the function. 1795 * Will return from the function.
1785 */ 1796 */
1786 #define CHECK_STOPPED if (ctxt->state == XSLT_STATE_STOPPED) return; 1797 #define CHECK_STOPPED if (ctxt->state == XSLT_STATE_STOPPED) return;
1787 1798
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after
1821 * so it is disabled now 1832 * so it is disabled now
1822 */ 1833 */
1823 1834
1824 #define XML_CAST_FPTR(fptr) fptr 1835 #define XML_CAST_FPTR(fptr) fptr
1825 #endif 1836 #endif
1826 /* 1837 /*
1827 * Functions associated to the internal types 1838 * Functions associated to the internal types
1828 xsltDecimalFormatPtr xsltDecimalFormatGetByName(xsltStylesheetPtr sheet, 1839 xsltDecimalFormatPtr xsltDecimalFormatGetByName(xsltStylesheetPtr sheet,
1829 xmlChar *name); 1840 xmlChar *name);
1830 */ 1841 */
1831 XSLTPUBFUN xsltStylesheetPtr XSLTCALL» 1842 XSLTPUBFUN xsltStylesheetPtr XSLTCALL
1832 xsltNewStylesheet (void); 1843 xsltNewStylesheet (void);
1833 XSLTPUBFUN xsltStylesheetPtr XSLTCALL» 1844 XSLTPUBFUN xsltStylesheetPtr XSLTCALL
1834 xsltParseStylesheetFile (const xmlChar* filename); 1845 xsltParseStylesheetFile (const xmlChar* filename);
1835 XSLTPUBFUN void XSLTCALL» » » 1846 XSLTPUBFUN void XSLTCALL
1836 xsltFreeStylesheet (xsltStylesheetPtr style); 1847 xsltFreeStylesheet (xsltStylesheetPtr style);
1837 XSLTPUBFUN int XSLTCALL»» » 1848 XSLTPUBFUN int XSLTCALL
1838 xsltIsBlank (xmlChar *str); 1849 xsltIsBlank (xmlChar *str);
1839 XSLTPUBFUN void XSLTCALL» » » 1850 XSLTPUBFUN void XSLTCALL
1840 xsltFreeStackElemList (xsltStackElemPtr elem); 1851 xsltFreeStackElemList (xsltStackElemPtr elem);
1841 XSLTPUBFUN xsltDecimalFormatPtr XSLTCALL» 1852 XSLTPUBFUN xsltDecimalFormatPtr XSLTCALL
1842 xsltDecimalFormatGetByName(xsltStylesheetPtr style, 1853 xsltDecimalFormatGetByName(xsltStylesheetPtr style,
1843 xmlChar *name); 1854 xmlChar *name);
1844 1855
1845 XSLTPUBFUN xsltStylesheetPtr XSLTCALL» 1856 XSLTPUBFUN xsltStylesheetPtr XSLTCALL
1846 xsltParseStylesheetProcess(xsltStylesheetPtr ret, 1857 xsltParseStylesheetProcess(xsltStylesheetPtr ret,
1847 xmlDocPtr doc); 1858 xmlDocPtr doc);
1848 XSLTPUBFUN void XSLTCALL» » » 1859 XSLTPUBFUN void XSLTCALL
1849 xsltParseStylesheetOutput(xsltStylesheetPtr style, 1860 xsltParseStylesheetOutput(xsltStylesheetPtr style,
1850 xmlNodePtr cur); 1861 xmlNodePtr cur);
1851 XSLTPUBFUN xsltStylesheetPtr XSLTCALL» 1862 XSLTPUBFUN xsltStylesheetPtr XSLTCALL
1852 xsltParseStylesheetDoc (xmlDocPtr doc); 1863 xsltParseStylesheetDoc (xmlDocPtr doc);
1853 XSLTPUBFUN xsltStylesheetPtr XSLTCALL» 1864 XSLTPUBFUN xsltStylesheetPtr XSLTCALL
1854 xsltParseStylesheetImportedDoc(xmlDocPtr doc, 1865 xsltParseStylesheetImportedDoc(xmlDocPtr doc,
1855 xsltStylesheetPtr style); 1866 xsltStylesheetPtr style);
1856 XSLTPUBFUN xsltStylesheetPtr XSLTCALL» 1867 XSLTPUBFUN xsltStylesheetPtr XSLTCALL
1857 xsltLoadStylesheetPI (xmlDocPtr doc); 1868 xsltLoadStylesheetPI (xmlDocPtr doc);
1858 XSLTPUBFUN void XSLTCALL » » » 1869 XSLTPUBFUN void XSLTCALL
1859 xsltNumberFormat (xsltTransformContextPtr ctxt, 1870 xsltNumberFormat (xsltTransformContextPtr ctxt,
1860 xsltNumberDataPtr data, 1871 xsltNumberDataPtr data,
1861 xmlNodePtr node); 1872 xmlNodePtr node);
1862 XSLTPUBFUN xmlXPathError XSLTCALL» » 1873 XSLTPUBFUN xmlXPathError XSLTCALL
1863 xsltFormatNumberConversion(xsltDecimalFormatPtr self, 1874 xsltFormatNumberConversion(xsltDecimalFormatPtr self,
1864 xmlChar *format, 1875 xmlChar *format,
1865 double number, 1876 double number,
1866 xmlChar **result); 1877 xmlChar **result);
1867 1878
1868 XSLTPUBFUN void XSLTCALL» » » 1879 XSLTPUBFUN void XSLTCALL
1869 xsltParseTemplateContent(xsltStylesheetPtr style, 1880 xsltParseTemplateContent(xsltStylesheetPtr style,
1870 xmlNodePtr templ); 1881 xmlNodePtr templ);
1871 XSLTPUBFUN int XSLTCALL»» » 1882 XSLTPUBFUN int XSLTCALL
1872 xsltAllocateExtra (xsltStylesheetPtr style); 1883 xsltAllocateExtra (xsltStylesheetPtr style);
1873 XSLTPUBFUN int XSLTCALL»» » 1884 XSLTPUBFUN int XSLTCALL
1874 xsltAllocateExtraCtxt (xsltTransformContextPtr ctxt); 1885 xsltAllocateExtraCtxt (xsltTransformContextPtr ctxt);
1875 /* 1886 /*
1876 * Extra functions for Result Value Trees 1887 * Extra functions for Result Value Trees
1877 */ 1888 */
1878 XSLTPUBFUN xmlDocPtr XSLTCALL» » 1889 XSLTPUBFUN xmlDocPtr XSLTCALL
1879 xsltCreateRVT (xsltTransformContextPtr ctxt); 1890 xsltCreateRVT (xsltTransformContextPtr ctxt);
1880 XSLTPUBFUN int XSLTCALL»» » 1891 XSLTPUBFUN int XSLTCALL
1881 xsltRegisterTmpRVT (xsltTransformContextPtr ctxt, 1892 xsltRegisterTmpRVT (xsltTransformContextPtr ctxt,
1882 xmlDocPtr RVT); 1893 xmlDocPtr RVT);
1883 XSLTPUBFUN int XSLTCALL»» » 1894 XSLTPUBFUN int XSLTCALL
1884 xsltRegisterLocalRVT (xsltTransformContextPtr ctxt, 1895 xsltRegisterLocalRVT (xsltTransformContextPtr ctxt,
1885 xmlDocPtr RVT); 1896 xmlDocPtr RVT);
1886 XSLTPUBFUN int XSLTCALL»» » 1897 XSLTPUBFUN int XSLTCALL
1887 xsltRegisterPersistRVT (xsltTransformContextPtr ctxt, 1898 xsltRegisterPersistRVT (xsltTransformContextPtr ctxt,
1888 xmlDocPtr RVT); 1899 xmlDocPtr RVT);
1889 XSLTPUBFUN int XSLTCALL 1900 XSLTPUBFUN int XSLTCALL
1890 xsltExtensionInstructionResultRegister( 1901 xsltExtensionInstructionResultRegister(
1891 xsltTransformContextPtr ctxt, 1902 xsltTransformContextPtr ctxt,
1892 xmlXPathObjectPtr obj); 1903 xmlXPathObjectPtr obj);
1893 XSLTPUBFUN int XSLTCALL 1904 XSLTPUBFUN int XSLTCALL
1894 xsltExtensionInstructionResultFinalize( 1905 xsltExtensionInstructionResultFinalize(
1895 xsltTransformContextPtr ctxt); 1906 xsltTransformContextPtr ctxt);
1896 XSLTPUBFUN void XSLTCALL 1907 XSLTPUBFUN void XSLTCALL
1897 xsltFreeRVTs (xsltTransformContextPtr ctxt); 1908 xsltFreeRVTs (xsltTransformContextPtr ctxt);
1898 XSLTPUBFUN void XSLTCALL 1909 XSLTPUBFUN void XSLTCALL
1899 xsltReleaseRVT (xsltTransformContextPtr ctxt, 1910 xsltReleaseRVT (xsltTransformContextPtr ctxt,
1900 xmlDocPtr RVT); 1911 xmlDocPtr RVT);
1901 XSLTPUBFUN int XSLTCALL
1902 xsltTransStorageAdd (xsltTransformContextPtr ctxt,
1903 void *id,
1904 void *data);
1905 XSLTPUBFUN void * XSLTCALL
1906 xsltTransStorageRemove (xsltTransformContextPtr ctxt,
1907 void *id);
1908
1909 /* 1912 /*
1910 * Extra functions for Attribute Value Templates 1913 * Extra functions for Attribute Value Templates
1911 */ 1914 */
1912 XSLTPUBFUN void XSLTCALL 1915 XSLTPUBFUN void XSLTCALL
1913 xsltCompileAttr (xsltStylesheetPtr style, 1916 xsltCompileAttr (xsltStylesheetPtr style,
1914 xmlAttrPtr attr); 1917 xmlAttrPtr attr);
1915 XSLTPUBFUN xmlChar * XSLTCALL 1918 XSLTPUBFUN xmlChar * XSLTCALL
1916 xsltEvalAVT (xsltTransformContextPtr ctxt, 1919 xsltEvalAVT (xsltTransformContextPtr ctxt,
1917 void *avt, 1920 void *avt,
1918 xmlNodePtr node); 1921 xmlNodePtr node);
1919 XSLTPUBFUN void XSLTCALL 1922 XSLTPUBFUN void XSLTCALL
1920 xsltFreeAVTList (void *avt); 1923 xsltFreeAVTList (void *avt);
1921 1924
1922 /* 1925 /*
1923 * Extra function for successful xsltCleanupGlobals / xsltInit sequence. 1926 * Extra function for successful xsltCleanupGlobals / xsltInit sequence.
1924 */ 1927 */
1925 1928
1926 XSLTPUBFUN void XSLTCALL 1929 XSLTPUBFUN void XSLTCALL
1927 xsltUninit (void); 1930 xsltUninit (void);
1928 1931
1929 /************************************************************************ 1932 /************************************************************************
1930 * * 1933 * *
1931 * Compile-time functions for *internal* use only * 1934 * Compile-time functions for *internal* use only *
1932 * * 1935 * *
1933 ************************************************************************/ 1936 ************************************************************************/
1934 1937
1935 #ifdef XSLT_REFACTORED 1938 #ifdef XSLT_REFACTORED
1936 XSLTPUBFUN void XSLTCALL 1939 XSLTPUBFUN void XSLTCALL
1937 xsltParseSequenceConstructor( 1940 xsltParseSequenceConstructor(
1938 xsltCompilerCtxtPtr cctxt, 1941 xsltCompilerCtxtPtr cctxt,
1939 xmlNodePtr start); 1942 xmlNodePtr start);
1940 XSLTPUBFUN int XSLTCALL 1943 XSLTPUBFUN int XSLTCALL
1941 xsltParseAnyXSLTElem (xsltCompilerCtxtPtr cctxt, 1944 xsltParseAnyXSLTElem (xsltCompilerCtxtPtr cctxt,
1942 xmlNodePtr elem); 1945 xmlNodePtr elem);
1943 #ifdef XSLT_REFACTORED_XSLT_NSCOMP 1946 #ifdef XSLT_REFACTORED_XSLT_NSCOMP
1944 XSLTPUBFUN int XSLTCALL 1947 XSLTPUBFUN int XSLTCALL
1945 xsltRestoreDocumentNamespaces( 1948 xsltRestoreDocumentNamespaces(
(...skipping 12 matching lines...) Expand all
1958 xsltDocumentPtr doc, 1961 xsltDocumentPtr doc,
1959 xsltKeyDefPtr keyd); 1962 xsltKeyDefPtr keyd);
1960 XSLTPUBFUN int XSLTCALL 1963 XSLTPUBFUN int XSLTCALL
1961 xsltInitAllDocKeys (xsltTransformContextPtr ctxt); 1964 xsltInitAllDocKeys (xsltTransformContextPtr ctxt);
1962 #ifdef __cplusplus 1965 #ifdef __cplusplus
1963 } 1966 }
1964 #endif 1967 #endif
1965 1968
1966 #endif /* __XML_XSLT_H__ */ 1969 #endif /* __XML_XSLT_H__ */
1967 1970
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698