XQC_DynamicContext Struct Reference

#include <xqc.h>

List of all members.

Public Attributes

XQC_Error(* set_variable )(XQC_DynamicContext *context, const char *uri, const char *name, XQC_Sequence *value)
 Sets the external variable to the value given.
XQC_Error(* get_variable )(const XQC_DynamicContext *context, const char *uri, const char *name, XQC_Sequence **value)
XQC_Error(* set_context_item )(XQC_DynamicContext *context, XQC_Sequence *value)
 Sets the context item to the current item of the XQC_Sequence given.
XQC_Error(* get_context_item )(const XQC_DynamicContext *context, XQC_Sequence **value)
XQC_Error(* set_implicit_timezone )(XQC_DynamicContext *context, int timezone)
 The timezone given must be between -840 and +840 minutes (-14 and +14 hours).
XQC_Error(* get_implicit_timezone )(const XQC_DynamicContext *context, int *timezone)
XQC_Error(* set_error_handler )(XQC_DynamicContext *context, XQC_ErrorHandler *handler)
XQC_Error(* get_error_handler )(const XQC_DynamicContext *context, XQC_ErrorHandler **handler)
void *(* get_interface )(const XQC_DynamicContext *context, const char *name)
 Called to retrieve an implementation specific interface.
void(* free )(XQC_DynamicContext *context)
 Called to free the resources associated with the XQC_DynamicContext.

Member Data Documentation

void(* XQC_DynamicContext::free)(XQC_DynamicContext *context)

Called to free the resources associated with the XQC_DynamicContext.

Parameters:
context The XQC_DynamicContext that this function pointer is a member of
XQC_Error(* XQC_DynamicContext::get_context_item)(const XQC_DynamicContext *context, XQC_Sequence **value)
XQC_Error(* XQC_DynamicContext::get_error_handler)(const XQC_DynamicContext *context, XQC_ErrorHandler **handler)
XQC_Error(* XQC_DynamicContext::get_implicit_timezone)(const XQC_DynamicContext *context, int *timezone)
void*(* XQC_DynamicContext::get_interface)(const XQC_DynamicContext *context, const char *name)

Called to retrieve an implementation specific interface.

Parameters:
context The XQC_DynamicContext that this function pointer is a member of
name The name that identifies the interface to return
Returns:
A pointer to the interface, or 0 if the name is not recognized by this implementation of XQC.
XQC_Error(* XQC_DynamicContext::get_variable)(const XQC_DynamicContext *context, const char *uri, const char *name, XQC_Sequence **value)
XQC_Error(* XQC_DynamicContext::set_context_item)(XQC_DynamicContext *context, XQC_Sequence *value)

Sets the context item to the current item of the XQC_Sequence given.

The user remains responsible for freeing the XQC_Sequence passed as the value - the XQC_Sequence must not be freed until the XQC_DynamicContext has been freed or it's context item set to a different value.

Parameters:
context The XQC_DynamicContext that this function pointer is a member of
value The XQC_Sequence value for the context item, or 0 to remove the existing context item value.
Return values:
XQC_NO_ERROR 
XQC_INTERNAL_ERROR 
XQC_NO_CURRENT_ITEM if there is no current item in the value.
Todo:

What happens if the context item value is the wrong type?

Do we allow the value to come from another implementation?

XQC_Error(* XQC_DynamicContext::set_error_handler)(XQC_DynamicContext *context, XQC_ErrorHandler *handler)
XQC_Error(* XQC_DynamicContext::set_implicit_timezone)(XQC_DynamicContext *context, int timezone)

The timezone given must be between -840 and +840 minutes (-14 and +14 hours).

Parameters:
timezone The implicit timezone to set, as an offset in minutes from GMT
XQC_Error(* XQC_DynamicContext::set_variable)(XQC_DynamicContext *context, const char *uri, const char *name, XQC_Sequence *value)

Sets the external variable to the value given.

The implementation takes ownership of the XQC_Sequence passed in, and is responsible for freeing it.

Parameters:
context The XQC_DynamicContext that this function pointer is a member of
uri The namespace URI of the external variable to set.
name The name of the external variable to set - this should be a valid lexical xs:QName. If uri is 0 and name has a prefix, that prefix is resolved using the in-scope namespace prefixes for the expression.
value The XQC_Sequence value for the variable, or 0 to remove the existing binding for the variable.
Return values:
XQC_NO_ERROR 
XQC_INTERNAL_ERROR 
Todo:

What happens if the variable value is the wrong type?

Do we allow the value to come from another implementation?


The documentation for this struct was generated from the following file:

Generated on Fri Mar 5 12:47:50 2010 for XQC - XQuery C API by  doxygen 1.6.1