<libroxml  version="2.3.0" />
contact: tristan.lelong@libroxml.net
Macros
roxml-defines.h File Reference

internal header for libroxml.so More...

Go to the source code of this file.

Macros

#define ROXML_PATH_OR   "|"
 
#define ROXML_PATH_AND   "&"
 
#define ROXML_COND_OR   "or"
 
#define ROXML_COND_AND   "and"
 
#define ROXML_OPERATOR_OR   1
 
#define ROXML_OPERATOR_AND   2
 
#define ROXML_OPERATOR_INF   3
 
#define ROXML_OPERATOR_SUP   4
 
#define ROXML_OPERATOR_EINF   5
 
#define ROXML_OPERATOR_ESUP   6
 
#define ROXML_OPERATOR_DIFF   7
 
#define ROXML_OPERATOR_EQU   8
 
#define ROXML_OPERATOR_ADD   9
 
#define ROXML_OPERATOR_SUB   10
 
#define ROXML_OPERATOR_MUL   11
 
#define ROXML_OPERATOR_DIV   12
 
#define ROXML_FUNC_INTCOMP   1
 
#define ROXML_FUNC_STRCOMP   2
 
#define ROXML_FUNC_POS   3
 
#define ROXML_FUNC_FIRST   4
 
#define ROXML_FUNC_LAST   5
 
#define ROXML_FUNC_TEXT   6
 
#define ROXML_FUNC_NODE   7
 
#define ROXML_FUNC_COMMENT   8
 
#define ROXML_FUNC_PI   9
 
#define ROXML_FUNC_XPATH   10
 
#define ROXML_FUNC_NSURI   11
 
#define ROXML_FUNC_POS_STR   "position()"
 
#define ROXML_FUNC_FIRST_STR   "first()"
 
#define ROXML_FUNC_LAST_STR   "last()"
 
#define ROXML_FUNC_NSURI_STR   "namespace-uri()"
 
#define ROXML_FUNC_TEXT_STR   "text()"
 
#define ROXML_FUNC_NODE_STR   "node()"
 
#define ROXML_FUNC_COMMENT_STR   "comment()"
 
#define ROXML_FUNC_PI_STR   "processing-instruction()"
 
#define MAX_NS_LEN   128
 
#define ROXML_BULK_READ   4096
 
#define ROXML_BASE_LEN   512
 
#define ROXML_ID_CHILD   0
 
#define ROXML_ID_DESC_O_SELF   1
 
#define ROXML_ID_SELF   2
 
#define ROXML_ID_PARENT   3
 
#define ROXML_ID_ATTR   4
 
#define ROXML_ID_DESC   5
 
#define ROXML_ID_ANC   6
 
#define ROXML_ID_NEXT_SIBL   7
 
#define ROXML_ID_PREV_SIBL   8
 
#define ROXML_ID_NEXT   9
 
#define ROXML_ID_PREV   10
 
#define ROXML_ID_NS   11
 
#define ROXML_ID_ANC_O_SELF   12
 
#define ROXML_L_CHILD   "child::"
 
#define ROXML_L_DESC_O_SELF   "descendant-or-self::"
 
#define ROXML_L_SELF   "self::"
 
#define ROXML_L_PARENT   "parent::"
 
#define ROXML_L_ATTR   "attribute::"
 
#define ROXML_L_DESC   "descendant::"
 
#define ROXML_L_ANC   "ancestor::"
 
#define ROXML_L_NEXT_SIBL   "following-sibling::"
 
#define ROXML_L_PREV_SIBL   "preceding-sibling::"
 
#define ROXML_L_NEXT   "following::"
 
#define ROXML_L_PREV   "preceding::"
 
#define ROXML_L_NS   "namespace::"
 
#define ROXML_L_ANC_O_SELF   "ancestor-or-self::"
 
#define ROXML_S_CHILD
 
#define ROXML_S_DESC_O_SELF   ""
 
#define ROXML_S_SELF   "."
 
#define ROXML_S_PARENT   ".."
 
#define ROXML_S_ATTR   "@"
 
#define ROXML_DIRECT   0
 
#define ROXML_DESC_ONLY   1
 
#define ROXML_DESC_O_SELF   2
 
#define ROXML_REQTABLE_ID   0
 
#define ROXML_NS_ID   1
 
#define ROXML_XPATH_FIRST_ID   16
 
#define PTR_NONE   -1
 
#define PTR_VOID   0
 
#define PTR_CHAR   2
 
#define PTR_CHAR_STAR   3
 
#define PTR_NODE   4
 
#define PTR_NODE_STAR   5
 
#define PTR_INT   6
 
#define PTR_INT_STAR   7
 
#define PTR_NODE_RESULT   8
 
#define PTR_IS_STAR(a)   ((a)->type % 2)
 
#define ROXML_FILE   0x01
 
#define ROXML_BUFF   0x02
 
#define ROXML_PENDING   0x04
 
#define ROXML_INVALID   0x03
 
#define STATE_NODE_NONE   0
 
#define STATE_NODE_BEG   1
 
#define STATE_NODE_NAME   2
 
#define STATE_NODE_END   3
 
#define STATE_NODE_STRING   4
 
#define STATE_NODE_ARG   5
 
#define STATE_NODE_ARGVAL   6
 
#define STATE_NODE_SEP   7
 
#define STATE_NODE_PI   8
 
#define STATE_NODE_SINGLE   9
 
#define STATE_NODE_ATTR   10
 
#define STATE_NODE_CONTENT   11
 
#define STATE_NODE_COMMENT_BEG   12
 
#define STATE_NODE_COMMENT   14
 
#define STATE_NODE_COMMENT_END   15
 
#define STATE_NODE_CDATA_BEG   16
 
#define STATE_NODE_CDATA   22
 
#define STATE_NODE_CDATA_END   23
 
#define MODE_COMMENT_NONE   0
 
#define MODE_COMMENT_QUOTE   1
 
#define MODE_COMMENT_DQUOTE   2
 
#define STATE_INSIDE_ARG_BEG   0
 
#define STATE_INSIDE_ARG   1
 
#define STATE_INSIDE_VAL_BEG   2
 
#define STATE_INSIDE_VAL   3
 
#define ROXML_WHITE(n)   ((n==' ')||(n=='\t')||(n=='\n')||(n=='\r'))
 

Detailed Description

internal header for libroxml.so

This is the internal header file used by roxml.c

Author
blunderer blund.nosp@m.erer.nosp@m.@blun.nosp@m.dere.nosp@m.r.org
Date
23 Dec 2008

This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version. The author added a static linking exception, see License.txt.

This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA

Definition in file roxml-defines.h.

Macro Definition Documentation

#define MAX_NS_LEN   128

constant for namespace lenght

Definition at line 76 of file roxml-defines.h.

#define MODE_COMMENT_DQUOTE   2

mode double quoted in state machine

Definition at line 389 of file roxml-defines.h.

#define MODE_COMMENT_NONE   0

mode init in state machine

Definition at line 375 of file roxml-defines.h.

#define MODE_COMMENT_QUOTE   1

mode quoted in state machine

Definition at line 382 of file roxml-defines.h.

#define PTR_CHAR   2

constant for char pointers

Definition at line 165 of file roxml-defines.h.

#define PTR_CHAR_STAR   3

constant for char table pointers

Definition at line 172 of file roxml-defines.h.

#define PTR_INT   6

constant for int pointer

Definition at line 193 of file roxml-defines.h.

#define PTR_INT_STAR   7

constant for int table pointers

Definition at line 200 of file roxml-defines.h.

#define PTR_IS_STAR (   a)    ((a)->type % 2)

macro returning if a memory_cell is a star cell

Definition at line 214 of file roxml-defines.h.

#define PTR_NODE   4

constant for node pointers

Definition at line 179 of file roxml-defines.h.

#define PTR_NODE_RESULT   8

constant for node table pointers where node are not to delete

Definition at line 207 of file roxml-defines.h.

#define PTR_NODE_STAR   5

constant for node table pointers

Definition at line 186 of file roxml-defines.h.

#define PTR_NONE   -1

constant for void pointers

Definition at line 151 of file roxml-defines.h.

#define PTR_VOID   0

constant for void pointers

Definition at line 158 of file roxml-defines.h.

#define ROXML_BASE_LEN   512

This is the max size for XML objects (node name, attribute name and values...) It is caused by the split of the XML file for parsing: 512 bytes are reserved as security to handle splitting inside an XML object. This is also the len of internal buffers. If a requested buffer is bigger, then a malloc/free will occur and may slow down libroxml.

Definition at line 101 of file roxml-defines.h.

#define ROXML_BUFF   0x02

constant for buffer document

Definition at line 228 of file roxml-defines.h.

#define ROXML_BULK_READ   4096

This is the internal buffer size for chunk of xml files

Definition at line 86 of file roxml-defines.h.

#define ROXML_FILE   0x01

constant for argument node

Definition at line 221 of file roxml-defines.h.

#define ROXML_INVALID   0x03

constant for invalid node

Definition at line 242 of file roxml-defines.h.

#define ROXML_PENDING   0x04

constant for pending node

Definition at line 235 of file roxml-defines.h.

#define ROXML_WHITE (   n)    ((n==' ')||(n=='\t')||(n=='\n')||(n=='\r'))

save current document position and recall to node

Definition at line 424 of file roxml-defines.h.

#define STATE_INSIDE_ARG   1

inside node state arg name

Definition at line 403 of file roxml-defines.h.

#define STATE_INSIDE_ARG_BEG   0

inside node state begining (attribute declaration)

Definition at line 396 of file roxml-defines.h.

#define STATE_INSIDE_VAL   3

inside node state arg value

Definition at line 417 of file roxml-defines.h.

#define STATE_INSIDE_VAL_BEG   2

inside node state arg value

Definition at line 410 of file roxml-defines.h.

#define STATE_NODE_ARG   5

state for the state machine for attribute name reading

Definition at line 284 of file roxml-defines.h.

#define STATE_NODE_ARGVAL   6

state for the state machine for attribute value reading

Definition at line 291 of file roxml-defines.h.

#define STATE_NODE_ATTR   10

state for the state machine for attribut reading

Definition at line 319 of file roxml-defines.h.

#define STATE_NODE_BEG   1

state for the state machine for begining of a node

Definition at line 256 of file roxml-defines.h.

#define STATE_NODE_CDATA   22

state for the state machine for separator reading

Definition at line 361 of file roxml-defines.h.

#define STATE_NODE_CDATA_BEG   16

state for the state machine for separator reading

Definition at line 354 of file roxml-defines.h.

#define STATE_NODE_CDATA_END   23

state for the state machine for separator reading

Definition at line 368 of file roxml-defines.h.

#define STATE_NODE_COMMENT   14

state for the state machine for separator reading

Definition at line 340 of file roxml-defines.h.

#define STATE_NODE_COMMENT_BEG   12

state for the state machine for separator reading

Definition at line 333 of file roxml-defines.h.

#define STATE_NODE_COMMENT_END   15

state for the state machine for separator reading

Definition at line 347 of file roxml-defines.h.

#define STATE_NODE_CONTENT   11

state for the state machine for content read

Definition at line 326 of file roxml-defines.h.

#define STATE_NODE_END   3

state for the state machine for end of node

Definition at line 270 of file roxml-defines.h.

#define STATE_NODE_NAME   2

state for the state machine for name read

Definition at line 263 of file roxml-defines.h.

#define STATE_NODE_NONE   0

state for the state machine for init

Definition at line 249 of file roxml-defines.h.

#define STATE_NODE_PI   8

state for the state machine for separator reading

Definition at line 305 of file roxml-defines.h.

#define STATE_NODE_SEP   7

state for the state machine for separator reading

Definition at line 298 of file roxml-defines.h.

#define STATE_NODE_SINGLE   9

state for the state machine for single nodes

Definition at line 312 of file roxml-defines.h.

#define STATE_NODE_STRING   4

state for the state machine for string reading

Definition at line 277 of file roxml-defines.h.