File: XMLNode.xs

package info (click to toggle)
pidgin 2.14.12-1
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • size: 52,348 kB
  • sloc: ansic: 253,272; sh: 4,565; makefile: 3,170; python: 1,232; perl: 533; cs: 209; tcl: 96; xml: 9
file content (122 lines) | stat: -rw-r--r-- 2,088 bytes parent folder | download | duplicates (9)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
#include "module.h"

MODULE = Purple::XMLNode  PACKAGE = Purple::XMLNode  PREFIX = xmlnode_
PROTOTYPES: ENABLE

Purple::XMLNode
xmlnode_copy(src)
	Purple::XMLNode src

void
xmlnode_free(node)
	Purple::XMLNode node

Purple::XMLNode
xmlnode_from_str(const char *str, gssize length(str))
    PROTOTYPE: $

const char *
xmlnode_get_name(node)
	Purple::XMLNode node
	CODE:
	RETVAL = node->name;
	OUTPUT:
	RETVAL

const char *
xmlnode_get_attrib(node, attr)
	Purple::XMLNode node
	const char *attr

Purple::XMLNode
xmlnode_get_child(parent, name)
	Purple::XMLNode parent
	const char *name
PREINIT:
	xmlnode *tmp;
CODE:
	if (!name || *name == '\0') {
		tmp = parent->child;
		while (tmp && tmp->type != XMLNODE_TYPE_TAG)
			tmp = tmp->next;
		RETVAL = tmp;
	} else
		RETVAL = xmlnode_get_child(parent, name);
OUTPUT:
	RETVAL

Purple::XMLNode
xmlnode_get_child_with_namespace(parent, name, xmlns)
	Purple::XMLNode parent
	const char *name
	const char *xmlns

gchar_own *
xmlnode_get_data(node)
	Purple::XMLNode node

Purple::XMLNode
xmlnode_get_next(node)
	Purple::XMLNode node
PREINIT:
	xmlnode *tmp;
CODE:
	tmp = node->next;
	while (tmp && tmp->type != XMLNODE_TYPE_TAG)
		tmp = tmp->next;
	RETVAL = tmp;
OUTPUT:
	RETVAL

Purple::XMLNode
xmlnode_get_next_twin(node)
	Purple::XMLNode node

void
xmlnode_insert_child(parent, child)
	Purple::XMLNode parent
	Purple::XMLNode child

void
xmlnode_insert_data(node, data, size)
	Purple::XMLNode node
	const char *data
	gssize size

Purple::XMLNode
xmlnode_new(class, name)
	const char *name
    C_ARGS:
	name

Purple::XMLNode
xmlnode_new_child(parent, name)
	Purple::XMLNode parent
	const char *name

void
xmlnode_remove_attrib(node, attr)
	Purple::XMLNode node
	const char *attr

void
xmlnode_set_attrib(node, attr, value)
	Purple::XMLNode node
	const char *attr
	const char *value

gchar_own *
xmlnode_to_formatted_str(node)
	Purple::XMLNode node
    CODE:
	RETVAL = xmlnode_to_formatted_str(node, NULL);
    OUTPUT:
	RETVAL

gchar_own *
xmlnode_to_str(node)
	Purple::XMLNode node
    CODE:
	RETVAL = xmlnode_to_str(node, NULL);
    OUTPUT:
	RETVAL