loudmouth/lm-message-node.h
changeset 710 ea3137a59c2b
parent 690 7ccf2113ec5f
equal deleted inserted replaced
709:bdcdb9b34992 710:ea3137a59c2b
    26 #include <glib.h>
    26 #include <glib.h>
    27 
    27 
    28 G_BEGIN_DECLS
    28 G_BEGIN_DECLS
    29 
    29 
    30 /**
    30 /**
       
    31  * LmMessageNodeAttribute:
       
    32  * @name: attribute name
       
    33  * @value: attribute value
       
    34  * @next: next attribute
       
    35  *
       
    36  * Linked list of message node attributes.
       
    37  */
       
    38 typedef struct _LmMessageNodeAttribute LmMessageNodeAttribute;
       
    39 
       
    40 struct _LmMessageNodeAttribute {
       
    41     gchar *name;
       
    42     gchar *value;
       
    43 
       
    44     LmMessageNodeAttribute *next;
       
    45 };
       
    46 
       
    47 /**
    31  * LmMessageNode:
    48  * LmMessageNode:
    32  * @name: the name of the node
    49  * @name: the name of the node
    33  * @value: value of the node, can be NULL
    50  * @value: value of the node, can be NULL
    34  * @raw_mode: if true, don't escape the content of the message. The content must be valid XML.
    51  * @raw_mode: if true, don't escape the content of the message. The content must be valid XML.
    35  * @next: next sibling
    52  * @next: next sibling
    36  * @prev: previous sibling
    53  * @prev: previous sibling
    37  * @parent: node parent
    54  * @parent: node parent
    38  * @children: pointing to first child
    55  * @children: pointing to first child
       
    56  * @attributes: linked list of node attributes
    39  *
    57  *
    40  * A struct representing a node in a message.
    58  * A struct representing a node in a message.
    41  */
    59  */
    42 typedef struct _LmMessageNode LmMessageNode;
    60 typedef struct _LmMessageNode LmMessageNode;
    43 
    61 
    49     LmMessageNode     *next;
    67     LmMessageNode     *next;
    50     LmMessageNode     *prev;
    68     LmMessageNode     *prev;
    51     LmMessageNode     *parent;
    69     LmMessageNode     *parent;
    52     LmMessageNode     *children;
    70     LmMessageNode     *children;
    53 
    71 
       
    72     LmMessageNodeAttribute *attributes;
       
    73 
    54     /* < private > */
    74     /* < private > */
    55     GSList     *attributes;
       
    56     gint        ref_count;
    75     gint        ref_count;
    57 };
    76 };
    58 
    77 
    59 const gchar *  lm_message_node_get_value      (LmMessageNode *node);
    78 const gchar *  lm_message_node_get_value      (LmMessageNode *node);
    60 void           lm_message_node_set_value      (LmMessageNode *node,
    79 void           lm_message_node_set_value      (LmMessageNode *node,