|
nodeset
Synopsis
enum xmlSecNodeSetType;
enum xmlSecNodeSetOp;
struct xmlSecNodeSet;
int (*xmlSecNodeSetWalkCallback) (xmlSecNodeSetPtr nset,
xmlNodePtr cur,
xmlNodePtr parent,
void *data);
xmlSecNodeSetPtr xmlSecNodeSetCreate (xmlDocPtr doc,
xmlNodeSetPtr nodes,
xmlSecNodeSetType type);
void xmlSecNodeSetDestroy (xmlSecNodeSetPtr nset);
void xmlSecNodeSetDocDestroy (xmlSecNodeSetPtr nset);
int xmlSecNodeSetContains (xmlSecNodeSetPtr nset,
xmlNodePtr node,
xmlNodePtr parent);
xmlSecNodeSetPtr xmlSecNodeSetAdd (xmlSecNodeSetPtr nset,
xmlSecNodeSetPtr newNSet,
xmlSecNodeSetOp op);
xmlSecNodeSetPtr xmlSecNodeSetAddList (xmlSecNodeSetPtr nset,
xmlSecNodeSetPtr newNSet,
xmlSecNodeSetOp op);
xmlSecNodeSetPtr xmlSecNodeSetGetChildren (xmlDocPtr doc,
const xmlNodePtr parent,
int withComments,
int invert);
int xmlSecNodeSetWalk (xmlSecNodeSetPtr nset,
xmlSecNodeSetWalkCallback walkFunc,
void *data);
int xmlSecNodeSetDumpTextNodes (xmlSecNodeSetPtr nset,
xmlOutputBufferPtr out);
void xmlSecNodeSetDebugDump (xmlSecNodeSetPtr nset,
FILE *output); |
Details
enum xmlSecNodeSetType
typedef enum {
xmlSecNodeSetNormal = 0,
xmlSecNodeSetInvert,
xmlSecNodeSetTree,
xmlSecNodeSetTreeWithoutComments,
xmlSecNodeSetTreeInvert,
xmlSecNodeSetTreeWithoutCommentsInvert,
xmlSecNodeSetList
} xmlSecNodeSetType; |
The basic nodes sets types.
enum xmlSecNodeSetOp
typedef enum {
xmlSecNodeSetIntersection = 0,
xmlSecNodeSetSubtraction,
xmlSecNodeSetUnion
} xmlSecNodeSetOp; |
The simple nodes sets operations.
struct xmlSecNodeSet
struct xmlSecNodeSet {
xmlNodeSetPtr nodes;
xmlDocPtr doc;
int destroyDoc;
xmlSecNodeSetType type;
xmlSecNodeSetOp op;
xmlSecNodeSetPtr next;
xmlSecNodeSetPtr prev;
xmlSecNodeSetPtr children;
}; |
The enchanced nodes set.
xmlSecNodeSetWalkCallback ()
int (*xmlSecNodeSetWalkCallback) (xmlSecNodeSetPtr nset,
xmlNodePtr cur,
xmlNodePtr parent,
void *data); |
The callback function called once per each node in the nodes set.
nset : |
the pointer to xmlSecNodeSet structure. |
cur : |
the pointer current XML node. |
parent : |
the pointer to the cur parent node. |
data : |
the pointer to application specific data. |
Returns : |
0 on success or a negative value if an error occurs
an walk procedure should be interrupted. |
xmlSecNodeSetCreate ()
xmlSecNodeSetPtr xmlSecNodeSetCreate (xmlDocPtr doc,
xmlNodeSetPtr nodes,
xmlSecNodeSetType type); |
Creates new nodes set. Caller is responsible for freeng returend object
by calling xmlSecNodeSetDestroy function.
doc : |
the pointer to parent XML document. |
nodes : |
the list of nodes. |
type : |
the nodes set type. |
Returns : |
pointer to newly allocated node set or NULL if an error occurs. |
xmlSecNodeSetDocDestroy ()
Instructs node set to destroy nodes parent doc when node set is destroyed.
nset : |
the pointer to node set. |
xmlSecNodeSetContains ()
int xmlSecNodeSetContains (xmlSecNodeSetPtr nset,
xmlNodePtr node,
xmlNodePtr parent); |
Checks whether the node is in the nodes set or not.
nset : |
the pointer to node set. |
node : |
the pointer to XML node to check. |
parent : |
the pointer to node parent node. |
Returns : |
1 if the node is in the nodes set nset, 0 if it is not
and a negative value if an error occurs. |
xmlSecNodeSetAdd ()
Adds newNSet to the nset using operation op.
nset : |
the pointer to currrent nodes set (or NULL). |
newNSet : |
the pointer to new nodes set. |
op : |
the operation type. |
Returns : |
the pointer to combined nodes set or NULL if an error
occurs. |
xmlSecNodeSetAddList ()
Adds newNSet to the nset as child using operation op.
nset : |
the pointer to currrent nodes set (or NULL). |
newNSet : |
the pointer to new nodes set. |
op : |
the operation type. |
Returns : |
the pointer to combined nodes set or NULL if an error
occurs. |
xmlSecNodeSetGetChildren ()
xmlSecNodeSetPtr xmlSecNodeSetGetChildren (xmlDocPtr doc,
const xmlNodePtr parent,
int withComments,
int invert); |
Creates a new nodes set that contains:
- if withComments is not 0 and invert is 0:
all nodes in the parent subtree;
- if withComments is 0 and invert is 0:
all nodes in the parent subtree except comment nodes;
- if withComments is not 0 and invert not is 0:
all nodes in the doc except nodes in the parent subtree;
- if withComments is 0 and invert is 0:
all nodes in the doc except nodes in the parent subtree
and comment nodes.
xmlSecNodeSetWalk ()
Calls the function walkFunc once per each node in the nodes set nset.
If the walkFunc returns a negative value, then the walk procedure
is interrupted.
nset : |
the pointer to node set. |
walkFunc : |
the callback functions. |
data : |
the application specific data passed to the walkFunc. |
Returns : |
0 on success or a negative value if an error occurs. |
xmlSecNodeSetDumpTextNodes ()
Dumps content of all the text nodes from nset to out.
nset : |
the pointer to node set. |
out : |
the output buffer. |
Returns : |
0 on success or a negative value otherwise. |
xmlSecNodeSetDebugDump ()
Prints information about nset to the output.
|
Aleksey Sanin
|
|