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

Unified Diff: third_party/libxslt/libexslt/sets.c

Issue 2865973002: Check in the libxslt roll script. (Closed)
Patch Set: Consistent quotes. Created 3 years, 7 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « third_party/libxslt/libexslt/saxon.c ('k') | third_party/libxslt/libexslt/strings.c » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: third_party/libxslt/libexslt/sets.c
diff --git a/third_party/libxslt/libexslt/sets.c b/third_party/libxslt/libexslt/sets.c
deleted file mode 100644
index a5a79130261f561fb6c894d72495a9ebf2c982cc..0000000000000000000000000000000000000000
--- a/third_party/libxslt/libexslt/sets.c
+++ /dev/null
@@ -1,334 +0,0 @@
-#define IN_LIBEXSLT
-#include "libexslt/libexslt.h"
-
-#if defined(WIN32) && !defined (__CYGWIN__) && (!__MINGW32__)
-#include <win32config.h>
-#else
-#include "config.h"
-#endif
-
-#include <libxml/tree.h>
-#include <libxml/xpath.h>
-#include <libxml/xpathInternals.h>
-
-#include <libxslt/xsltutils.h>
-#include <libxslt/xsltInternals.h>
-#include <libxslt/extensions.h>
-
-#include "exslt.h"
-
-/**
- * exsltSetsDifferenceFunction:
- * @ctxt: an XPath parser context
- * @nargs: the number of arguments
- *
- * Wraps #xmlXPathDifference for use by the XPath processor
- */
-static void
-exsltSetsDifferenceFunction (xmlXPathParserContextPtr ctxt, int nargs) {
- xmlNodeSetPtr arg1, arg2, ret;
-
- if (nargs != 2) {
- xmlXPathSetArityError(ctxt);
- return;
- }
-
- arg2 = xmlXPathPopNodeSet(ctxt);
- if (xmlXPathCheckError(ctxt)) {
- xmlXPathSetTypeError(ctxt);
- return;
- }
-
- arg1 = xmlXPathPopNodeSet(ctxt);
- if (xmlXPathCheckError(ctxt)) {
- xmlXPathSetTypeError(ctxt);
- return;
- }
-
- ret = xmlXPathDifference(arg1, arg2);
-
- if (ret != arg1)
- xmlXPathFreeNodeSet(arg1);
- xmlXPathFreeNodeSet(arg2);
-
- xmlXPathReturnNodeSet(ctxt, ret);
-}
-
-/**
- * exsltSetsIntersectionFunction:
- * @ctxt: an XPath parser context
- * @nargs: the number of arguments
- *
- * Wraps #xmlXPathIntersection for use by the XPath processor
- */
-static void
-exsltSetsIntersectionFunction (xmlXPathParserContextPtr ctxt, int nargs) {
- xmlNodeSetPtr arg1, arg2, ret;
-
- if (nargs != 2) {
- xmlXPathSetArityError(ctxt);
- return;
- }
-
- arg2 = xmlXPathPopNodeSet(ctxt);
- if (xmlXPathCheckError(ctxt)) {
- xmlXPathSetTypeError(ctxt);
- return;
- }
-
- arg1 = xmlXPathPopNodeSet(ctxt);
- if (xmlXPathCheckError(ctxt)) {
- xmlXPathSetTypeError(ctxt);
- return;
- }
-
- ret = xmlXPathIntersection(arg1, arg2);
-
- xmlXPathFreeNodeSet(arg1);
- xmlXPathFreeNodeSet(arg2);
-
- xmlXPathReturnNodeSet(ctxt, ret);
-}
-
-/**
- * exsltSetsDistinctFunction:
- * @ctxt: an XPath parser context
- * @nargs: the number of arguments
- *
- * Wraps #xmlXPathDistinct for use by the XPath processor
- */
-static void
-exsltSetsDistinctFunction (xmlXPathParserContextPtr ctxt, int nargs) {
- xmlXPathObjectPtr obj;
- xmlNodeSetPtr ns, ret;
- int boolval = 0;
- void *user = NULL;
-
- if (nargs != 1) {
- xmlXPathSetArityError(ctxt);
- return;
- }
-
- if (ctxt->value != NULL) {
- boolval = ctxt->value->boolval;
- user = ctxt->value->user;
- ctxt->value->boolval = 0;
- ctxt->value->user = NULL;
- }
- ns = xmlXPathPopNodeSet(ctxt);
- if (xmlXPathCheckError(ctxt))
- return;
-
- /* !!! must be sorted !!! */
- ret = xmlXPathDistinctSorted(ns);
-
- if (ret != ns)
- xmlXPathFreeNodeSet(ns);
-
- obj = xmlXPathWrapNodeSet(ret);
- obj->user = user;
- obj->boolval = boolval;
- valuePush((ctxt), obj);
-}
-
-/**
- * exsltSetsHasSameNodesFunction:
- * @ctxt: an XPath parser context
- * @nargs: the number of arguments
- *
- * Wraps #xmlXPathHasSameNodes for use by the XPath processor
- */
-static void
-exsltSetsHasSameNodesFunction (xmlXPathParserContextPtr ctxt,
- int nargs) {
- xmlNodeSetPtr arg1, arg2;
- int ret;
-
- if (nargs != 2) {
- xmlXPathSetArityError(ctxt);
- return;
- }
-
- arg2 = xmlXPathPopNodeSet(ctxt);
- if (xmlXPathCheckError(ctxt)) {
- xmlXPathSetTypeError(ctxt);
- return;
- }
-
- arg1 = xmlXPathPopNodeSet(ctxt);
- if (xmlXPathCheckError(ctxt)) {
- xmlXPathSetTypeError(ctxt);
- return;
- }
-
- ret = xmlXPathHasSameNodes(arg1, arg2);
-
- xmlXPathFreeNodeSet(arg1);
- xmlXPathFreeNodeSet(arg2);
-
- xmlXPathReturnBoolean(ctxt, ret);
-}
-
-/**
- * exsltSetsLeadingFunction:
- * @ctxt: an XPath parser context
- * @nargs: the number of arguments
- *
- * Wraps #xmlXPathLeading for use by the XPath processor
- */
-static void
-exsltSetsLeadingFunction (xmlXPathParserContextPtr ctxt, int nargs) {
- xmlNodeSetPtr arg1, arg2, ret;
-
- if (nargs != 2) {
- xmlXPathSetArityError(ctxt);
- return;
- }
-
- arg2 = xmlXPathPopNodeSet(ctxt);
- if (xmlXPathCheckError(ctxt)) {
- xmlXPathSetTypeError(ctxt);
- return;
- }
-
- arg1 = xmlXPathPopNodeSet(ctxt);
- if (xmlXPathCheckError(ctxt)) {
- xmlXPathSetTypeError(ctxt);
- return;
- }
-
- /* If the second node set is empty, then the first node set is
- * returned.
- */
- if (xmlXPathNodeSetIsEmpty(arg2)) {
- xmlXPathReturnNodeSet(ctxt, arg1);
-
- xmlXPathFreeNodeSet(arg2);
-
- return;
- }
- /* !!! must be sorted */
- ret = xmlXPathNodeLeadingSorted(arg1, xmlXPathNodeSetItem(arg2, 0));
-
- xmlXPathFreeNodeSet(arg1);
- xmlXPathFreeNodeSet(arg2);
-
- xmlXPathReturnNodeSet(ctxt, ret);
-}
-
-/**
- * exsltSetsTrailingFunction:
- * @ctxt: an XPath parser context
- * @nargs: the number of arguments
- *
- * Wraps #xmlXPathTrailing for use by the XPath processor
- */
-static void
-exsltSetsTrailingFunction (xmlXPathParserContextPtr ctxt, int nargs) {
- xmlNodeSetPtr arg1, arg2, ret;
-
- if (nargs != 2) {
- xmlXPathSetArityError(ctxt);
- return;
- }
-
- arg2 = xmlXPathPopNodeSet(ctxt);
- if (xmlXPathCheckError(ctxt)) {
- xmlXPathSetTypeError(ctxt);
- return;
- }
-
- arg1 = xmlXPathPopNodeSet(ctxt);
- if (xmlXPathCheckError(ctxt)) {
- xmlXPathSetTypeError(ctxt);
- return;
- }
-
- /* If the second node set is empty, then the first node set is
- * returned.
- */
- if (xmlXPathNodeSetIsEmpty(arg2)) {
- xmlXPathReturnNodeSet(ctxt, arg1);
-
- xmlXPathFreeNodeSet(arg2);
-
- return;
- }
- /* !!! mist be sorted */
- ret = xmlXPathNodeTrailingSorted(arg1, xmlXPathNodeSetItem(arg2, 0));
-
- xmlXPathFreeNodeSet(arg1);
- xmlXPathFreeNodeSet(arg2);
-
- xmlXPathReturnNodeSet(ctxt, ret);
-}
-
-/**
- * exsltSetsRegister:
- *
- * Registers the EXSLT - Sets module
- */
-
-void
-exsltSetsRegister (void) {
- xsltRegisterExtModuleFunction ((const xmlChar *) "difference",
- EXSLT_SETS_NAMESPACE,
- exsltSetsDifferenceFunction);
- xsltRegisterExtModuleFunction ((const xmlChar *) "intersection",
- EXSLT_SETS_NAMESPACE,
- exsltSetsIntersectionFunction);
- xsltRegisterExtModuleFunction ((const xmlChar *) "distinct",
- EXSLT_SETS_NAMESPACE,
- exsltSetsDistinctFunction);
- xsltRegisterExtModuleFunction ((const xmlChar *) "has-same-node",
- EXSLT_SETS_NAMESPACE,
- exsltSetsHasSameNodesFunction);
- xsltRegisterExtModuleFunction ((const xmlChar *) "leading",
- EXSLT_SETS_NAMESPACE,
- exsltSetsLeadingFunction);
- xsltRegisterExtModuleFunction ((const xmlChar *) "trailing",
- EXSLT_SETS_NAMESPACE,
- exsltSetsTrailingFunction);
-}
-
-/**
- * exsltSetsXpathCtxtRegister:
- *
- * Registers the EXSLT - Sets module for use outside XSLT
- */
-int
-exsltSetsXpathCtxtRegister (xmlXPathContextPtr ctxt, const xmlChar *prefix)
-{
- if (ctxt
- && prefix
- && !xmlXPathRegisterNs(ctxt,
- prefix,
- (const xmlChar *) EXSLT_SETS_NAMESPACE)
- && !xmlXPathRegisterFuncNS(ctxt,
- (const xmlChar *) "difference",
- (const xmlChar *) EXSLT_SETS_NAMESPACE,
- exsltSetsDifferenceFunction)
- && !xmlXPathRegisterFuncNS(ctxt,
- (const xmlChar *) "intersection",
- (const xmlChar *) EXSLT_SETS_NAMESPACE,
- exsltSetsIntersectionFunction)
- && !xmlXPathRegisterFuncNS(ctxt,
- (const xmlChar *) "distinct",
- (const xmlChar *) EXSLT_SETS_NAMESPACE,
- exsltSetsDistinctFunction)
- && !xmlXPathRegisterFuncNS(ctxt,
- (const xmlChar *) "has-same-node",
- (const xmlChar *) EXSLT_SETS_NAMESPACE,
- exsltSetsHasSameNodesFunction)
- && !xmlXPathRegisterFuncNS(ctxt,
- (const xmlChar *) "leading",
- (const xmlChar *) EXSLT_SETS_NAMESPACE,
- exsltSetsLeadingFunction)
- && !xmlXPathRegisterFuncNS(ctxt,
- (const xmlChar *) "trailing",
- (const xmlChar *) EXSLT_SETS_NAMESPACE,
- exsltSetsTrailingFunction)) {
- return 0;
- }
- return -1;
-}
« no previous file with comments | « third_party/libxslt/libexslt/saxon.c ('k') | third_party/libxslt/libexslt/strings.c » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698