Main Page | Modules | File List | Globals

Low-level node manipulation module


Typedefs

typedef _gdsl_node * _gdsl_node_t
 GDSL low-level doubly linked node type.


Functions

_gdsl_node_t _gdsl_node_alloc (void)
 Create a new low-level node.

gdsl_element_t _gdsl_node_free (_gdsl_node_t NODE)
 Destroy a low-level node.

_gdsl_node_t _gdsl_node_get_succ (const _gdsl_node_t NODE)
 Get the successor of a low-level node.

_gdsl_node_t _gdsl_node_get_pred (const _gdsl_node_t NODE)
 Get the predecessor of a low-level node.

gdsl_element_t _gdsl_node_get_content (const _gdsl_node_t NODE)
 Get the content of a low-level node.

void _gdsl_node_set_succ (_gdsl_node_t NODE, const _gdsl_node_t SUCC)
 Set the successor of a low-level node.

void _gdsl_node_set_pred (_gdsl_node_t NODE, const _gdsl_node_t PRED)
 Set the predecessor of a low-level node.

void _gdsl_node_set_content (_gdsl_node_t NODE, const gdsl_element_t CONTENT)
 Set the content of a low-level node.

void _gdsl_node_link (_gdsl_node_t NODE1, _gdsl_node_t NODE2)
 Link two low-level nodes together.

void _gdsl_node_unlink (_gdsl_node_t NODE1, _gdsl_node_t NODE2)
 Unlink two low-level nodes.

void _gdsl_node_write (const _gdsl_node_t NODE, const gdsl_write_func_t WRITE_F, FILE *OUTPUT_FILE, void *USER_DATA)
 Write the content of a low-level node to a file.

void _gdsl_node_write_xml (const _gdsl_node_t NODE, const gdsl_write_func_t WRITE_F, FILE *OUTPUT_FILE, void *USER_DATA)
 Write the content of a low-level node to a file into XML.

void _gdsl_node_dump (const _gdsl_node_t NODE, const gdsl_write_func_t WRITE_F, FILE *OUTPUT_FILE, void *USER_DATA)
 Dump the internal structure of a low-level node to a file.


Typedef Documentation

typedef struct _gdsl_node* _gdsl_node_t
 

GDSL low-level doubly linked node type.

This type is voluntary opaque. Variables of this kind could'nt be directly used, but by the functions of this module.

Definition at line 49 of file _gdsl_node.h.


Function Documentation

_gdsl_node_t _gdsl_node_alloc void   ) 
 

Create a new low-level node.

Allocate a new low-level node data structure.

Note:
Complexity: O( 1 )
Precondition:
nothing.
Returns:
the newly allocated low-level node in case of success.

NULL in case of insufficient memory.

See also:
_gdsl_node_free()

void _gdsl_node_dump const _gdsl_node_t  NODE,
const gdsl_write_func_t  WRITE_F,
FILE *  OUTPUT_FILE,
void *  USER_DATA
 

Dump the internal structure of a low-level node to a file.

Dump the structure of the low-level node NODE to OUTPUT_FILE. If WRITE_F != NULL, then uses WRITE_F function to write NODE's content to OUTPUT_FILE. Additionnal USER_DATA argument could be passed to WRITE_F.

Note:
Complexity: O( 1 )
Precondition:
NODE != NULL & OUTPUT_FILE != NULL
Parameters:
NODE The low-level node to dump.
WRITE_F The write function.
OUTPUT_FILE The file where to write NODE's content.
USER_DATA User's datas passed to WRITE_F.
See also:
_gdsl_node_write()

_gdsl_node_write_xml()

gdsl_element_t _gdsl_node_free _gdsl_node_t  NODE  ) 
 

Destroy a low-level node.

Deallocate the low-level node NODE.

Note:
O( 1 )
Precondition:
NODE != NULL
Returns:
the content of NODE (without modification).
See also:
_gdsl_node_alloc()

gdsl_element_t _gdsl_node_get_content const _gdsl_node_t  NODE  ) 
 

Get the content of a low-level node.

Note:
Complexity: O( 1 )
Precondition:
NODE != NULL
Parameters:
NODE The low-level node which we want to get the content from.
Returns:
the content of the low-level node NODE if NODE has a content.

NULL if the low-level node NODE has no content.

See also:
_gdsl_node_set_content()

_gdsl_node_t _gdsl_node_get_pred const _gdsl_node_t  NODE  ) 
 

Get the predecessor of a low-level node.

Note:
Complexity: O( 1 )
Precondition:
NODE != NULL
Parameters:
NODE The low-level node which we want to get the predecessor from.
Returns:
the predecessor of the low-level node NODE if NODE has a predecessor.

NULL if the low-level node NODE has no predecessor.

See also:
_gdsl_node_get_succ()

_gdsl_node_set_succ()

_gdsl_node_set_pred()

_gdsl_node_t _gdsl_node_get_succ const _gdsl_node_t  NODE  ) 
 

Get the successor of a low-level node.

Note:
Complexity: O( 1 )
Precondition:
NODE != NULL
Parameters:
NODE The low-level node which we want to get the successor from.
Returns:
the sucessor of the low-level node NODE if NODE has a successor.

NULL if the low-level node NODE has no successor.

See also:
_gdsl_node_get_pred()

_gdsl_node_set_succ()

_gdsl_node_set_pred()

void _gdsl_node_link _gdsl_node_t  NODE1,
_gdsl_node_t  NODE2
 

Link two low-level nodes together.

Link the two low-level nodes NODE1 and NODE2 together. After the link, NODE1's successor is NODE2 and NODE2's predecessor is NODE1.

Note:
Complexity: O( 1 )
Precondition:
NODE1 != NULL & NODE2 != NULL
Parameters:
NODE1 The first low-level node to link to NODE2.
NODE2 The second low-level node to link from NODE1.
See also:
_gdsl_node_unlink()

void _gdsl_node_set_content _gdsl_node_t  NODE,
const gdsl_element_t  CONTENT
 

Set the content of a low-level node.

Modifie the content of the low-level node NODE to CONTENT.

Note:
Complexity: O( 1 )
Precondition:
NODE != NULL
Parameters:
NODE The low-level node which want to change the content from.
CONTENT The new content of NODE.
See also:
_gdsl_node_get_content()

void _gdsl_node_set_pred _gdsl_node_t  NODE,
const _gdsl_node_t  PRED
 

Set the predecessor of a low-level node.

Modifie the predecessor of the low-level node NODE to PRED.

Note:
Complexity: O( 1 )
Precondition:
NODE != NULL
Parameters:
NODE The low-level node which want to change the predecessor from.
PRED The new predecessor of NODE.
See also:
_gdsl_node_get_pred()

void _gdsl_node_set_succ _gdsl_node_t  NODE,
const _gdsl_node_t  SUCC
 

Set the successor of a low-level node.

Modifie the sucessor of the low-level node NODE to SUCC.

Note:
Complexity: O( 1 )
Precondition:
NODE != NULL
Parameters:
NODE The low-level node which want to change the successor from.
SUCC The new successor of NODE.
See also:
_gdsl_node_get_succ()

void _gdsl_node_unlink _gdsl_node_t  NODE1,
_gdsl_node_t  NODE2
 

Unlink two low-level nodes.

Unlink the two low-level nodes NODE1 and NODE2. After the unlink, NODE1's successor is NULL and NODE2's predecessor is NULL.

Note:
Complexity: O( 1 )
Precondition:
NODE1 != NULL & NODE2 != NULL
Parameters:
NODE1 The first low-level node to unlink from NODE2.
NODE2 The second low-level node to unlink from NODE1.
See also:
_gdsl_node_link()

void _gdsl_node_write const _gdsl_node_t  NODE,
const gdsl_write_func_t  WRITE_F,
FILE *  OUTPUT_FILE,
void *  USER_DATA
 

Write the content of a low-level node to a file.

Write the content of the low-level node NODE to OUTPUT_FILE, using WRITE_F function. Additionnal USER_DATA argument could be passed to WRITE_F.

Note:
Complexity: O( 1 )
Precondition:
NODE != NULL & WRITE_F != NULL & OUTPUT_FILE != NULL
Parameters:
NODE The low-level node to write.
WRITE_F The write function.
OUTPUT_FILE The file where to write NODE's content.
USER_DATA User's datas passed to WRITE_F.
See also:
_gdsl_node_write_xml()

_gdsl_node_dump()

void _gdsl_node_write_xml const _gdsl_node_t  NODE,
const gdsl_write_func_t  WRITE_F,
FILE *  OUTPUT_FILE,
void *  USER_DATA
 

Write the content of a low-level node to a file into XML.

Write the content of the low-level node NODE to OUTPUT_FILE, into XML language. If WRITE_F != NULL, then uses WRITE_F function to write NODE's content to OUTPUT_FILE. Additionnal USER_DATA argument could be passed to WRITE_F.

Note:
Complexity: O( 1 )
Precondition:
NODE != NULL & OUTPUT_FILE != NULL
Parameters:
NODE The low-level node to write.
WRITE_F The write function.
OUTPUT_FILE The file where to write NODE's content.
USER_DATA User's datas passed to WRITE_F.
See also:
_gdsl_node_write()

_gdsl_node_dump()


Generated on Sun Oct 3 16:15:50 2004 for GDSL by doxygen 1.3.5