[prev in list] [next in list] [prev in thread] [next in thread]
List: axis-cvs
Subject: svn commit: r719528 - in /webservices/axis2/trunk/c/axiom: include/
From: dumindu () apache ! org
Date: 2008-11-21 7:42:36
Message-ID: 20081121074237.463922388875 () eris ! apache ! org
[Download RAW message or body]
Author: dumindu
Date: Thu Nov 20 23:42:36 2008
New Revision: 719528
URL: http://svn.apache.org/viewvc?rev=719528&view=rev
Log:
1. s/xpath.h/axiom_xpath.h
2. removed win32 endlines from axiom_xpath.h (dos2unix)
Added:
webservices/axis2/trunk/c/axiom/include/axiom_xpath.h
- copied, changed from r719352, webservices/axis2/trunk/c/axiom/include/xpath.h
Removed:
webservices/axis2/trunk/c/axiom/include/xpath.h
Modified:
webservices/axis2/trunk/c/axiom/src/xpath/xpath.c
webservices/axis2/trunk/c/axiom/src/xpath/xpath_functions.c
webservices/axis2/trunk/c/axiom/src/xpath/xpath_functions.h
webservices/axis2/trunk/c/axiom/src/xpath/xpath_internals.c
webservices/axis2/trunk/c/axiom/src/xpath/xpath_internals_engine.c
webservices/axis2/trunk/c/axiom/src/xpath/xpath_internals_iterators.c
webservices/axis2/trunk/c/axiom/src/xpath/xpath_internals_iterators.h
webservices/axis2/trunk/c/axiom/src/xpath/xpath_internals_parser.c
webservices/axis2/trunk/c/axiom/src/xpath/xpath_streaming.c
webservices/axis2/trunk/c/axiom/test/xpath/test_xpath.c
Copied: webservices/axis2/trunk/c/axiom/include/axiom_xpath.h (from r719352, \
webservices/axis2/trunk/c/axiom/include/xpath.h)
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/axiom/include/axiom_xpath. \
h?p2=webservices/axis2/trunk/c/axiom/include/axiom_xpath.h&p1=webservices/axis2/trunk/c/axiom/include/xpath.h&r1=719352&r2=719528&rev=719528&view=diff
==============================================================================
--- webservices/axis2/trunk/c/axiom/include/xpath.h (original)
+++ webservices/axis2/trunk/c/axiom/include/axiom_xpath.h Thu Nov 20 23:42:36 2008
@@ -1,406 +1,406 @@
-
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef XPATH_H
-#define XPATH_H
-
-#include <axiom.h>
-#include <axis2_util.h>
-#include <axiom_soap.h>
-
-#ifdef __cplusplus
-extern "C"
-{
-#endif
-
- /**
- * @defgroup axiom_xpath_api api
- * @ingroup axiom_xpath
- * @{
- */
-
-
- /**
- * Enable tracing
- */
-
-#define AXIOM_XPATH_DEBUG
-
- /**
- * An error occured while evaluating the xpath expression
- */
-#define AXIOM_XPATH_EVALUATION_ERROR 0
-
-#define AXIOM_XPATH_ERROR_STREAMING_NOT_SUPPORTED 10
-
- /* Typedefs */
-
- /**
- * XPath expression
- * It includes the expression as a string and parsed data.
- */
- typedef struct axiom_xpath_expression axiom_xpath_expression_t;
-
- /**
- * The XPath context
- * Keeps a reference to the context node or attribute,
- * XPath expression, environment and result set.
- */
- typedef struct axiom_xpath_context axiom_xpath_context_t;
-
- /**
- * XPath result set
- * Contains the result set and other information such as
- * whether the expression was evaluated successfully.
- */
- typedef struct axiom_xpath_result axiom_xpath_result_t;
-
- /**
- * XPath result
- * Stores type and value of the result.
- */
- typedef struct axiom_xpath_result_node axiom_xpath_result_node_t;
-
- /**
- * XPath result types
- */
- typedef enum axiom_xpath_result_type_t
- {
- AXIOM_XPATH_TYPE_NODE = 0,
- AXIOM_XPATH_TYPE_ATTRIBUTE,
- AXIOM_XPATH_TYPE_NAMESPACE,
- AXIOM_XPATH_TYPE_TEXT,
- AXIOM_XPATH_TYPE_NUMBER,
- AXIOM_XPATH_TYPE_BOOLEAN
- } axiom_xpath_result_type_t;
-
- typedef int (*axiom_xpath_function_t)(axiom_xpath_context_t *context,
- int np);
-
- /**
- * XPath expression
- */
- struct axiom_xpath_expression
- {
- /** XPath expression as a string */
- axis2_char_t* expr_str;
-
- /** Length of the expression */
- int expr_len;
-
- /** A cursor pointing to the position currently being parsed */
- int expr_ptr;
-
- /** Parsed expression in an array list*/
- axutil_array_list_t *operations;
-
- /** A pointer to the start operation in operations */
- int start;
- };
-
- /**
- * XPath context
- */
- struct axiom_xpath_context
- {
- /** Environment */
- axutil_env_t *env;
-
- /** List of namespaces */
- axutil_hash_t *namespaces;
-
- /** Set of functions */
- axutil_hash_t *functions;
-
- /** Root node */
- axiom_node_t *root_node;
-
- /** Context node */
- axiom_node_t *node;
-
- /** Context attribute */
- axiom_attribute_t *attribute;
-
- /** Context attribute */
- axiom_namespace_t *ns;
-
- /** Context position */
- int position;
-
- /** Context size
- * *Does not work location paths due to optimizations */
- int size;
-
- /** XPath expression */
- axiom_xpath_expression_t *expr;
-
- /** Streaming */
- axis2_bool_t streaming;
-
- /** Stack of processed items */
- axutil_stack_t *stack;
-
- /* TODO:
- functions
- variables
- etc */
- };
-
- /**
- * XPath result set
- */
- struct axiom_xpath_result
- {
- /** A flag indicating whether errors occured while evaluting XPath
- * expression */
- int flag;
-
- /** An array list containing the set of results */
- axutil_array_list_t * nodes;
- };
-
- /**
- * XPath result
- */
- struct axiom_xpath_result_node
- {
- /** Type of result */
- axiom_xpath_result_type_t type;
-
- /** Value */
- void * value;
- };
-
- /**
- * Compile an XPath expression
- *
- * @param env Environment must not be null
- * @param xpath_expr A pointer to the XPath expression
- * @return The parsed XPath expression. Returns NULL if an error occured
- * while parsing.
- */
- axiom_xpath_expression_t * AXIS2_CALL axiom_xpath_compile_expression(
- const axutil_env_t *env,
- const axis2_char_t* xpath_expr);
-
- /**
- * Create an empty XPath context
- *
- * @param env Environment must not be null
- * @param root_node A pointer to the root of the tree
- * @return The initialized XPath context.
- */
- axiom_xpath_context_t * AXIS2_CALL axiom_xpath_context_create(
- axutil_env_t *env,
- axiom_node_t * root_node);
-
- /**
- * Evaluate an parsed XPath expression. Different expressions could
- * be evaluated on the same context, and same expression could be
- * evaluated on multiple trees without recompiling.
- *
- * @param context XPath context must not be null
- * @param xpath_expr XPath expression to be evaluated
- * @return The set of results.
- */
- axiom_xpath_result_t * AXIS2_CALL axiom_xpath_evaluate(
- axiom_xpath_context_t *context,
- axiom_xpath_expression_t *xpath_expr);
-
-
- /**
- * Convert an XPath result to a boolean.
- * If the result is a boolean the value of it is returned.
- * If the result is a number, AXIS2_TRUE is
- * returned if the value is not equal to 0 and AXIS2_FALSE otherwise.
- * Otherwise AXIS2_TRUE is returned if the result is not NULL and AXIS2_FALSE \
otherwise.
- *
- * @param env Environment must not be null
- * @param node A pointer to the XPath result
- * @return The boolean value.
- */
- axis2_bool_t AXIS2_CALL axiom_xpath_cast_node_to_boolean(
- const axutil_env_t *env,
- axiom_xpath_result_node_t * node);
-
- /**
- * Convert an XPath result to a number.
- * If the result is a boolean, 1 is returned if it's true and 0 otherwise.
- * If the result is a number the value of it is returned.
- * Otherwise AXIS2_TRUE is returned if the result is not NULL and AXIS2_FALSE \
otherwise.
- *
- * @param env Environment must not be null
- * @param node A pointer to the XPath result
- * @return The numerical value.
- */
- double AXIS2_CALL axiom_xpath_cast_node_to_number(
- const axutil_env_t *env,
- axiom_xpath_result_node_t * node);
-
- /**
- * Convert an XPath result to text.
- * If the result is a boolean, "true" is returned if it's true and "false" \
otherwise.
- * If the result is a number the text representation of it is returned.
- * If the result is a text the value of it is returned.
- * If the result is an axiom node, the text value of it is returned
- * If the result is an axiom attribue, the text value of it is returned
- *
- * @param env Environment must not be null
- * @param node A pointer to the XPath result
- * @return The text value.
- */
- axis2_char_t * AXIS2_CALL axiom_xpath_cast_node_to_string(
- const axutil_env_t *env,
- axiom_xpath_result_node_t * node);
-
- /**
- * Convert an XPath result to an axiom node.
- * If the result is an axiom node it is returned and NULL otherwise.
- *
- * @param env Environment must not be null
- * @param node A pointer to the XPath result
- * @return The axiom node.
- */
- axiom_node_t * AXIS2_CALL axiom_xpath_cast_node_to_axiom_node(
- const axutil_env_t *env,
- axiom_xpath_result_node_t * node);
-
-
- /**
- * Free XPath context
- *
- * @param env Environment must not be null
- * @param context XPath context must not be null
- */
- void AXIS2_CALL axiom_xpath_free_context(
- const axutil_env_t *env,
- axiom_xpath_context_t *context);
-
- /**
- * Free XPath expression
- *
- * @param env Environment must not be null
- * @param xpath_expr XPath expression must not be null
- */
- void AXIS2_CALL axiom_xpath_free_expression(
- const axutil_env_t *env,
- axiom_xpath_expression_t * xpath_expr);
-
- /**
- * Free XPath result set
- *
- * @param env Environment must not be null
- * @param result XPath result set must not be null
- */
- void AXIS2_CALL axiom_xpath_free_result(
- const axutil_env_t *env,
- axiom_xpath_result_t* result);
-
- /**
- * Registers a XPath namespace
- *
- * @param context XPath Context, must not be null
- * @param ns AXIOM namespace, must not be null
- */
- void AXIS2_CALL axiom_xpath_register_namespace(
- axiom_xpath_context_t *context,
- axiom_namespace_t *ns);
-
- /**
- * Get a registered namespace by the prefix.
- * If there is no namespace registered by the given prefix NULL will be \
returned
- *
- * @param context XPath Context, must not be null
- * @param prefix Prefix of the namespace, must not be null
- * @return The namespace corresponding to the prefix.
- */
- axiom_namespace_t * AXIS2_CALL axiom_xpath_get_namespace(
- axiom_xpath_context_t *context,
- axis2_char_t *prefix);
-
- /**
- * Clears all registered XPath namespaces
- *
- * @param context XPath Context, must not be null
- */
- void AXIS2_CALL axiom_xpath_clear_namespaces(
- axiom_xpath_context_t *context);
-
- /**
- * Evaluates an XPath expression on streaming XML.
- * Not all expressions can be evaluated on streaming XML.
- * If the expression cannot be evaluated on streaming XML NULL will be \
returned.
- *
- * @param context XPath Context, must not be null
- * @param xpath_expr XPath expression to be evaluated
- */
- axiom_xpath_result_t * AXIS2_CALL axiom_xpath_evaluate_streaming(
- axiom_xpath_context_t *context,
- axiom_xpath_expression_t *xpath_expr);
-
- /**
- * Checks whether the given expression can be evaluated on streaming XML.
- * If it is possible AXIS2_TRUE will be retuned; AXIS2_FALSE otherwise.
- *
- * @param env Axis2 environment, must not be null
- * @param expr Complied XPath expression, must not be null
- * @return A boolean indicating whether the expression can be evaluated on \
streaming XML.
- */
- axis2_bool_t AXIS2_CALL axiom_xpath_streaming_check(
- const axutil_env_t *env,
- axiom_xpath_expression_t* expr);
-
- /**
- * Setup the XPath core function library
- *
- * @param context XPath Context, must not be null
- */
- void AXIS2_CALL axiom_xpath_register_default_functions_set(
- axiom_xpath_context_t *context);
-
- /**
- * Registers a custom XPath function http://www.w3.org/TR/xpath#corelib
- *
- * @param context XPath Context, must not be null
- * @param name Name of the function, must not be null
- * @param func Pointer to the function, must not be null
- */
- void AXIS2_CALL axiom_xpath_register_function(
- axiom_xpath_context_t *context,
- axis2_char_t *name,
- axiom_xpath_function_t func);
-
- /**
- * Retrive a pointer to a registered funciton by the function name.
- * If there is no function registered by the given name, NULL will be returned.
- *
- * @param context XPath Context, must not be null
- * @param name Name of the function, must not be null
- * @return The corresponding function.
- */
- axiom_xpath_function_t AXIS2_CALL axiom_xpath_get_function(
- axiom_xpath_context_t *context,
- axis2_char_t *name);
-
- /** @} */
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif
+
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef XPATH_H
+#define XPATH_H
+
+#include <axiom.h>
+#include <axis2_util.h>
+#include <axiom_soap.h>
+
+#ifdef __cplusplus
+extern "C"
+{
+#endif
+
+ /**
+ * @defgroup axiom_xpath_api api
+ * @ingroup axiom_xpath
+ * @{
+ */
+
+
+ /**
+ * Enable tracing
+ */
+
+#define AXIOM_XPATH_DEBUG
+
+ /**
+ * An error occured while evaluating the xpath expression
+ */
+#define AXIOM_XPATH_EVALUATION_ERROR 0
+
+#define AXIOM_XPATH_ERROR_STREAMING_NOT_SUPPORTED 10
+
+ /* Typedefs */
+
+ /**
+ * XPath expression
+ * It includes the expression as a string and parsed data.
+ */
+ typedef struct axiom_xpath_expression axiom_xpath_expression_t;
+
+ /**
+ * The XPath context
+ * Keeps a reference to the context node or attribute,
+ * XPath expression, environment and result set.
+ */
+ typedef struct axiom_xpath_context axiom_xpath_context_t;
+
+ /**
+ * XPath result set
+ * Contains the result set and other information such as
+ * whether the expression was evaluated successfully.
+ */
+ typedef struct axiom_xpath_result axiom_xpath_result_t;
+
+ /**
+ * XPath result
+ * Stores type and value of the result.
+ */
+ typedef struct axiom_xpath_result_node axiom_xpath_result_node_t;
+
+ /**
+ * XPath result types
+ */
+ typedef enum axiom_xpath_result_type_t
+ {
+ AXIOM_XPATH_TYPE_NODE = 0,
+ AXIOM_XPATH_TYPE_ATTRIBUTE,
+ AXIOM_XPATH_TYPE_NAMESPACE,
+ AXIOM_XPATH_TYPE_TEXT,
+ AXIOM_XPATH_TYPE_NUMBER,
+ AXIOM_XPATH_TYPE_BOOLEAN
+ } axiom_xpath_result_type_t;
+
+ typedef int (*axiom_xpath_function_t)(axiom_xpath_context_t *context,
+ int np);
+
+ /**
+ * XPath expression
+ */
+ struct axiom_xpath_expression
+ {
+ /** XPath expression as a string */
+ axis2_char_t* expr_str;
+
+ /** Length of the expression */
+ int expr_len;
+
+ /** A cursor pointing to the position currently being parsed */
+ int expr_ptr;
+
+ /** Parsed expression in an array list*/
+ axutil_array_list_t *operations;
+
+ /** A pointer to the start operation in operations */
+ int start;
+ };
+
+ /**
+ * XPath context
+ */
+ struct axiom_xpath_context
+ {
+ /** Environment */
+ axutil_env_t *env;
+
+ /** List of namespaces */
+ axutil_hash_t *namespaces;
+
+ /** Set of functions */
+ axutil_hash_t *functions;
+
+ /** Root node */
+ axiom_node_t *root_node;
+
+ /** Context node */
+ axiom_node_t *node;
+
+ /** Context attribute */
+ axiom_attribute_t *attribute;
+
+ /** Context attribute */
+ axiom_namespace_t *ns;
+
+ /** Context position */
+ int position;
+
+ /** Context size
+ * *Does not work location paths due to optimizations */
+ int size;
+
+ /** XPath expression */
+ axiom_xpath_expression_t *expr;
+
+ /** Streaming */
+ axis2_bool_t streaming;
+
+ /** Stack of processed items */
+ axutil_stack_t *stack;
+
+ /* TODO:
+ functions
+ variables
+ etc */
+ };
+
+ /**
+ * XPath result set
+ */
+ struct axiom_xpath_result
+ {
+ /** A flag indicating whether errors occured while evaluting XPath
+ * expression */
+ int flag;
+
+ /** An array list containing the set of results */
+ axutil_array_list_t * nodes;
+ };
+
+ /**
+ * XPath result
+ */
+ struct axiom_xpath_result_node
+ {
+ /** Type of result */
+ axiom_xpath_result_type_t type;
+
+ /** Value */
+ void * value;
+ };
+
+ /**
+ * Compile an XPath expression
+ *
+ * @param env Environment must not be null
+ * @param xpath_expr A pointer to the XPath expression
+ * @return The parsed XPath expression. Returns NULL if an error occured
+ * while parsing.
+ */
+ axiom_xpath_expression_t * AXIS2_CALL axiom_xpath_compile_expression(
+ const axutil_env_t *env,
+ const axis2_char_t* xpath_expr);
+
+ /**
+ * Create an empty XPath context
+ *
+ * @param env Environment must not be null
+ * @param root_node A pointer to the root of the tree
+ * @return The initialized XPath context.
+ */
+ axiom_xpath_context_t * AXIS2_CALL axiom_xpath_context_create(
+ axutil_env_t *env,
+ axiom_node_t * root_node);
+
+ /**
+ * Evaluate an parsed XPath expression. Different expressions could
+ * be evaluated on the same context, and same expression could be
+ * evaluated on multiple trees without recompiling.
+ *
+ * @param context XPath context must not be null
+ * @param xpath_expr XPath expression to be evaluated
+ * @return The set of results.
+ */
+ axiom_xpath_result_t * AXIS2_CALL axiom_xpath_evaluate(
+ axiom_xpath_context_t *context,
+ axiom_xpath_expression_t *xpath_expr);
+
+
+ /**
+ * Convert an XPath result to a boolean.
+ * If the result is a boolean the value of it is returned.
+ * If the result is a number, AXIS2_TRUE is
+ * returned if the value is not equal to 0 and AXIS2_FALSE otherwise.
+ * Otherwise AXIS2_TRUE is returned if the result is not NULL and AXIS2_FALSE \
otherwise. + *
+ * @param env Environment must not be null
+ * @param node A pointer to the XPath result
+ * @return The boolean value.
+ */
+ axis2_bool_t AXIS2_CALL axiom_xpath_cast_node_to_boolean(
+ const axutil_env_t *env,
+ axiom_xpath_result_node_t * node);
+
+ /**
+ * Convert an XPath result to a number.
+ * If the result is a boolean, 1 is returned if it's true and 0 otherwise.
+ * If the result is a number the value of it is returned.
+ * Otherwise AXIS2_TRUE is returned if the result is not NULL and AXIS2_FALSE \
otherwise. + *
+ * @param env Environment must not be null
+ * @param node A pointer to the XPath result
+ * @return The numerical value.
+ */
+ double AXIS2_CALL axiom_xpath_cast_node_to_number(
+ const axutil_env_t *env,
+ axiom_xpath_result_node_t * node);
+
+ /**
+ * Convert an XPath result to text.
+ * If the result is a boolean, "true" is returned if it's true and "false" \
otherwise. + * If the result is a number the text representation of it is \
returned. + * If the result is a text the value of it is returned.
+ * If the result is an axiom node, the text value of it is returned
+ * If the result is an axiom attribue, the text value of it is returned
+ *
+ * @param env Environment must not be null
+ * @param node A pointer to the XPath result
+ * @return The text value.
+ */
+ axis2_char_t * AXIS2_CALL axiom_xpath_cast_node_to_string(
+ const axutil_env_t *env,
+ axiom_xpath_result_node_t * node);
+
+ /**
+ * Convert an XPath result to an axiom node.
+ * If the result is an axiom node it is returned and NULL otherwise.
+ *
+ * @param env Environment must not be null
+ * @param node A pointer to the XPath result
+ * @return The axiom node.
+ */
+ axiom_node_t * AXIS2_CALL axiom_xpath_cast_node_to_axiom_node(
+ const axutil_env_t *env,
+ axiom_xpath_result_node_t * node);
+
+
+ /**
+ * Free XPath context
+ *
+ * @param env Environment must not be null
+ * @param context XPath context must not be null
+ */
+ void AXIS2_CALL axiom_xpath_free_context(
+ const axutil_env_t *env,
+ axiom_xpath_context_t *context);
+
+ /**
+ * Free XPath expression
+ *
+ * @param env Environment must not be null
+ * @param xpath_expr XPath expression must not be null
+ */
+ void AXIS2_CALL axiom_xpath_free_expression(
+ const axutil_env_t *env,
+ axiom_xpath_expression_t * xpath_expr);
+
+ /**
+ * Free XPath result set
+ *
+ * @param env Environment must not be null
+ * @param result XPath result set must not be null
+ */
+ void AXIS2_CALL axiom_xpath_free_result(
+ const axutil_env_t *env,
+ axiom_xpath_result_t* result);
+
+ /**
+ * Registers a XPath namespace
+ *
+ * @param context XPath Context, must not be null
+ * @param ns AXIOM namespace, must not be null
+ */
+ void AXIS2_CALL axiom_xpath_register_namespace(
+ axiom_xpath_context_t *context,
+ axiom_namespace_t *ns);
+
+ /**
+ * Get a registered namespace by the prefix.
+ * If there is no namespace registered by the given prefix NULL will be \
returned + *
+ * @param context XPath Context, must not be null
+ * @param prefix Prefix of the namespace, must not be null
+ * @return The namespace corresponding to the prefix.
+ */
+ axiom_namespace_t * AXIS2_CALL axiom_xpath_get_namespace(
+ axiom_xpath_context_t *context,
+ axis2_char_t *prefix);
+
+ /**
+ * Clears all registered XPath namespaces
+ *
+ * @param context XPath Context, must not be null
+ */
+ void AXIS2_CALL axiom_xpath_clear_namespaces(
+ axiom_xpath_context_t *context);
+
+ /**
+ * Evaluates an XPath expression on streaming XML.
+ * Not all expressions can be evaluated on streaming XML.
+ * If the expression cannot be evaluated on streaming XML NULL will be \
returned. + *
+ * @param context XPath Context, must not be null
+ * @param xpath_expr XPath expression to be evaluated
+ */
+ axiom_xpath_result_t * AXIS2_CALL axiom_xpath_evaluate_streaming(
+ axiom_xpath_context_t *context,
+ axiom_xpath_expression_t *xpath_expr);
+
+ /**
+ * Checks whether the given expression can be evaluated on streaming XML.
+ * If it is possible AXIS2_TRUE will be retuned; AXIS2_FALSE otherwise.
+ *
+ * @param env Axis2 environment, must not be null
+ * @param expr Complied XPath expression, must not be null
+ * @return A boolean indicating whether the expression can be evaluated on \
streaming XML. + */
+ axis2_bool_t AXIS2_CALL axiom_xpath_streaming_check(
+ const axutil_env_t *env,
+ axiom_xpath_expression_t* expr);
+
+ /**
+ * Setup the XPath core function library
+ *
+ * @param context XPath Context, must not be null
+ */
+ void AXIS2_CALL axiom_xpath_register_default_functions_set(
+ axiom_xpath_context_t *context);
+
+ /**
+ * Registers a custom XPath function http://www.w3.org/TR/xpath#corelib
+ *
+ * @param context XPath Context, must not be null
+ * @param name Name of the function, must not be null
+ * @param func Pointer to the function, must not be null
+ */
+ void AXIS2_CALL axiom_xpath_register_function(
+ axiom_xpath_context_t *context,
+ axis2_char_t *name,
+ axiom_xpath_function_t func);
+
+ /**
+ * Retrive a pointer to a registered funciton by the function name.
+ * If there is no function registered by the given name, NULL will be returned.
+ *
+ * @param context XPath Context, must not be null
+ * @param name Name of the function, must not be null
+ * @return The corresponding function.
+ */
+ axiom_xpath_function_t AXIS2_CALL axiom_xpath_get_function(
+ axiom_xpath_context_t *context,
+ axis2_char_t *name);
+
+ /** @} */
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif
Modified: webservices/axis2/trunk/c/axiom/src/xpath/xpath.c
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/axiom/src/xpath/xpath.c?rev=719528&r1=719527&r2=719528&view=diff
==============================================================================
--- webservices/axis2/trunk/c/axiom/src/xpath/xpath.c (original)
+++ webservices/axis2/trunk/c/axiom/src/xpath/xpath.c Thu Nov 20 23:42:36 2008
@@ -16,7 +16,7 @@
* limitations under the License.
*/
-#include "xpath.h"
+#include <axiom_xpath.h>
#include "xpath_internals.h"
#include "xpath_internals_parser.h"
#include "xpath_internals_engine.h"
Modified: webservices/axis2/trunk/c/axiom/src/xpath/xpath_functions.c
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/axiom/src/xpath/xpath_functions.c?rev=719528&r1=719527&r2=719528&view=diff
==============================================================================
--- webservices/axis2/trunk/c/axiom/src/xpath/xpath_functions.c (original)
+++ webservices/axis2/trunk/c/axiom/src/xpath/xpath_functions.c Thu Nov 20 23:42:36 \
2008 @@ -16,8 +16,8 @@
* limitations under the License.
*/
+#include <axiom_xpath.h>
#include "xpath_functions.h"
-#include "xpath.h"
#include "xpath_internals_engine.h"
int axiom_xpath_function_count(axiom_xpath_context_t *context, int np)
Modified: webservices/axis2/trunk/c/axiom/src/xpath/xpath_functions.h
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/axiom/src/xpath/xpath_functions.h?rev=719528&r1=719527&r2=719528&view=diff
==============================================================================
--- webservices/axis2/trunk/c/axiom/src/xpath/xpath_functions.h (original)
+++ webservices/axis2/trunk/c/axiom/src/xpath/xpath_functions.h Thu Nov 20 23:42:36 \
2008 @@ -19,7 +19,7 @@
#ifndef XPATH_FUNCTIONS_H
#define XPATH_FUNCTIONS_H
-#include "xpath.h"
+#include <axiom_xpath.h>
#ifdef __cplusplus
extern "C"
Modified: webservices/axis2/trunk/c/axiom/src/xpath/xpath_internals.c
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/axiom/src/xpath/xpath_internals.c?rev=719528&r1=719527&r2=719528&view=diff
==============================================================================
--- webservices/axis2/trunk/c/axiom/src/xpath/xpath_internals.c (original)
+++ webservices/axis2/trunk/c/axiom/src/xpath/xpath_internals.c Thu Nov 20 23:42:36 \
2008 @@ -16,7 +16,7 @@
* limitations under the License.
*/
-#include "xpath.h"
+#include <axiom_xpath.h>
#include "xpath_internals.h"
/* Make a copy of the xpath expression */
Modified: webservices/axis2/trunk/c/axiom/src/xpath/xpath_internals_engine.c
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/axiom/src/xpath/xpath_internals_engine.c?rev=719528&r1=719527&r2=719528&view=diff
==============================================================================
--- webservices/axis2/trunk/c/axiom/src/xpath/xpath_internals_engine.c (original)
+++ webservices/axis2/trunk/c/axiom/src/xpath/xpath_internals_engine.c Thu Nov 20 \
23:42:36 2008 @@ -16,7 +16,7 @@
* limitations under the License.
*/
-#include "xpath.h"
+#include <axiom_xpath.h>
#include "xpath_internals.h"
#include "xpath_internals_engine.h"
#include "xpath_internals_iterators.h"
Modified: webservices/axis2/trunk/c/axiom/src/xpath/xpath_internals_iterators.c
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/axiom/src/xpath/xpath_internals_iterators.c?rev=719528&r1=719527&r2=719528&view=diff
==============================================================================
--- webservices/axis2/trunk/c/axiom/src/xpath/xpath_internals_iterators.c (original)
+++ webservices/axis2/trunk/c/axiom/src/xpath/xpath_internals_iterators.c Thu Nov 20 \
23:42:36 2008 @@ -16,7 +16,7 @@
* limitations under the License.
*/
-#include "xpath.h"
+#include <axiom_xpath.h>
#include "xpath_internals.h"
#include "xpath_internals_engine.h"
#include "xpath_internals_iterators.h"
Modified: webservices/axis2/trunk/c/axiom/src/xpath/xpath_internals_iterators.h
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/axiom/src/xpath/xpath_internals_iterators.h?rev=719528&r1=719527&r2=719528&view=diff
==============================================================================
--- webservices/axis2/trunk/c/axiom/src/xpath/xpath_internals_iterators.h (original)
+++ webservices/axis2/trunk/c/axiom/src/xpath/xpath_internals_iterators.h Thu Nov 20 \
23:42:36 2008 @@ -19,7 +19,7 @@
#ifndef XPATH_INTERNALS_ITERATORS_H
#define XPATH_INTERNALS_ITERATORS_H
-#include "xpath.h"
+#include <axiom_xpath.h>
#ifdef __cplusplus
extern "C"
Modified: webservices/axis2/trunk/c/axiom/src/xpath/xpath_internals_parser.c
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/axiom/src/xpath/xpath_internals_parser.c?rev=719528&r1=719527&r2=719528&view=diff
==============================================================================
--- webservices/axis2/trunk/c/axiom/src/xpath/xpath_internals_parser.c (original)
+++ webservices/axis2/trunk/c/axiom/src/xpath/xpath_internals_parser.c Thu Nov 20 \
23:42:36 2008 @@ -16,7 +16,7 @@
* limitations under the License.
*/
-#include "xpath.h"
+#include <axiom_xpath.h>
#include "xpath_internals.h"
#include "xpath_internals_parser.h"
Modified: webservices/axis2/trunk/c/axiom/src/xpath/xpath_streaming.c
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/axiom/src/xpath/xpath_streaming.c?rev=719528&r1=719527&r2=719528&view=diff
==============================================================================
--- webservices/axis2/trunk/c/axiom/src/xpath/xpath_streaming.c (original)
+++ webservices/axis2/trunk/c/axiom/src/xpath/xpath_streaming.c Thu Nov 20 23:42:36 \
2008 @@ -16,7 +16,7 @@
* limitations under the License.
*/
-#include "xpath.h"
+#include <axiom_xpath.h>
#include "xpath_streaming.h"
#include "xpath_internals.h"
#include "xpath_internals_engine.h"
Modified: webservices/axis2/trunk/c/axiom/test/xpath/test_xpath.c
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/axiom/test/xpath/test_xpath.c?rev=719528&r1=719527&r2=719528&view=diff
==============================================================================
--- webservices/axis2/trunk/c/axiom/test/xpath/test_xpath.c (original)
+++ webservices/axis2/trunk/c/axiom/test/xpath/test_xpath.c Thu Nov 20 23:42:36 2008
@@ -25,8 +25,7 @@
#include <axiom.h>
#include <axis2_util.h>
#include <axiom_soap.h>
-
-#include "xpath.h"
+#include <axiom_xpath.h>
/* Function headers */
axiom_node_t *build_test_xml(const axutil_env_t *env);
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic