Initial Import
[profile/ivi/json-glib.git] / doc / reference / html / json-glib-JSON-Node.html
1 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2 <html>
3 <head>
4 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
5 <title>JSON Node</title>
6 <meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
7 <link rel="home" href="index.html" title="JSON-GLib Reference Manual">
8 <link rel="up" href="ch01.html" title="Data Types">
9 <link rel="prev" href="ch01.html" title="Data Types">
10 <link rel="next" href="json-glib-JSON-Array.html" title="JSON Array">
11 <meta name="generator" content="GTK-Doc V1.18.1 (XML mode)">
12 <link rel="stylesheet" href="style.css" type="text/css">
13 </head>
14 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
15 <table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
16 <tr valign="middle">
17 <td><a accesskey="p" href="ch01.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
18 <td><a accesskey="u" href="ch01.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
19 <td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
20 <th width="100%" align="center">JSON-GLib Reference Manual</th>
21 <td><a accesskey="n" href="json-glib-JSON-Array.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
22 </tr>
23 <tr><td colspan="5" class="shortcuts">
24 <a href="#json-glib-JSON-Node.synopsis" class="shortcut">Top</a>
25                    | 
26                   <a href="#json-glib-JSON-Node.description" class="shortcut">Description</a>
27 </td></tr>
28 </table>
29 <div class="refentry">
30 <a name="json-glib-JSON-Node"></a><div class="titlepage"></div>
31 <div class="refnamediv"><table width="100%"><tr>
32 <td valign="top">
33 <h2><span class="refentrytitle"><a name="json-glib-JSON-Node.top_of_page"></a>JSON Node</span></h2>
34 <p>JSON Node — Node in a JSON object model</p>
35 </td>
36 <td valign="top" align="right"></td>
37 </tr></table></div>
38 <div class="refsynopsisdiv">
39 <a name="json-glib-JSON-Node.synopsis"></a><h2>Synopsis</h2>
40 <pre class="synopsis">enum                <a class="link" href="json-glib-JSON-Node.html#JsonNodeType" title="enum JsonNodeType">JsonNodeType</a>;
41                     <a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode">JsonNode</a>;
42 #define             <a class="link" href="json-glib-JSON-Node.html#JSON-NODE-TYPE:CAPS" title="JSON_NODE_TYPE()">JSON_NODE_TYPE</a>                      (node)
43 #define             <a class="link" href="json-glib-JSON-Node.html#JSON-NODE-HOLDS:CAPS" title="JSON_NODE_HOLDS()">JSON_NODE_HOLDS</a>                     (node,
44                                                          t)
45 #define             <a class="link" href="json-glib-JSON-Node.html#JSON-NODE-HOLDS-VALUE:CAPS" title="JSON_NODE_HOLDS_VALUE()">JSON_NODE_HOLDS_VALUE</a>               (node)
46 #define             <a class="link" href="json-glib-JSON-Node.html#JSON-NODE-HOLDS-OBJECT:CAPS" title="JSON_NODE_HOLDS_OBJECT()">JSON_NODE_HOLDS_OBJECT</a>              (node)
47 #define             <a class="link" href="json-glib-JSON-Node.html#JSON-NODE-HOLDS-ARRAY:CAPS" title="JSON_NODE_HOLDS_ARRAY()">JSON_NODE_HOLDS_ARRAY</a>               (node)
48 #define             <a class="link" href="json-glib-JSON-Node.html#JSON-NODE-HOLDS-NULL:CAPS" title="JSON_NODE_HOLDS_NULL()">JSON_NODE_HOLDS_NULL</a>                (node)
49 <a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="returnvalue">JsonNode</span></a> *          <a class="link" href="json-glib-JSON-Node.html#json-node-new" title="json_node_new ()">json_node_new</a>                       (<em class="parameter"><code><a class="link" href="json-glib-JSON-Node.html#JsonNodeType" title="enum JsonNodeType"><span class="type">JsonNodeType</span></a> type</code></em>);
50 <a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="returnvalue">JsonNode</span></a> *          <a class="link" href="json-glib-JSON-Node.html#json-node-copy" title="json_node_copy ()">json_node_copy</a>                      (<em class="parameter"><code><a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a> *node</code></em>);
51 <span class="returnvalue">void</span>                <a class="link" href="json-glib-JSON-Node.html#json-node-free" title="json_node_free ()">json_node_free</a>                      (<em class="parameter"><code><a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a> *node</code></em>);
52
53 <span class="returnvalue">void</span>                <a class="link" href="json-glib-JSON-Node.html#json-node-set-array" title="json_node_set_array ()">json_node_set_array</a>                 (<em class="parameter"><code><a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a> *node</code></em>,
54                                                          <em class="parameter"><code><a class="link" href="json-glib-JSON-Array.html#JsonArray" title="JsonArray"><span class="type">JsonArray</span></a> *array</code></em>);
55 <span class="returnvalue">void</span>                <a class="link" href="json-glib-JSON-Node.html#json-node-take-array" title="json_node_take_array ()">json_node_take_array</a>                (<em class="parameter"><code><a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a> *node</code></em>,
56                                                          <em class="parameter"><code><a class="link" href="json-glib-JSON-Array.html#JsonArray" title="JsonArray"><span class="type">JsonArray</span></a> *array</code></em>);
57 <a class="link" href="json-glib-JSON-Array.html#JsonArray" title="JsonArray"><span class="returnvalue">JsonArray</span></a> *         <a class="link" href="json-glib-JSON-Node.html#json-node-get-array" title="json_node_get_array ()">json_node_get_array</a>                 (<em class="parameter"><code><a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a> *node</code></em>);
58 <a class="link" href="json-glib-JSON-Array.html#JsonArray" title="JsonArray"><span class="returnvalue">JsonArray</span></a> *         <a class="link" href="json-glib-JSON-Node.html#json-node-dup-array" title="json_node_dup_array ()">json_node_dup_array</a>                 (<em class="parameter"><code><a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a> *node</code></em>);
59
60 <span class="returnvalue">void</span>                <a class="link" href="json-glib-JSON-Node.html#json-node-set-object" title="json_node_set_object ()">json_node_set_object</a>                (<em class="parameter"><code><a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a> *node</code></em>,
61                                                          <em class="parameter"><code><a class="link" href="json-glib-JSON-Object.html#JsonObject" title="JsonObject"><span class="type">JsonObject</span></a> *object</code></em>);
62 <span class="returnvalue">void</span>                <a class="link" href="json-glib-JSON-Node.html#json-node-take-object" title="json_node_take_object ()">json_node_take_object</a>               (<em class="parameter"><code><a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a> *node</code></em>,
63                                                          <em class="parameter"><code><a class="link" href="json-glib-JSON-Object.html#JsonObject" title="JsonObject"><span class="type">JsonObject</span></a> *object</code></em>);
64 <a class="link" href="json-glib-JSON-Object.html#JsonObject" title="JsonObject"><span class="returnvalue">JsonObject</span></a> *        <a class="link" href="json-glib-JSON-Node.html#json-node-get-object" title="json_node_get_object ()">json_node_get_object</a>                (<em class="parameter"><code><a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a> *node</code></em>);
65 <a class="link" href="json-glib-JSON-Object.html#JsonObject" title="JsonObject"><span class="returnvalue">JsonObject</span></a> *        <a class="link" href="json-glib-JSON-Node.html#json-node-dup-object" title="json_node_dup_object ()">json_node_dup_object</a>                (<em class="parameter"><code><a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a> *node</code></em>);
66
67 <span class="returnvalue">void</span>                <a class="link" href="json-glib-JSON-Node.html#json-node-set-value" title="json_node_set_value ()">json_node_set_value</a>                 (<em class="parameter"><code><a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a> *node</code></em>,
68                                                          <em class="parameter"><code>const <span class="type">GValue</span> *value</code></em>);
69 <span class="returnvalue">void</span>                <a class="link" href="json-glib-JSON-Node.html#json-node-get-value" title="json_node_get_value ()">json_node_get_value</a>                 (<em class="parameter"><code><a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a> *node</code></em>,
70                                                          <em class="parameter"><code><span class="type">GValue</span> *value</code></em>);
71 <span class="returnvalue">void</span>                <a class="link" href="json-glib-JSON-Node.html#json-node-set-boolean" title="json_node_set_boolean ()">json_node_set_boolean</a>               (<em class="parameter"><code><a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a> *node</code></em>,
72                                                          <em class="parameter"><code><span class="type">gboolean</span> value</code></em>);
73 <span class="returnvalue">gboolean</span>            <a class="link" href="json-glib-JSON-Node.html#json-node-get-boolean" title="json_node_get_boolean ()">json_node_get_boolean</a>               (<em class="parameter"><code><a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a> *node</code></em>);
74 <span class="returnvalue">void</span>                <a class="link" href="json-glib-JSON-Node.html#json-node-set-double" title="json_node_set_double ()">json_node_set_double</a>                (<em class="parameter"><code><a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a> *node</code></em>,
75                                                          <em class="parameter"><code><span class="type">gdouble</span> value</code></em>);
76 <span class="returnvalue">gdouble</span>             <a class="link" href="json-glib-JSON-Node.html#json-node-get-double" title="json_node_get_double ()">json_node_get_double</a>                (<em class="parameter"><code><a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a> *node</code></em>);
77 <span class="returnvalue">void</span>                <a class="link" href="json-glib-JSON-Node.html#json-node-set-int" title="json_node_set_int ()">json_node_set_int</a>                   (<em class="parameter"><code><a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a> *node</code></em>,
78                                                          <em class="parameter"><code><span class="type">gint64</span> value</code></em>);
79 <span class="returnvalue">gint64</span>              <a class="link" href="json-glib-JSON-Node.html#json-node-get-int" title="json_node_get_int ()">json_node_get_int</a>                   (<em class="parameter"><code><a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a> *node</code></em>);
80 <span class="returnvalue">void</span>                <a class="link" href="json-glib-JSON-Node.html#json-node-set-string" title="json_node_set_string ()">json_node_set_string</a>                (<em class="parameter"><code><a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a> *node</code></em>,
81                                                          <em class="parameter"><code>const <span class="type">gchar</span> *value</code></em>);
82 const <span class="returnvalue">gchar</span> *       <a class="link" href="json-glib-JSON-Node.html#json-node-get-string" title="json_node_get_string ()">json_node_get_string</a>                (<em class="parameter"><code><a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a> *node</code></em>);
83 <span class="returnvalue">gchar</span> *             <a class="link" href="json-glib-JSON-Node.html#json-node-dup-string" title="json_node_dup_string ()">json_node_dup_string</a>                (<em class="parameter"><code><a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a> *node</code></em>);
84
85 <span class="returnvalue">void</span>                <a class="link" href="json-glib-JSON-Node.html#json-node-set-parent" title="json_node_set_parent ()">json_node_set_parent</a>                (<em class="parameter"><code><a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a> *node</code></em>,
86                                                          <em class="parameter"><code><a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a> *parent</code></em>);
87 <a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="returnvalue">JsonNode</span></a> *          <a class="link" href="json-glib-JSON-Node.html#json-node-get-parent" title="json_node_get_parent ()">json_node_get_parent</a>                (<em class="parameter"><code><a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a> *node</code></em>);
88 const <span class="returnvalue">gchar</span> *       <a class="link" href="json-glib-JSON-Node.html#json-node-type-name" title="json_node_type_name ()">json_node_type_name</a>                 (<em class="parameter"><code><a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a> *node</code></em>);
89 <span class="returnvalue">GType</span>               <a class="link" href="json-glib-JSON-Node.html#json-node-get-value-type" title="json_node_get_value_type ()">json_node_get_value_type</a>            (<em class="parameter"><code><a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a> *node</code></em>);
90 <a class="link" href="json-glib-JSON-Node.html#JsonNodeType" title="enum JsonNodeType"><span class="returnvalue">JsonNodeType</span></a>        <a class="link" href="json-glib-JSON-Node.html#json-node-get-node-type" title="json_node_get_node_type ()">json_node_get_node_type</a>             (<em class="parameter"><code><a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a> *node</code></em>);
91 <span class="returnvalue">gboolean</span>            <a class="link" href="json-glib-JSON-Node.html#json-node-is-null" title="json_node_is_null ()">json_node_is_null</a>                   (<em class="parameter"><code><a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a> *node</code></em>);
92 </pre>
93 </div>
94 <div class="refsect1">
95 <a name="json-glib-JSON-Node.description"></a><h2>Description</h2>
96 <p>
97 A <a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a> is a generic container of elements inside a JSON stream.
98 It can contain fundamental types (integers, booleans, floating point
99 numbers, strings) and complex types (arrays and objects).
100 </p>
101 <p>
102 When parsing a JSON data stream you extract the root node and walk
103 the node tree by retrieving the type of data contained inside the
104 node with the <a class="link" href="json-glib-JSON-Node.html#JSON-NODE-TYPE:CAPS" title="JSON_NODE_TYPE()"><code class="literal">JSON_NODE_TYPE</code></a> macro. If the node contains a fundamental
105 type you can retrieve a copy of the <span class="type">GValue</span> holding it with the
106 <a class="link" href="json-glib-JSON-Node.html#json-node-get-value" title="json_node_get_value ()"><code class="function">json_node_get_value()</code></a> function, and then use the <span class="type">GValue</span> API to extract
107 the data; if the node contains a complex type you can retrieve the
108 <a class="link" href="json-glib-JSON-Object.html#JsonObject" title="JsonObject"><span class="type">JsonObject</span></a> or the <a class="link" href="json-glib-JSON-Array.html#JsonArray" title="JsonArray"><span class="type">JsonArray</span></a> using <a class="link" href="json-glib-JSON-Node.html#json-node-get-object" title="json_node_get_object ()"><code class="function">json_node_get_object()</code></a> or
109 <a class="link" href="json-glib-JSON-Node.html#json-node-get-array" title="json_node_get_array ()"><code class="function">json_node_get_array()</code></a> respectively, and then retrieve the nodes
110 they contain.
111 </p>
112 </div>
113 <div class="refsect1">
114 <a name="json-glib-JSON-Node.details"></a><h2>Details</h2>
115 <div class="refsect2">
116 <a name="JsonNodeType"></a><h3>enum JsonNodeType</h3>
117 <pre class="programlisting">typedef enum {
118   JSON_NODE_OBJECT,
119   JSON_NODE_ARRAY,
120   JSON_NODE_VALUE,
121   JSON_NODE_NULL
122 } JsonNodeType;
123 </pre>
124 <p>
125 Indicates the content of a <a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a>.
126 </p>
127 <div class="variablelist"><table border="0">
128 <col align="left" valign="top">
129 <tbody>
130 <tr>
131 <td><p><a name="JSON-NODE-OBJECT:CAPS"></a><span class="term"><code class="literal">JSON_NODE_OBJECT</code></span></p></td>
132 <td>The node contains a <a class="link" href="json-glib-JSON-Object.html#JsonObject" title="JsonObject"><span class="type">JsonObject</span></a>
133 </td>
134 </tr>
135 <tr>
136 <td><p><a name="JSON-NODE-ARRAY:CAPS"></a><span class="term"><code class="literal">JSON_NODE_ARRAY</code></span></p></td>
137 <td>The node contains a <a class="link" href="json-glib-JSON-Array.html#JsonArray" title="JsonArray"><span class="type">JsonArray</span></a>
138 </td>
139 </tr>
140 <tr>
141 <td><p><a name="JSON-NODE-VALUE:CAPS"></a><span class="term"><code class="literal">JSON_NODE_VALUE</code></span></p></td>
142 <td>The node contains a fundamental type
143 </td>
144 </tr>
145 <tr>
146 <td><p><a name="JSON-NODE-NULL:CAPS"></a><span class="term"><code class="literal">JSON_NODE_NULL</code></span></p></td>
147 <td>Special type, for nodes containing null
148 </td>
149 </tr>
150 </tbody>
151 </table></div>
152 </div>
153 <hr>
154 <div class="refsect2">
155 <a name="JsonNode"></a><h3>JsonNode</h3>
156 <pre class="programlisting">typedef struct _JsonNode JsonNode;</pre>
157 <p>
158 A generic container of JSON data types. The contents of the <a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a>
159 structure are private and should only be accessed via the provided
160 functions and never directly.
161 </p>
162 </div>
163 <hr>
164 <div class="refsect2">
165 <a name="JSON-NODE-TYPE:CAPS"></a><h3>JSON_NODE_TYPE()</h3>
166 <pre class="programlisting">#define JSON_NODE_TYPE(node)    (json_node_get_node_type ((node)))
167 </pre>
168 <p>
169 Evaluates to the <a class="link" href="json-glib-JSON-Node.html#JsonNodeType" title="enum JsonNodeType"><span class="type">JsonNodeType</span></a> contained by <em class="parameter"><code>node</code></em>
170 </p>
171 <div class="variablelist"><table border="0">
172 <col align="left" valign="top">
173 <tbody><tr>
174 <td><p><span class="term"><em class="parameter"><code>node</code></em> :</span></p></td>
175 <td>a <a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a>
176 </td>
177 </tr></tbody>
178 </table></div>
179 </div>
180 <hr>
181 <div class="refsect2">
182 <a name="JSON-NODE-HOLDS:CAPS"></a><h3>JSON_NODE_HOLDS()</h3>
183 <pre class="programlisting">#define JSON_NODE_HOLDS(node,t)         (json_node_get_node_type ((node)) == (t))
184 </pre>
185 <p>
186 Evaluates to <code class="literal">TRUE</code> if the <em class="parameter"><code>node</code></em> holds type <em class="parameter"><code>t</code></em>
187 </p>
188 <div class="variablelist"><table border="0">
189 <col align="left" valign="top">
190 <tbody>
191 <tr>
192 <td><p><span class="term"><em class="parameter"><code>node</code></em> :</span></p></td>
193 <td>a <a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a>
194 </td>
195 </tr>
196 <tr>
197 <td><p><span class="term"><em class="parameter"><code>t</code></em> :</span></p></td>
198 <td>a <a class="link" href="json-glib-JSON-Node.html#JsonNodeType" title="enum JsonNodeType"><span class="type">JsonNodeType</span></a>
199 </td>
200 </tr>
201 </tbody>
202 </table></div>
203 <p class="since">Since 0.10</p>
204 </div>
205 <hr>
206 <div class="refsect2">
207 <a name="JSON-NODE-HOLDS-VALUE:CAPS"></a><h3>JSON_NODE_HOLDS_VALUE()</h3>
208 <pre class="programlisting">#define JSON_NODE_HOLDS_VALUE(node)     (JSON_NODE_HOLDS ((node), JSON_NODE_VALUE))
209 </pre>
210 <p>
211 Evaluates to <code class="literal">TRUE</code> if <em class="parameter"><code>node</code></em> holds a <a class="link" href="json-glib-JSON-Node.html#JSON-NODE-VALUE:CAPS"><code class="literal">JSON_NODE_VALUE</code></a>
212 </p>
213 <div class="variablelist"><table border="0">
214 <col align="left" valign="top">
215 <tbody><tr>
216 <td><p><span class="term"><em class="parameter"><code>node</code></em> :</span></p></td>
217 <td>a <a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a>
218 </td>
219 </tr></tbody>
220 </table></div>
221 <p class="since">Since 0.10</p>
222 </div>
223 <hr>
224 <div class="refsect2">
225 <a name="JSON-NODE-HOLDS-OBJECT:CAPS"></a><h3>JSON_NODE_HOLDS_OBJECT()</h3>
226 <pre class="programlisting">#define JSON_NODE_HOLDS_OBJECT(node)    (JSON_NODE_HOLDS ((node), JSON_NODE_OBJECT))
227 </pre>
228 <p>
229 Evaluates to <code class="literal">TRUE</code> if <em class="parameter"><code>node</code></em> holds a <a class="link" href="json-glib-JSON-Node.html#JSON-NODE-OBJECT:CAPS"><code class="literal">JSON_NODE_OBJECT</code></a>
230 </p>
231 <div class="variablelist"><table border="0">
232 <col align="left" valign="top">
233 <tbody><tr>
234 <td><p><span class="term"><em class="parameter"><code>node</code></em> :</span></p></td>
235 <td>a <a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a>
236 </td>
237 </tr></tbody>
238 </table></div>
239 <p class="since">Since 0.10</p>
240 </div>
241 <hr>
242 <div class="refsect2">
243 <a name="JSON-NODE-HOLDS-ARRAY:CAPS"></a><h3>JSON_NODE_HOLDS_ARRAY()</h3>
244 <pre class="programlisting">#define JSON_NODE_HOLDS_ARRAY(node)     (JSON_NODE_HOLDS ((node), JSON_NODE_ARRAY))
245 </pre>
246 <p>
247 Evaluates to <code class="literal">TRUE</code> if <em class="parameter"><code>node</code></em> holds a <a class="link" href="json-glib-JSON-Node.html#JSON-NODE-ARRAY:CAPS"><code class="literal">JSON_NODE_ARRAY</code></a>
248 </p>
249 <div class="variablelist"><table border="0">
250 <col align="left" valign="top">
251 <tbody><tr>
252 <td><p><span class="term"><em class="parameter"><code>node</code></em> :</span></p></td>
253 <td>a <a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a>
254 </td>
255 </tr></tbody>
256 </table></div>
257 <p class="since">Since 0.10</p>
258 </div>
259 <hr>
260 <div class="refsect2">
261 <a name="JSON-NODE-HOLDS-NULL:CAPS"></a><h3>JSON_NODE_HOLDS_NULL()</h3>
262 <pre class="programlisting">#define JSON_NODE_HOLDS_NULL(node)      (JSON_NODE_HOLDS ((node), JSON_NODE_NULL))
263 </pre>
264 <p>
265 Evaluates to <code class="literal">TRUE</code> if <em class="parameter"><code>node</code></em> holds a <a class="link" href="json-glib-JSON-Node.html#JSON-NODE-NULL:CAPS"><code class="literal">JSON_NODE_NULL</code></a>
266 </p>
267 <div class="variablelist"><table border="0">
268 <col align="left" valign="top">
269 <tbody><tr>
270 <td><p><span class="term"><em class="parameter"><code>node</code></em> :</span></p></td>
271 <td>a <a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a>
272 </td>
273 </tr></tbody>
274 </table></div>
275 <p class="since">Since 0.10</p>
276 </div>
277 <hr>
278 <div class="refsect2">
279 <a name="json-node-new"></a><h3>json_node_new ()</h3>
280 <pre class="programlisting"><a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="returnvalue">JsonNode</span></a> *          json_node_new                       (<em class="parameter"><code><a class="link" href="json-glib-JSON-Node.html#JsonNodeType" title="enum JsonNodeType"><span class="type">JsonNodeType</span></a> type</code></em>);</pre>
281 <p>
282 Creates a new <a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a> of <em class="parameter"><code>type</code></em>.
283 </p>
284 <div class="variablelist"><table border="0">
285 <col align="left" valign="top">
286 <tbody>
287 <tr>
288 <td><p><span class="term"><em class="parameter"><code>type</code></em> :</span></p></td>
289 <td>a <a class="link" href="json-glib-JSON-Node.html#JsonNodeType" title="enum JsonNodeType"><span class="type">JsonNodeType</span></a>
290 </td>
291 </tr>
292 <tr>
293 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
294 <td>the newly created <a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a>
295 </td>
296 </tr>
297 </tbody>
298 </table></div>
299 </div>
300 <hr>
301 <div class="refsect2">
302 <a name="json-node-copy"></a><h3>json_node_copy ()</h3>
303 <pre class="programlisting"><a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="returnvalue">JsonNode</span></a> *          json_node_copy                      (<em class="parameter"><code><a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a> *node</code></em>);</pre>
304 <p>
305 Copies <em class="parameter"><code>node</code></em>. If the node contains complex data types then the reference
306 count of the objects is increased.
307 </p>
308 <div class="variablelist"><table border="0">
309 <col align="left" valign="top">
310 <tbody>
311 <tr>
312 <td><p><span class="term"><em class="parameter"><code>node</code></em> :</span></p></td>
313 <td>a <a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a>
314 </td>
315 </tr>
316 <tr>
317 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
318 <td>the copied <a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a>. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
319 </td>
320 </tr>
321 </tbody>
322 </table></div>
323 </div>
324 <hr>
325 <div class="refsect2">
326 <a name="json-node-free"></a><h3>json_node_free ()</h3>
327 <pre class="programlisting"><span class="returnvalue">void</span>                json_node_free                      (<em class="parameter"><code><a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a> *node</code></em>);</pre>
328 <p>
329 Frees the resources allocated by <em class="parameter"><code>node</code></em>.
330 </p>
331 <div class="variablelist"><table border="0">
332 <col align="left" valign="top">
333 <tbody><tr>
334 <td><p><span class="term"><em class="parameter"><code>node</code></em> :</span></p></td>
335 <td>a <a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a>
336 </td>
337 </tr></tbody>
338 </table></div>
339 </div>
340 <hr>
341 <div class="refsect2">
342 <a name="json-node-set-array"></a><h3>json_node_set_array ()</h3>
343 <pre class="programlisting"><span class="returnvalue">void</span>                json_node_set_array                 (<em class="parameter"><code><a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a> *node</code></em>,
344                                                          <em class="parameter"><code><a class="link" href="json-glib-JSON-Array.html#JsonArray" title="JsonArray"><span class="type">JsonArray</span></a> *array</code></em>);</pre>
345 <p>
346 Sets <em class="parameter"><code>array</code></em> inside <em class="parameter"><code>node</code></em> and increases the <a class="link" href="json-glib-JSON-Array.html#JsonArray" title="JsonArray"><span class="type">JsonArray</span></a> reference count
347 </p>
348 <div class="variablelist"><table border="0">
349 <col align="left" valign="top">
350 <tbody>
351 <tr>
352 <td><p><span class="term"><em class="parameter"><code>node</code></em> :</span></p></td>
353 <td>a <a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a>
354 </td>
355 </tr>
356 <tr>
357 <td><p><span class="term"><em class="parameter"><code>array</code></em> :</span></p></td>
358 <td>a <a class="link" href="json-glib-JSON-Array.html#JsonArray" title="JsonArray"><span class="type">JsonArray</span></a>
359 </td>
360 </tr>
361 </tbody>
362 </table></div>
363 </div>
364 <hr>
365 <div class="refsect2">
366 <a name="json-node-take-array"></a><h3>json_node_take_array ()</h3>
367 <pre class="programlisting"><span class="returnvalue">void</span>                json_node_take_array                (<em class="parameter"><code><a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a> *node</code></em>,
368                                                          <em class="parameter"><code><a class="link" href="json-glib-JSON-Array.html#JsonArray" title="JsonArray"><span class="type">JsonArray</span></a> *array</code></em>);</pre>
369 <p>
370 Sets <em class="parameter"><code>array</code></em> into <em class="parameter"><code>node</code></em> without increasing the <a class="link" href="json-glib-JSON-Array.html#JsonArray" title="JsonArray"><span class="type">JsonArray</span></a> reference count.
371 </p>
372 <div class="variablelist"><table border="0">
373 <col align="left" valign="top">
374 <tbody>
375 <tr>
376 <td><p><span class="term"><em class="parameter"><code>node</code></em> :</span></p></td>
377 <td>a <a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a>
378 </td>
379 </tr>
380 <tr>
381 <td><p><span class="term"><em class="parameter"><code>array</code></em> :</span></p></td>
382 <td>a <a class="link" href="json-glib-JSON-Array.html#JsonArray" title="JsonArray"><span class="type">JsonArray</span></a>. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
383 </td>
384 </tr>
385 </tbody>
386 </table></div>
387 </div>
388 <hr>
389 <div class="refsect2">
390 <a name="json-node-get-array"></a><h3>json_node_get_array ()</h3>
391 <pre class="programlisting"><a class="link" href="json-glib-JSON-Array.html#JsonArray" title="JsonArray"><span class="returnvalue">JsonArray</span></a> *         json_node_get_array                 (<em class="parameter"><code><a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a> *node</code></em>);</pre>
392 <p>
393 Retrieves the <a class="link" href="json-glib-JSON-Array.html#JsonArray" title="JsonArray"><span class="type">JsonArray</span></a> stored inside a <a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a>
394 </p>
395 <div class="variablelist"><table border="0">
396 <col align="left" valign="top">
397 <tbody>
398 <tr>
399 <td><p><span class="term"><em class="parameter"><code>node</code></em> :</span></p></td>
400 <td>a <a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a>
401 </td>
402 </tr>
403 <tr>
404 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
405 <td>the <a class="link" href="json-glib-JSON-Array.html#JsonArray" title="JsonArray"><span class="type">JsonArray</span></a>. <span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span>
406 </td>
407 </tr>
408 </tbody>
409 </table></div>
410 </div>
411 <hr>
412 <div class="refsect2">
413 <a name="json-node-dup-array"></a><h3>json_node_dup_array ()</h3>
414 <pre class="programlisting"><a class="link" href="json-glib-JSON-Array.html#JsonArray" title="JsonArray"><span class="returnvalue">JsonArray</span></a> *         json_node_dup_array                 (<em class="parameter"><code><a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a> *node</code></em>);</pre>
415 <p>
416 Retrieves the <a class="link" href="json-glib-JSON-Array.html#JsonArray" title="JsonArray"><span class="type">JsonArray</span></a> stored inside a <a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a> and returns it
417 with its reference count increased by one.
418 </p>
419 <div class="variablelist"><table border="0">
420 <col align="left" valign="top">
421 <tbody>
422 <tr>
423 <td><p><span class="term"><em class="parameter"><code>node</code></em> :</span></p></td>
424 <td>a <a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a>
425 </td>
426 </tr>
427 <tr>
428 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
429 <td>the <a class="link" href="json-glib-JSON-Array.html#JsonArray" title="JsonArray"><span class="type">JsonArray</span></a> with its reference
430 count increased. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
431 </td>
432 </tr>
433 </tbody>
434 </table></div>
435 </div>
436 <hr>
437 <div class="refsect2">
438 <a name="json-node-set-object"></a><h3>json_node_set_object ()</h3>
439 <pre class="programlisting"><span class="returnvalue">void</span>                json_node_set_object                (<em class="parameter"><code><a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a> *node</code></em>,
440                                                          <em class="parameter"><code><a class="link" href="json-glib-JSON-Object.html#JsonObject" title="JsonObject"><span class="type">JsonObject</span></a> *object</code></em>);</pre>
441 <p>
442 Sets <em class="parameter"><code>objects</code></em> inside <em class="parameter"><code>node</code></em>. The reference count of <em class="parameter"><code>object</code></em> is increased.
443 </p>
444 <div class="variablelist"><table border="0">
445 <col align="left" valign="top">
446 <tbody>
447 <tr>
448 <td><p><span class="term"><em class="parameter"><code>node</code></em> :</span></p></td>
449 <td>a <a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a>
450 </td>
451 </tr>
452 <tr>
453 <td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
454 <td>a <a class="link" href="json-glib-JSON-Object.html#JsonObject" title="JsonObject"><span class="type">JsonObject</span></a>
455 </td>
456 </tr>
457 </tbody>
458 </table></div>
459 </div>
460 <hr>
461 <div class="refsect2">
462 <a name="json-node-take-object"></a><h3>json_node_take_object ()</h3>
463 <pre class="programlisting"><span class="returnvalue">void</span>                json_node_take_object               (<em class="parameter"><code><a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a> *node</code></em>,
464                                                          <em class="parameter"><code><a class="link" href="json-glib-JSON-Object.html#JsonObject" title="JsonObject"><span class="type">JsonObject</span></a> *object</code></em>);</pre>
465 <p>
466 Sets <em class="parameter"><code>object</code></em> inside <em class="parameter"><code>node</code></em>. The reference count of <em class="parameter"><code>object</code></em> is not increased.
467 </p>
468 <div class="variablelist"><table border="0">
469 <col align="left" valign="top">
470 <tbody>
471 <tr>
472 <td><p><span class="term"><em class="parameter"><code>node</code></em> :</span></p></td>
473 <td>a <a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a>
474 </td>
475 </tr>
476 <tr>
477 <td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
478 <td>a <a class="link" href="json-glib-JSON-Object.html#JsonObject" title="JsonObject"><span class="type">JsonObject</span></a>. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
479 </td>
480 </tr>
481 </tbody>
482 </table></div>
483 </div>
484 <hr>
485 <div class="refsect2">
486 <a name="json-node-get-object"></a><h3>json_node_get_object ()</h3>
487 <pre class="programlisting"><a class="link" href="json-glib-JSON-Object.html#JsonObject" title="JsonObject"><span class="returnvalue">JsonObject</span></a> *        json_node_get_object                (<em class="parameter"><code><a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a> *node</code></em>);</pre>
488 <p>
489 Retrieves the <a class="link" href="json-glib-JSON-Object.html#JsonObject" title="JsonObject"><span class="type">JsonObject</span></a> stored inside a <a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a>
490 </p>
491 <div class="variablelist"><table border="0">
492 <col align="left" valign="top">
493 <tbody>
494 <tr>
495 <td><p><span class="term"><em class="parameter"><code>node</code></em> :</span></p></td>
496 <td>a <a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a>
497 </td>
498 </tr>
499 <tr>
500 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
501 <td>the <a class="link" href="json-glib-JSON-Object.html#JsonObject" title="JsonObject"><span class="type">JsonObject</span></a>. <span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span>
502 </td>
503 </tr>
504 </tbody>
505 </table></div>
506 </div>
507 <hr>
508 <div class="refsect2">
509 <a name="json-node-dup-object"></a><h3>json_node_dup_object ()</h3>
510 <pre class="programlisting"><a class="link" href="json-glib-JSON-Object.html#JsonObject" title="JsonObject"><span class="returnvalue">JsonObject</span></a> *        json_node_dup_object                (<em class="parameter"><code><a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a> *node</code></em>);</pre>
511 <p>
512 Retrieves the <a class="link" href="json-glib-JSON-Object.html#JsonObject" title="JsonObject"><span class="type">JsonObject</span></a> inside <em class="parameter"><code>node</code></em>. The reference count of
513 the returned object is increased.
514 </p>
515 <div class="variablelist"><table border="0">
516 <col align="left" valign="top">
517 <tbody>
518 <tr>
519 <td><p><span class="term"><em class="parameter"><code>node</code></em> :</span></p></td>
520 <td>a <a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a>
521 </td>
522 </tr>
523 <tr>
524 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
525 <td>the <a class="link" href="json-glib-JSON-Object.html#JsonObject" title="JsonObject"><span class="type">JsonObject</span></a>. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
526 </td>
527 </tr>
528 </tbody>
529 </table></div>
530 </div>
531 <hr>
532 <div class="refsect2">
533 <a name="json-node-set-value"></a><h3>json_node_set_value ()</h3>
534 <pre class="programlisting"><span class="returnvalue">void</span>                json_node_set_value                 (<em class="parameter"><code><a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a> *node</code></em>,
535                                                          <em class="parameter"><code>const <span class="type">GValue</span> *value</code></em>);</pre>
536 <p>
537 Sets <em class="parameter"><code>value</code></em> inside <em class="parameter"><code>node</code></em>. The passed <span class="type">GValue</span> is copied into the <a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a>
538 </p>
539 <div class="variablelist"><table border="0">
540 <col align="left" valign="top">
541 <tbody>
542 <tr>
543 <td><p><span class="term"><em class="parameter"><code>node</code></em> :</span></p></td>
544 <td>a <a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a>
545 </td>
546 </tr>
547 <tr>
548 <td><p><span class="term"><em class="parameter"><code>value</code></em> :</span></p></td>
549 <td>the <span class="type">GValue</span> to set</td>
550 </tr>
551 </tbody>
552 </table></div>
553 </div>
554 <hr>
555 <div class="refsect2">
556 <a name="json-node-get-value"></a><h3>json_node_get_value ()</h3>
557 <pre class="programlisting"><span class="returnvalue">void</span>                json_node_get_value                 (<em class="parameter"><code><a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a> *node</code></em>,
558                                                          <em class="parameter"><code><span class="type">GValue</span> *value</code></em>);</pre>
559 <p>
560 Retrieves a value from a <a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a> and copies into <em class="parameter"><code>value</code></em>. When done
561 using it, call <code class="function">g_value_unset()</code> on the <span class="type">GValue</span>.
562 </p>
563 <div class="variablelist"><table border="0">
564 <col align="left" valign="top">
565 <tbody>
566 <tr>
567 <td><p><span class="term"><em class="parameter"><code>node</code></em> :</span></p></td>
568 <td>a <a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a>
569 </td>
570 </tr>
571 <tr>
572 <td><p><span class="term"><em class="parameter"><code>value</code></em> :</span></p></td>
573 <td>return location for an uninitialized value. <span class="annotation">[<acronym title="Out parameter, where caller must allocate storage."><span class="acronym">out caller-allocates</span></acronym>]</span>
574 </td>
575 </tr>
576 </tbody>
577 </table></div>
578 </div>
579 <hr>
580 <div class="refsect2">
581 <a name="json-node-set-boolean"></a><h3>json_node_set_boolean ()</h3>
582 <pre class="programlisting"><span class="returnvalue">void</span>                json_node_set_boolean               (<em class="parameter"><code><a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a> *node</code></em>,
583                                                          <em class="parameter"><code><span class="type">gboolean</span> value</code></em>);</pre>
584 <p>
585 Sets <em class="parameter"><code>value</code></em> as the boolean content of the <em class="parameter"><code>node</code></em>, replacing any existing
586 content.
587 </p>
588 <div class="variablelist"><table border="0">
589 <col align="left" valign="top">
590 <tbody>
591 <tr>
592 <td><p><span class="term"><em class="parameter"><code>node</code></em> :</span></p></td>
593 <td>a <a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a> of type <a class="link" href="json-glib-JSON-Node.html#JSON-NODE-VALUE:CAPS"><code class="literal">JSON_NODE_VALUE</code></a>
594 </td>
595 </tr>
596 <tr>
597 <td><p><span class="term"><em class="parameter"><code>value</code></em> :</span></p></td>
598 <td>a boolean value</td>
599 </tr>
600 </tbody>
601 </table></div>
602 </div>
603 <hr>
604 <div class="refsect2">
605 <a name="json-node-get-boolean"></a><h3>json_node_get_boolean ()</h3>
606 <pre class="programlisting"><span class="returnvalue">gboolean</span>            json_node_get_boolean               (<em class="parameter"><code><a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a> *node</code></em>);</pre>
607 <p>
608 Gets the boolean value stored inside a <a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a>
609 </p>
610 <div class="variablelist"><table border="0">
611 <col align="left" valign="top">
612 <tbody>
613 <tr>
614 <td><p><span class="term"><em class="parameter"><code>node</code></em> :</span></p></td>
615 <td>a <a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a> of type <a class="link" href="json-glib-JSON-Node.html#JSON-NODE-VALUE:CAPS"><code class="literal">JSON_NODE_VALUE</code></a>
616 </td>
617 </tr>
618 <tr>
619 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
620 <td>a boolean value.</td>
621 </tr>
622 </tbody>
623 </table></div>
624 </div>
625 <hr>
626 <div class="refsect2">
627 <a name="json-node-set-double"></a><h3>json_node_set_double ()</h3>
628 <pre class="programlisting"><span class="returnvalue">void</span>                json_node_set_double                (<em class="parameter"><code><a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a> *node</code></em>,
629                                                          <em class="parameter"><code><span class="type">gdouble</span> value</code></em>);</pre>
630 <p>
631 Sets <em class="parameter"><code>value</code></em> as the double content of the <em class="parameter"><code>node</code></em>, replacing any existing
632 content.
633 </p>
634 <div class="variablelist"><table border="0">
635 <col align="left" valign="top">
636 <tbody>
637 <tr>
638 <td><p><span class="term"><em class="parameter"><code>node</code></em> :</span></p></td>
639 <td>a <a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a> of type <a class="link" href="json-glib-JSON-Node.html#JSON-NODE-VALUE:CAPS"><code class="literal">JSON_NODE_VALUE</code></a>
640 </td>
641 </tr>
642 <tr>
643 <td><p><span class="term"><em class="parameter"><code>value</code></em> :</span></p></td>
644 <td>a double value</td>
645 </tr>
646 </tbody>
647 </table></div>
648 </div>
649 <hr>
650 <div class="refsect2">
651 <a name="json-node-get-double"></a><h3>json_node_get_double ()</h3>
652 <pre class="programlisting"><span class="returnvalue">gdouble</span>             json_node_get_double                (<em class="parameter"><code><a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a> *node</code></em>);</pre>
653 <p>
654 Gets the double value stored inside a <a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a>
655 </p>
656 <div class="variablelist"><table border="0">
657 <col align="left" valign="top">
658 <tbody>
659 <tr>
660 <td><p><span class="term"><em class="parameter"><code>node</code></em> :</span></p></td>
661 <td>a <a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a> of type <a class="link" href="json-glib-JSON-Node.html#JSON-NODE-VALUE:CAPS"><code class="literal">JSON_NODE_VALUE</code></a>
662 </td>
663 </tr>
664 <tr>
665 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
666 <td>a double value.</td>
667 </tr>
668 </tbody>
669 </table></div>
670 </div>
671 <hr>
672 <div class="refsect2">
673 <a name="json-node-set-int"></a><h3>json_node_set_int ()</h3>
674 <pre class="programlisting"><span class="returnvalue">void</span>                json_node_set_int                   (<em class="parameter"><code><a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a> *node</code></em>,
675                                                          <em class="parameter"><code><span class="type">gint64</span> value</code></em>);</pre>
676 <p>
677 Sets <em class="parameter"><code>value</code></em> as the integer content of the <em class="parameter"><code>node</code></em>, replacing any existing
678 content.
679 </p>
680 <div class="variablelist"><table border="0">
681 <col align="left" valign="top">
682 <tbody>
683 <tr>
684 <td><p><span class="term"><em class="parameter"><code>node</code></em> :</span></p></td>
685 <td>a <a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a> of type <a class="link" href="json-glib-JSON-Node.html#JSON-NODE-VALUE:CAPS"><code class="literal">JSON_NODE_VALUE</code></a>
686 </td>
687 </tr>
688 <tr>
689 <td><p><span class="term"><em class="parameter"><code>value</code></em> :</span></p></td>
690 <td>an integer value</td>
691 </tr>
692 </tbody>
693 </table></div>
694 </div>
695 <hr>
696 <div class="refsect2">
697 <a name="json-node-get-int"></a><h3>json_node_get_int ()</h3>
698 <pre class="programlisting"><span class="returnvalue">gint64</span>              json_node_get_int                   (<em class="parameter"><code><a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a> *node</code></em>);</pre>
699 <p>
700 Gets the integer value stored inside a <a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a>
701 </p>
702 <div class="variablelist"><table border="0">
703 <col align="left" valign="top">
704 <tbody>
705 <tr>
706 <td><p><span class="term"><em class="parameter"><code>node</code></em> :</span></p></td>
707 <td>a <a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a> of type <a class="link" href="json-glib-JSON-Node.html#JSON-NODE-VALUE:CAPS"><code class="literal">JSON_NODE_VALUE</code></a>
708 </td>
709 </tr>
710 <tr>
711 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
712 <td>an integer value.</td>
713 </tr>
714 </tbody>
715 </table></div>
716 </div>
717 <hr>
718 <div class="refsect2">
719 <a name="json-node-set-string"></a><h3>json_node_set_string ()</h3>
720 <pre class="programlisting"><span class="returnvalue">void</span>                json_node_set_string                (<em class="parameter"><code><a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a> *node</code></em>,
721                                                          <em class="parameter"><code>const <span class="type">gchar</span> *value</code></em>);</pre>
722 <p>
723 Sets <em class="parameter"><code>value</code></em> as the string content of the <em class="parameter"><code>node</code></em>, replacing any existing
724 content.
725 </p>
726 <div class="variablelist"><table border="0">
727 <col align="left" valign="top">
728 <tbody>
729 <tr>
730 <td><p><span class="term"><em class="parameter"><code>node</code></em> :</span></p></td>
731 <td>a <a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a> of type <a class="link" href="json-glib-JSON-Node.html#JSON-NODE-VALUE:CAPS"><code class="literal">JSON_NODE_VALUE</code></a>
732 </td>
733 </tr>
734 <tr>
735 <td><p><span class="term"><em class="parameter"><code>value</code></em> :</span></p></td>
736 <td>a string value</td>
737 </tr>
738 </tbody>
739 </table></div>
740 </div>
741 <hr>
742 <div class="refsect2">
743 <a name="json-node-get-string"></a><h3>json_node_get_string ()</h3>
744 <pre class="programlisting">const <span class="returnvalue">gchar</span> *       json_node_get_string                (<em class="parameter"><code><a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a> *node</code></em>);</pre>
745 <p>
746 Gets the string value stored inside a <a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a>
747 </p>
748 <div class="variablelist"><table border="0">
749 <col align="left" valign="top">
750 <tbody>
751 <tr>
752 <td><p><span class="term"><em class="parameter"><code>node</code></em> :</span></p></td>
753 <td>a <a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a> of type <a class="link" href="json-glib-JSON-Node.html#JSON-NODE-VALUE:CAPS"><code class="literal">JSON_NODE_VALUE</code></a>
754 </td>
755 </tr>
756 <tr>
757 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
758 <td>a string value.</td>
759 </tr>
760 </tbody>
761 </table></div>
762 </div>
763 <hr>
764 <div class="refsect2">
765 <a name="json-node-dup-string"></a><h3>json_node_dup_string ()</h3>
766 <pre class="programlisting"><span class="returnvalue">gchar</span> *             json_node_dup_string                (<em class="parameter"><code><a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a> *node</code></em>);</pre>
767 <p>
768 Gets a copy of the string value stored inside a <a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a>
769 </p>
770 <div class="variablelist"><table border="0">
771 <col align="left" valign="top">
772 <tbody>
773 <tr>
774 <td><p><span class="term"><em class="parameter"><code>node</code></em> :</span></p></td>
775 <td>a <a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a> of type <a class="link" href="json-glib-JSON-Node.html#JSON-NODE-VALUE:CAPS"><code class="literal">JSON_NODE_VALUE</code></a>
776 </td>
777 </tr>
778 <tr>
779 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
780 <td>a newly allocated string containing a copy
781 of the <a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a> contents. Use <code class="function">g_free()</code> to free the allocated resources. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
782 </td>
783 </tr>
784 </tbody>
785 </table></div>
786 </div>
787 <hr>
788 <div class="refsect2">
789 <a name="json-node-set-parent"></a><h3>json_node_set_parent ()</h3>
790 <pre class="programlisting"><span class="returnvalue">void</span>                json_node_set_parent                (<em class="parameter"><code><a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a> *node</code></em>,
791                                                          <em class="parameter"><code><a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a> *parent</code></em>);</pre>
792 <p>
793 Sets the parent <a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a> of <em class="parameter"><code>node</code></em>
794 </p>
795 <div class="variablelist"><table border="0">
796 <col align="left" valign="top">
797 <tbody>
798 <tr>
799 <td><p><span class="term"><em class="parameter"><code>node</code></em> :</span></p></td>
800 <td>a <a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a>
801 </td>
802 </tr>
803 <tr>
804 <td><p><span class="term"><em class="parameter"><code>parent</code></em> :</span></p></td>
805 <td>the parent <a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a> of <em class="parameter"><code>node</code></em>. <span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span>
806 </td>
807 </tr>
808 </tbody>
809 </table></div>
810 <p class="since">Since 0.8</p>
811 </div>
812 <hr>
813 <div class="refsect2">
814 <a name="json-node-get-parent"></a><h3>json_node_get_parent ()</h3>
815 <pre class="programlisting"><a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="returnvalue">JsonNode</span></a> *          json_node_get_parent                (<em class="parameter"><code><a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a> *node</code></em>);</pre>
816 <p>
817 Retrieves the parent <a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a> of <em class="parameter"><code>node</code></em>.
818 </p>
819 <div class="variablelist"><table border="0">
820 <col align="left" valign="top">
821 <tbody>
822 <tr>
823 <td><p><span class="term"><em class="parameter"><code>node</code></em> :</span></p></td>
824 <td>a <a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a>
825 </td>
826 </tr>
827 <tr>
828 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
829 <td>the parent node, or <a href="/home/ebassi/gnome3/install/share/gtk-doc/html/liboil/liboil-liboiljunk.html#NULL--CAPS"><code class="literal">NULL</code></a> if <em class="parameter"><code>node</code></em> is
830 the root node. <span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span>
831 </td>
832 </tr>
833 </tbody>
834 </table></div>
835 </div>
836 <hr>
837 <div class="refsect2">
838 <a name="json-node-type-name"></a><h3>json_node_type_name ()</h3>
839 <pre class="programlisting">const <span class="returnvalue">gchar</span> *       json_node_type_name                 (<em class="parameter"><code><a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a> *node</code></em>);</pre>
840 <p>
841 Retrieves the user readable name of the data type contained by <em class="parameter"><code>node</code></em>.
842 </p>
843 <div class="variablelist"><table border="0">
844 <col align="left" valign="top">
845 <tbody>
846 <tr>
847 <td><p><span class="term"><em class="parameter"><code>node</code></em> :</span></p></td>
848 <td>a <a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a>
849 </td>
850 </tr>
851 <tr>
852 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
853 <td>a string containing the name of the type. The returned string
854 is owned by the node and should never be modified or freed</td>
855 </tr>
856 </tbody>
857 </table></div>
858 </div>
859 <hr>
860 <div class="refsect2">
861 <a name="json-node-get-value-type"></a><h3>json_node_get_value_type ()</h3>
862 <pre class="programlisting"><span class="returnvalue">GType</span>               json_node_get_value_type            (<em class="parameter"><code><a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a> *node</code></em>);</pre>
863 <p>
864 Returns the <span class="type">GType</span> of the payload of the node.
865 </p>
866 <div class="variablelist"><table border="0">
867 <col align="left" valign="top">
868 <tbody>
869 <tr>
870 <td><p><span class="term"><em class="parameter"><code>node</code></em> :</span></p></td>
871 <td>a <a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a>
872 </td>
873 </tr>
874 <tr>
875 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
876 <td>a <span class="type">GType</span> for the payload.</td>
877 </tr>
878 </tbody>
879 </table></div>
880 <p class="since">Since 0.4</p>
881 </div>
882 <hr>
883 <div class="refsect2">
884 <a name="json-node-get-node-type"></a><h3>json_node_get_node_type ()</h3>
885 <pre class="programlisting"><a class="link" href="json-glib-JSON-Node.html#JsonNodeType" title="enum JsonNodeType"><span class="returnvalue">JsonNodeType</span></a>        json_node_get_node_type             (<em class="parameter"><code><a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a> *node</code></em>);</pre>
886 <p>
887 Retrieves the <a class="link" href="json-glib-JSON-Node.html#JsonNodeType" title="enum JsonNodeType"><span class="type">JsonNodeType</span></a> of <em class="parameter"><code>node</code></em>
888 </p>
889 <div class="variablelist"><table border="0">
890 <col align="left" valign="top">
891 <tbody>
892 <tr>
893 <td><p><span class="term"><em class="parameter"><code>node</code></em> :</span></p></td>
894 <td>a <a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a>
895 </td>
896 </tr>
897 <tr>
898 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
899 <td>the type of the node</td>
900 </tr>
901 </tbody>
902 </table></div>
903 <p class="since">Since 0.8</p>
904 </div>
905 <hr>
906 <div class="refsect2">
907 <a name="json-node-is-null"></a><h3>json_node_is_null ()</h3>
908 <pre class="programlisting"><span class="returnvalue">gboolean</span>            json_node_is_null                   (<em class="parameter"><code><a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a> *node</code></em>);</pre>
909 <p>
910 Checks whether <em class="parameter"><code>node</code></em> is a <a class="link" href="json-glib-JSON-Node.html#JSON-NODE-NULL:CAPS"><code class="literal">JSON_NODE_NULL</code></a>
911 </p>
912 <p>
913 </p>
914 <div class="note" style="margin-left: 0.5in; margin-right: 0.5in;">
915 <h3 class="title">Note</h3>A null node is not the same as a <a href="/home/ebassi/gnome3/install/share/gtk-doc/html/liboil/liboil-liboiljunk.html#NULL--CAPS"><code class="literal">NULL</code></a><a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a>
916 </div>
917 <p>
918 </p>
919 <div class="variablelist"><table border="0">
920 <col align="left" valign="top">
921 <tbody>
922 <tr>
923 <td><p><span class="term"><em class="parameter"><code>node</code></em> :</span></p></td>
924 <td>a <a class="link" href="json-glib-JSON-Node.html#JsonNode" title="JsonNode"><span class="type">JsonNode</span></a>
925 </td>
926 </tr>
927 <tr>
928 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
929 <td>
930 <code class="literal">TRUE</code> if the node is null</td>
931 </tr>
932 </tbody>
933 </table></div>
934 <p class="since">Since 0.8</p>
935 </div>
936 </div>
937 </div>
938 <div class="footer">
939 <hr>
940           Generated by GTK-Doc V1.18.1</div>
941 </body>
942 </html>