diff options
Diffstat (limited to 'include')
| -rw-r--r-- | include/plist/plist.h | 111 |
1 files changed, 52 insertions, 59 deletions
diff --git a/include/plist/plist.h b/include/plist/plist.h index 7dbc4ae..c66545a 100644 --- a/include/plist/plist.h +++ b/include/plist/plist.h | |||
| @@ -39,15 +39,8 @@ extern "C" | |||
| 39 | typedef unsigned __int32 uint32_t; | 39 | typedef unsigned __int32 uint32_t; |
| 40 | typedef unsigned __int64 uint64_t; | 40 | typedef unsigned __int64 uint64_t; |
| 41 | 41 | ||
| 42 | #ifdef plist_EXPORTS | ||
| 43 | #define PLIST_API __declspec( dllexport ) | ||
| 44 | #else | ||
| 45 | #define PLIST_API __declspec( dllimport ) | ||
| 46 | #endif | ||
| 47 | |||
| 48 | #else | 42 | #else |
| 49 | #include <stdint.h> | 43 | #include <stdint.h> |
| 50 | #define PLIST_API | ||
| 51 | #endif | 44 | #endif |
| 52 | 45 | ||
| 53 | #ifdef __llvm__ | 46 | #ifdef __llvm__ |
| @@ -130,7 +123,7 @@ extern "C" | |||
| 130 | * @return the created plist | 123 | * @return the created plist |
| 131 | * @sa #plist_type | 124 | * @sa #plist_type |
| 132 | */ | 125 | */ |
| 133 | PLIST_API plist_t plist_new_dict(void); | 126 | plist_t plist_new_dict(void); |
| 134 | 127 | ||
| 135 | /** | 128 | /** |
| 136 | * Create a new root plist_t type #PLIST_ARRAY | 129 | * Create a new root plist_t type #PLIST_ARRAY |
| @@ -138,7 +131,7 @@ extern "C" | |||
| 138 | * @return the created plist | 131 | * @return the created plist |
| 139 | * @sa #plist_type | 132 | * @sa #plist_type |
| 140 | */ | 133 | */ |
| 141 | PLIST_API plist_t plist_new_array(void); | 134 | plist_t plist_new_array(void); |
| 142 | 135 | ||
| 143 | /** | 136 | /** |
| 144 | * Create a new plist_t type #PLIST_STRING | 137 | * Create a new plist_t type #PLIST_STRING |
| @@ -147,7 +140,7 @@ extern "C" | |||
| 147 | * @return the created item | 140 | * @return the created item |
| 148 | * @sa #plist_type | 141 | * @sa #plist_type |
| 149 | */ | 142 | */ |
| 150 | PLIST_API plist_t plist_new_string(const char *val); | 143 | plist_t plist_new_string(const char *val); |
| 151 | 144 | ||
| 152 | /** | 145 | /** |
| 153 | * Create a new plist_t type #PLIST_BOOLEAN | 146 | * Create a new plist_t type #PLIST_BOOLEAN |
| @@ -156,7 +149,7 @@ extern "C" | |||
| 156 | * @return the created item | 149 | * @return the created item |
| 157 | * @sa #plist_type | 150 | * @sa #plist_type |
| 158 | */ | 151 | */ |
| 159 | PLIST_API plist_t plist_new_bool(uint8_t val); | 152 | plist_t plist_new_bool(uint8_t val); |
| 160 | 153 | ||
| 161 | /** | 154 | /** |
| 162 | * Create a new plist_t type #PLIST_UINT | 155 | * Create a new plist_t type #PLIST_UINT |
| @@ -165,7 +158,7 @@ extern "C" | |||
| 165 | * @return the created item | 158 | * @return the created item |
| 166 | * @sa #plist_type | 159 | * @sa #plist_type |
| 167 | */ | 160 | */ |
| 168 | PLIST_API plist_t plist_new_uint(uint64_t val); | 161 | plist_t plist_new_uint(uint64_t val); |
| 169 | 162 | ||
| 170 | /** | 163 | /** |
| 171 | * Create a new plist_t type #PLIST_REAL | 164 | * Create a new plist_t type #PLIST_REAL |
| @@ -174,7 +167,7 @@ extern "C" | |||
| 174 | * @return the created item | 167 | * @return the created item |
| 175 | * @sa #plist_type | 168 | * @sa #plist_type |
| 176 | */ | 169 | */ |
| 177 | PLIST_API plist_t plist_new_real(double val); | 170 | plist_t plist_new_real(double val); |
| 178 | 171 | ||
| 179 | /** | 172 | /** |
| 180 | * Create a new plist_t type #PLIST_DATA | 173 | * Create a new plist_t type #PLIST_DATA |
| @@ -184,7 +177,7 @@ extern "C" | |||
| 184 | * @return the created item | 177 | * @return the created item |
| 185 | * @sa #plist_type | 178 | * @sa #plist_type |
| 186 | */ | 179 | */ |
| 187 | PLIST_API plist_t plist_new_data(const char *val, uint64_t length); | 180 | plist_t plist_new_data(const char *val, uint64_t length); |
| 188 | 181 | ||
| 189 | /** | 182 | /** |
| 190 | * Create a new plist_t type #PLIST_DATE | 183 | * Create a new plist_t type #PLIST_DATE |
| @@ -194,7 +187,7 @@ extern "C" | |||
| 194 | * @return the created item | 187 | * @return the created item |
| 195 | * @sa #plist_type | 188 | * @sa #plist_type |
| 196 | */ | 189 | */ |
| 197 | PLIST_API plist_t plist_new_date(int32_t sec, int32_t usec); | 190 | plist_t plist_new_date(int32_t sec, int32_t usec); |
| 198 | 191 | ||
| 199 | /** | 192 | /** |
| 200 | * Create a new plist_t type #PLIST_UID | 193 | * Create a new plist_t type #PLIST_UID |
| @@ -203,14 +196,14 @@ extern "C" | |||
| 203 | * @return the created item | 196 | * @return the created item |
| 204 | * @sa #plist_type | 197 | * @sa #plist_type |
| 205 | */ | 198 | */ |
| 206 | PLIST_API plist_t plist_new_uid(uint64_t val); | 199 | plist_t plist_new_uid(uint64_t val); |
| 207 | 200 | ||
| 208 | /** | 201 | /** |
| 209 | * Destruct a plist_t node and all its children recursively | 202 | * Destruct a plist_t node and all its children recursively |
| 210 | * | 203 | * |
| 211 | * @param plist the plist to free | 204 | * @param plist the plist to free |
| 212 | */ | 205 | */ |
| 213 | PLIST_API void plist_free(plist_t plist); | 206 | void plist_free(plist_t plist); |
| 214 | 207 | ||
| 215 | /** | 208 | /** |
| 216 | * Return a copy of passed node and it's children | 209 | * Return a copy of passed node and it's children |
| @@ -218,7 +211,7 @@ extern "C" | |||
| 218 | * @param node the plist to copy | 211 | * @param node the plist to copy |
| 219 | * @return copied plist | 212 | * @return copied plist |
| 220 | */ | 213 | */ |
| 221 | PLIST_API plist_t plist_copy(plist_t node); | 214 | plist_t plist_copy(plist_t node); |
| 222 | 215 | ||
| 223 | 216 | ||
| 224 | /******************************************** | 217 | /******************************************** |
| @@ -233,7 +226,7 @@ extern "C" | |||
| 233 | * @param node the node of type #PLIST_ARRAY | 226 | * @param node the node of type #PLIST_ARRAY |
| 234 | * @return size of the #PLIST_ARRAY node | 227 | * @return size of the #PLIST_ARRAY node |
| 235 | */ | 228 | */ |
| 236 | PLIST_API uint32_t plist_array_get_size(plist_t node); | 229 | uint32_t plist_array_get_size(plist_t node); |
| 237 | 230 | ||
| 238 | /** | 231 | /** |
| 239 | * Get the nth item in a #PLIST_ARRAY node. | 232 | * Get the nth item in a #PLIST_ARRAY node. |
| @@ -242,7 +235,7 @@ extern "C" | |||
| 242 | * @param n the index of the item to get. Range is [0, array_size[ | 235 | * @param n the index of the item to get. Range is [0, array_size[ |
| 243 | * @return the nth item or NULL if node is not of type #PLIST_ARRAY | 236 | * @return the nth item or NULL if node is not of type #PLIST_ARRAY |
| 244 | */ | 237 | */ |
| 245 | PLIST_API plist_t plist_array_get_item(plist_t node, uint32_t n); | 238 | plist_t plist_array_get_item(plist_t node, uint32_t n); |
| 246 | 239 | ||
| 247 | /** | 240 | /** |
| 248 | * Get the index of an item. item must be a member of a #PLIST_ARRAY node. | 241 | * Get the index of an item. item must be a member of a #PLIST_ARRAY node. |
| @@ -250,7 +243,7 @@ extern "C" | |||
| 250 | * @param node the node | 243 | * @param node the node |
| 251 | * @return the node index | 244 | * @return the node index |
| 252 | */ | 245 | */ |
| 253 | PLIST_API uint32_t plist_array_get_item_index(plist_t node); | 246 | uint32_t plist_array_get_item_index(plist_t node); |
| 254 | 247 | ||
| 255 | /** | 248 | /** |
| 256 | * Set the nth item in a #PLIST_ARRAY node. | 249 | * Set the nth item in a #PLIST_ARRAY node. |
| @@ -260,7 +253,7 @@ extern "C" | |||
| 260 | * @param item the new item at index n. The array is responsible for freeing item when it is no longer needed. | 253 | * @param item the new item at index n. The array is responsible for freeing item when it is no longer needed. |
| 261 | * @param n the index of the item to get. Range is [0, array_size[. Assert if n is not in range. | 254 | * @param n the index of the item to get. Range is [0, array_size[. Assert if n is not in range. |
| 262 | */ | 255 | */ |
| 263 | PLIST_API void plist_array_set_item(plist_t node, plist_t item, uint32_t n); | 256 | void plist_array_set_item(plist_t node, plist_t item, uint32_t n); |
| 264 | 257 | ||
| 265 | /** | 258 | /** |
| 266 | * Append a new item at the end of a #PLIST_ARRAY node. | 259 | * Append a new item at the end of a #PLIST_ARRAY node. |
| @@ -268,7 +261,7 @@ extern "C" | |||
| 268 | * @param node the node of type #PLIST_ARRAY | 261 | * @param node the node of type #PLIST_ARRAY |
| 269 | * @param item the new item. The array is responsible for freeing item when it is no longer needed. | 262 | * @param item the new item. The array is responsible for freeing item when it is no longer needed. |
| 270 | */ | 263 | */ |
| 271 | PLIST_API void plist_array_append_item(plist_t node, plist_t item); | 264 | void plist_array_append_item(plist_t node, plist_t item); |
| 272 | 265 | ||
| 273 | /** | 266 | /** |
| 274 | * Insert a new item at position n in a #PLIST_ARRAY node. | 267 | * Insert a new item at position n in a #PLIST_ARRAY node. |
| @@ -277,7 +270,7 @@ extern "C" | |||
| 277 | * @param item the new item to insert. The array is responsible for freeing item when it is no longer needed. | 270 | * @param item the new item to insert. The array is responsible for freeing item when it is no longer needed. |
| 278 | * @param n The position at which the node will be stored. Range is [0, array_size[. Assert if n is not in range. | 271 | * @param n The position at which the node will be stored. Range is [0, array_size[. Assert if n is not in range. |
| 279 | */ | 272 | */ |
| 280 | PLIST_API void plist_array_insert_item(plist_t node, plist_t item, uint32_t n); | 273 | void plist_array_insert_item(plist_t node, plist_t item, uint32_t n); |
| 281 | 274 | ||
| 282 | /** | 275 | /** |
| 283 | * Remove an existing position in a #PLIST_ARRAY node. | 276 | * Remove an existing position in a #PLIST_ARRAY node. |
| @@ -286,7 +279,7 @@ extern "C" | |||
| 286 | * @param node the node of type #PLIST_ARRAY | 279 | * @param node the node of type #PLIST_ARRAY |
| 287 | * @param n The position to remove. Range is [0, array_size[. Assert if n is not in range. | 280 | * @param n The position to remove. Range is [0, array_size[. Assert if n is not in range. |
| 288 | */ | 281 | */ |
| 289 | PLIST_API void plist_array_remove_item(plist_t node, uint32_t n); | 282 | void plist_array_remove_item(plist_t node, uint32_t n); |
| 290 | 283 | ||
| 291 | /******************************************** | 284 | /******************************************** |
| 292 | * * | 285 | * * |
| @@ -300,7 +293,7 @@ extern "C" | |||
| 300 | * @param node the node of type #PLIST_DICT | 293 | * @param node the node of type #PLIST_DICT |
| 301 | * @return size of the #PLIST_DICT node | 294 | * @return size of the #PLIST_DICT node |
| 302 | */ | 295 | */ |
| 303 | PLIST_API uint32_t plist_dict_get_size(plist_t node); | 296 | uint32_t plist_dict_get_size(plist_t node); |
| 304 | 297 | ||
| 305 | /** | 298 | /** |
| 306 | * Create an iterator of a #PLIST_DICT node. | 299 | * Create an iterator of a #PLIST_DICT node. |
| @@ -309,7 +302,7 @@ extern "C" | |||
| 309 | * @param node the node of type #PLIST_DICT | 302 | * @param node the node of type #PLIST_DICT |
| 310 | * @param iter iterator of the #PLIST_DICT node | 303 | * @param iter iterator of the #PLIST_DICT node |
| 311 | */ | 304 | */ |
| 312 | PLIST_API void plist_dict_new_iter(plist_t node, plist_dict_iter *iter); | 305 | void plist_dict_new_iter(plist_t node, plist_dict_iter *iter); |
| 313 | 306 | ||
| 314 | /** | 307 | /** |
| 315 | * Increment iterator of a #PLIST_DICT node. | 308 | * Increment iterator of a #PLIST_DICT node. |
| @@ -321,7 +314,7 @@ extern "C" | |||
| 321 | * @param val a location to store the value, or NULL. The caller should *not* | 314 | * @param val a location to store the value, or NULL. The caller should *not* |
| 322 | * free the returned value. | 315 | * free the returned value. |
| 323 | */ | 316 | */ |
| 324 | PLIST_API void plist_dict_next_item(plist_t node, plist_dict_iter iter, char **key, plist_t *val); | 317 | void plist_dict_next_item(plist_t node, plist_dict_iter iter, char **key, plist_t *val); |
| 325 | 318 | ||
| 326 | /** | 319 | /** |
| 327 | * Get key associated to an item. Item must be member of a dictionary | 320 | * Get key associated to an item. Item must be member of a dictionary |
| @@ -329,7 +322,7 @@ extern "C" | |||
| 329 | * @param node the node | 322 | * @param node the node |
| 330 | * @param key a location to store the key. The caller is responsible for freeing the returned string. | 323 | * @param key a location to store the key. The caller is responsible for freeing the returned string. |
| 331 | */ | 324 | */ |
| 332 | PLIST_API void plist_dict_get_item_key(plist_t node, char **key); | 325 | void plist_dict_get_item_key(plist_t node, char **key); |
| 333 | 326 | ||
| 334 | /** | 327 | /** |
| 335 | * Get the nth item in a #PLIST_DICT node. | 328 | * Get the nth item in a #PLIST_DICT node. |
| @@ -339,7 +332,7 @@ extern "C" | |||
| 339 | * @return the item or NULL if node is not of type #PLIST_DICT. The caller should not free | 332 | * @return the item or NULL if node is not of type #PLIST_DICT. The caller should not free |
| 340 | * the returned node. | 333 | * the returned node. |
| 341 | */ | 334 | */ |
| 342 | PLIST_API plist_t plist_dict_get_item(plist_t node, const char* key); | 335 | plist_t plist_dict_get_item(plist_t node, const char* key); |
| 343 | 336 | ||
| 344 | /** | 337 | /** |
| 345 | * Set item identified by key in a #PLIST_DICT node. | 338 | * Set item identified by key in a #PLIST_DICT node. |
| @@ -350,7 +343,7 @@ extern "C" | |||
| 350 | * @param item the new item associated to key | 343 | * @param item the new item associated to key |
| 351 | * @param key the identifier of the item to set. | 344 | * @param key the identifier of the item to set. |
| 352 | */ | 345 | */ |
| 353 | PLIST_API void plist_dict_set_item(plist_t node, const char* key, plist_t item); | 346 | void plist_dict_set_item(plist_t node, const char* key, plist_t item); |
| 354 | 347 | ||
| 355 | /** | 348 | /** |
| 356 | * Insert a new item into a #PLIST_DICT node. | 349 | * Insert a new item into a #PLIST_DICT node. |
| @@ -362,7 +355,7 @@ extern "C" | |||
| 362 | * @param key The identifier of the item to insert. | 355 | * @param key The identifier of the item to insert. |
| 363 | */ | 356 | */ |
| 364 | PLIST_WARN_DEPRECATED("use plist_dict_set_item instead") | 357 | PLIST_WARN_DEPRECATED("use plist_dict_set_item instead") |
| 365 | PLIST_API void plist_dict_insert_item(plist_t node, const char* key, plist_t item); | 358 | void plist_dict_insert_item(plist_t node, const char* key, plist_t item); |
| 366 | 359 | ||
| 367 | /** | 360 | /** |
| 368 | * Remove an existing position in a #PLIST_DICT node. | 361 | * Remove an existing position in a #PLIST_DICT node. |
| @@ -371,7 +364,7 @@ extern "C" | |||
| 371 | * @param node the node of type #PLIST_DICT | 364 | * @param node the node of type #PLIST_DICT |
| 372 | * @param key The identifier of the item to remove. Assert if identifier is not present. | 365 | * @param key The identifier of the item to remove. Assert if identifier is not present. |
| 373 | */ | 366 | */ |
| 374 | PLIST_API void plist_dict_remove_item(plist_t node, const char* key); | 367 | void plist_dict_remove_item(plist_t node, const char* key); |
| 375 | 368 | ||
| 376 | /** | 369 | /** |
| 377 | * Merge a dictionary into another. This will add all key/value pairs | 370 | * Merge a dictionary into another. This will add all key/value pairs |
| @@ -381,7 +374,7 @@ extern "C" | |||
| 381 | * @param target pointer to an existing node of type #PLIST_DICT | 374 | * @param target pointer to an existing node of type #PLIST_DICT |
| 382 | * @param source node of type #PLIST_DICT that should be merged into target | 375 | * @param source node of type #PLIST_DICT that should be merged into target |
| 383 | */ | 376 | */ |
| 384 | PLIST_API void plist_dict_merge(plist_t *target, plist_t source); | 377 | void plist_dict_merge(plist_t *target, plist_t source); |
| 385 | 378 | ||
| 386 | 379 | ||
| 387 | /******************************************** | 380 | /******************************************** |
| @@ -395,7 +388,7 @@ extern "C" | |||
| 395 | * | 388 | * |
| 396 | * @param node the parent (NULL if node is root) | 389 | * @param node the parent (NULL if node is root) |
| 397 | */ | 390 | */ |
| 398 | PLIST_API plist_t plist_get_parent(plist_t node); | 391 | plist_t plist_get_parent(plist_t node); |
| 399 | 392 | ||
| 400 | /** | 393 | /** |
| 401 | * Get the #plist_type of a node. | 394 | * Get the #plist_type of a node. |
| @@ -403,7 +396,7 @@ extern "C" | |||
| 403 | * @param node the node | 396 | * @param node the node |
| 404 | * @return the type of the node | 397 | * @return the type of the node |
| 405 | */ | 398 | */ |
| 406 | PLIST_API plist_type plist_get_node_type(plist_t node); | 399 | plist_type plist_get_node_type(plist_t node); |
| 407 | 400 | ||
| 408 | /** | 401 | /** |
| 409 | * Get the value of a #PLIST_KEY node. | 402 | * Get the value of a #PLIST_KEY node. |
| @@ -413,7 +406,7 @@ extern "C" | |||
| 413 | * @param val a pointer to a C-string. This function allocates the memory, | 406 | * @param val a pointer to a C-string. This function allocates the memory, |
| 414 | * caller is responsible for freeing it. | 407 | * caller is responsible for freeing it. |
| 415 | */ | 408 | */ |
| 416 | PLIST_API void plist_get_key_val(plist_t node, char **val); | 409 | void plist_get_key_val(plist_t node, char **val); |
| 417 | 410 | ||
| 418 | /** | 411 | /** |
| 419 | * Get the value of a #PLIST_STRING node. | 412 | * Get the value of a #PLIST_STRING node. |
| @@ -423,7 +416,7 @@ extern "C" | |||
| 423 | * @param val a pointer to a C-string. This function allocates the memory, | 416 | * @param val a pointer to a C-string. This function allocates the memory, |
| 424 | * caller is responsible for freeing it. Data is UTF-8 encoded. | 417 | * caller is responsible for freeing it. Data is UTF-8 encoded. |
| 425 | */ | 418 | */ |
| 426 | PLIST_API void plist_get_string_val(plist_t node, char **val); | 419 | void plist_get_string_val(plist_t node, char **val); |
| 427 | 420 | ||
| 428 | /** | 421 | /** |
| 429 | * Get the value of a #PLIST_BOOLEAN node. | 422 | * Get the value of a #PLIST_BOOLEAN node. |
| @@ -432,7 +425,7 @@ extern "C" | |||
| 432 | * @param node the node | 425 | * @param node the node |
| 433 | * @param val a pointer to a uint8_t variable. | 426 | * @param val a pointer to a uint8_t variable. |
| 434 | */ | 427 | */ |
| 435 | PLIST_API void plist_get_bool_val(plist_t node, uint8_t * val); | 428 | void plist_get_bool_val(plist_t node, uint8_t * val); |
| 436 | 429 | ||
| 437 | /** | 430 | /** |
| 438 | * Get the value of a #PLIST_UINT node. | 431 | * Get the value of a #PLIST_UINT node. |
| @@ -441,7 +434,7 @@ extern "C" | |||
| 441 | * @param node the node | 434 | * @param node the node |
| 442 | * @param val a pointer to a uint64_t variable. | 435 | * @param val a pointer to a uint64_t variable. |
| 443 | */ | 436 | */ |
| 444 | PLIST_API void plist_get_uint_val(plist_t node, uint64_t * val); | 437 | void plist_get_uint_val(plist_t node, uint64_t * val); |
| 445 | 438 | ||
| 446 | /** | 439 | /** |
| 447 | * Get the value of a #PLIST_REAL node. | 440 | * Get the value of a #PLIST_REAL node. |
| @@ -450,7 +443,7 @@ extern "C" | |||
| 450 | * @param node the node | 443 | * @param node the node |
| 451 | * @param val a pointer to a double variable. | 444 | * @param val a pointer to a double variable. |
| 452 | */ | 445 | */ |
| 453 | PLIST_API void plist_get_real_val(plist_t node, double *val); | 446 | void plist_get_real_val(plist_t node, double *val); |
| 454 | 447 | ||
| 455 | /** | 448 | /** |
| 456 | * Get the value of a #PLIST_DATA node. | 449 | * Get the value of a #PLIST_DATA node. |
| @@ -461,7 +454,7 @@ extern "C" | |||
| 461 | * caller is responsible for freeing it. | 454 | * caller is responsible for freeing it. |
| 462 | * @param length the length of the buffer | 455 | * @param length the length of the buffer |
| 463 | */ | 456 | */ |
| 464 | PLIST_API void plist_get_data_val(plist_t node, char **val, uint64_t * length); | 457 | void plist_get_data_val(plist_t node, char **val, uint64_t * length); |
| 465 | 458 | ||
| 466 | /** | 459 | /** |
| 467 | * Get the value of a #PLIST_DATE node. | 460 | * Get the value of a #PLIST_DATE node. |
| @@ -471,7 +464,7 @@ extern "C" | |||
| 471 | * @param sec a pointer to an int32_t variable. Represents the number of seconds since 01/01/2001. | 464 | * @param sec a pointer to an int32_t variable. Represents the number of seconds since 01/01/2001. |
| 472 | * @param usec a pointer to an int32_t variable. Represents the number of microseconds | 465 | * @param usec a pointer to an int32_t variable. Represents the number of microseconds |
| 473 | */ | 466 | */ |
| 474 | PLIST_API void plist_get_date_val(plist_t node, int32_t * sec, int32_t * usec); | 467 | void plist_get_date_val(plist_t node, int32_t * sec, int32_t * usec); |
| 475 | 468 | ||
| 476 | /** | 469 | /** |
| 477 | * Get the value of a #PLIST_UID node. | 470 | * Get the value of a #PLIST_UID node. |
| @@ -480,7 +473,7 @@ extern "C" | |||
| 480 | * @param node the node | 473 | * @param node the node |
| 481 | * @param val a pointer to a uint64_t variable. | 474 | * @param val a pointer to a uint64_t variable. |
| 482 | */ | 475 | */ |
| 483 | PLIST_API void plist_get_uid_val(plist_t node, uint64_t * val); | 476 | void plist_get_uid_val(plist_t node, uint64_t * val); |
| 484 | 477 | ||
| 485 | 478 | ||
| 486 | /******************************************** | 479 | /******************************************** |
| @@ -496,7 +489,7 @@ extern "C" | |||
| 496 | * @param node the node | 489 | * @param node the node |
| 497 | * @param val the key value | 490 | * @param val the key value |
| 498 | */ | 491 | */ |
| 499 | PLIST_API void plist_set_key_val(plist_t node, const char *val); | 492 | void plist_set_key_val(plist_t node, const char *val); |
| 500 | 493 | ||
| 501 | /** | 494 | /** |
| 502 | * Set the value of a node. | 495 | * Set the value of a node. |
| @@ -506,7 +499,7 @@ extern "C" | |||
| 506 | * @param val the string value. The string is copied when set and will be | 499 | * @param val the string value. The string is copied when set and will be |
| 507 | * freed by the node. | 500 | * freed by the node. |
| 508 | */ | 501 | */ |
| 509 | PLIST_API void plist_set_string_val(plist_t node, const char *val); | 502 | void plist_set_string_val(plist_t node, const char *val); |
| 510 | 503 | ||
| 511 | /** | 504 | /** |
| 512 | * Set the value of a node. | 505 | * Set the value of a node. |
| @@ -515,7 +508,7 @@ extern "C" | |||
| 515 | * @param node the node | 508 | * @param node the node |
| 516 | * @param val the boolean value | 509 | * @param val the boolean value |
| 517 | */ | 510 | */ |
| 518 | PLIST_API void plist_set_bool_val(plist_t node, uint8_t val); | 511 | void plist_set_bool_val(plist_t node, uint8_t val); |
| 519 | 512 | ||
| 520 | /** | 513 | /** |
| 521 | * Set the value of a node. | 514 | * Set the value of a node. |
| @@ -524,7 +517,7 @@ extern "C" | |||
| 524 | * @param node the node | 517 | * @param node the node |
| 525 | * @param val the unsigned integer value | 518 | * @param val the unsigned integer value |
| 526 | */ | 519 | */ |
| 527 | PLIST_API void plist_set_uint_val(plist_t node, uint64_t val); | 520 | void plist_set_uint_val(plist_t node, uint64_t val); |
| 528 | 521 | ||
| 529 | /** | 522 | /** |
| 530 | * Set the value of a node. | 523 | * Set the value of a node. |
| @@ -533,7 +526,7 @@ extern "C" | |||
| 533 | * @param node the node | 526 | * @param node the node |
| 534 | * @param val the real value | 527 | * @param val the real value |
| 535 | */ | 528 | */ |
| 536 | PLIST_API void plist_set_real_val(plist_t node, double val); | 529 | void plist_set_real_val(plist_t node, double val); |
| 537 | 530 | ||
| 538 | /** | 531 | /** |
| 539 | * Set the value of a node. | 532 | * Set the value of a node. |
| @@ -544,7 +537,7 @@ extern "C" | |||
| 544 | * be freed by the node. | 537 | * be freed by the node. |
| 545 | * @param length the length of the buffer | 538 | * @param length the length of the buffer |
| 546 | */ | 539 | */ |
| 547 | PLIST_API void plist_set_data_val(plist_t node, const char *val, uint64_t length); | 540 | void plist_set_data_val(plist_t node, const char *val, uint64_t length); |
| 548 | 541 | ||
| 549 | /** | 542 | /** |
| 550 | * Set the value of a node. | 543 | * Set the value of a node. |
| @@ -554,7 +547,7 @@ extern "C" | |||
| 554 | * @param sec the number of seconds since 01/01/2001 | 547 | * @param sec the number of seconds since 01/01/2001 |
| 555 | * @param usec the number of microseconds | 548 | * @param usec the number of microseconds |
| 556 | */ | 549 | */ |
| 557 | PLIST_API void plist_set_date_val(plist_t node, int32_t sec, int32_t usec); | 550 | void plist_set_date_val(plist_t node, int32_t sec, int32_t usec); |
| 558 | 551 | ||
| 559 | /** | 552 | /** |
| 560 | * Set the value of a node. | 553 | * Set the value of a node. |
| @@ -563,7 +556,7 @@ extern "C" | |||
| 563 | * @param node the node | 556 | * @param node the node |
| 564 | * @param val the unsigned integer value | 557 | * @param val the unsigned integer value |
| 565 | */ | 558 | */ |
| 566 | PLIST_API void plist_set_uid_val(plist_t node, uint64_t val); | 559 | void plist_set_uid_val(plist_t node, uint64_t val); |
| 567 | 560 | ||
| 568 | 561 | ||
| 569 | /******************************************** | 562 | /******************************************** |
| @@ -580,7 +573,7 @@ extern "C" | |||
| 580 | * caller is responsible for freeing it. Data is UTF-8 encoded. | 573 | * caller is responsible for freeing it. Data is UTF-8 encoded. |
| 581 | * @param length a pointer to an uint32_t variable. Represents the length of the allocated buffer. | 574 | * @param length a pointer to an uint32_t variable. Represents the length of the allocated buffer. |
| 582 | */ | 575 | */ |
| 583 | PLIST_API void plist_to_xml(plist_t plist, char **plist_xml, uint32_t * length); | 576 | void plist_to_xml(plist_t plist, char **plist_xml, uint32_t * length); |
| 584 | 577 | ||
| 585 | /** | 578 | /** |
| 586 | * Export the #plist_t structure to binary format. | 579 | * Export the #plist_t structure to binary format. |
| @@ -590,7 +583,7 @@ extern "C" | |||
| 590 | * caller is responsible for freeing it. | 583 | * caller is responsible for freeing it. |
| 591 | * @param length a pointer to an uint32_t variable. Represents the length of the allocated buffer. | 584 | * @param length a pointer to an uint32_t variable. Represents the length of the allocated buffer. |
| 592 | */ | 585 | */ |
| 593 | PLIST_API void plist_to_bin(plist_t plist, char **plist_bin, uint32_t * length); | 586 | void plist_to_bin(plist_t plist, char **plist_bin, uint32_t * length); |
| 594 | 587 | ||
| 595 | /** | 588 | /** |
| 596 | * Import the #plist_t structure from XML format. | 589 | * Import the #plist_t structure from XML format. |
| @@ -599,7 +592,7 @@ extern "C" | |||
| 599 | * @param length length of the buffer to read. | 592 | * @param length length of the buffer to read. |
| 600 | * @param plist a pointer to the imported plist. | 593 | * @param plist a pointer to the imported plist. |
| 601 | */ | 594 | */ |
| 602 | PLIST_API void plist_from_xml(const char *plist_xml, uint32_t length, plist_t * plist); | 595 | void plist_from_xml(const char *plist_xml, uint32_t length, plist_t * plist); |
| 603 | 596 | ||
| 604 | /** | 597 | /** |
| 605 | * Import the #plist_t structure from binary format. | 598 | * Import the #plist_t structure from binary format. |
| @@ -608,7 +601,7 @@ extern "C" | |||
| 608 | * @param length length of the buffer to read. | 601 | * @param length length of the buffer to read. |
| 609 | * @param plist a pointer to the imported plist. | 602 | * @param plist a pointer to the imported plist. |
| 610 | */ | 603 | */ |
| 611 | PLIST_API void plist_from_bin(const char *plist_bin, uint32_t length, plist_t * plist); | 604 | void plist_from_bin(const char *plist_bin, uint32_t length, plist_t * plist); |
| 612 | 605 | ||
| 613 | 606 | ||
| 614 | /******************************************** | 607 | /******************************************** |
| @@ -626,7 +619,7 @@ extern "C" | |||
| 626 | * @param length length of the path to access | 619 | * @param length length of the path to access |
| 627 | * @return the value to access. | 620 | * @return the value to access. |
| 628 | */ | 621 | */ |
| 629 | PLIST_API plist_t plist_access_path(plist_t plist, uint32_t length, ...); | 622 | plist_t plist_access_path(plist_t plist, uint32_t length, ...); |
| 630 | 623 | ||
| 631 | /** | 624 | /** |
| 632 | * Variadic version of #plist_access_path. | 625 | * Variadic version of #plist_access_path. |
| @@ -636,7 +629,7 @@ extern "C" | |||
| 636 | * @param v list of array's index and dic'st key | 629 | * @param v list of array's index and dic'st key |
| 637 | * @return the value to access. | 630 | * @return the value to access. |
| 638 | */ | 631 | */ |
| 639 | PLIST_API plist_t plist_access_pathv(plist_t plist, uint32_t length, va_list v); | 632 | plist_t plist_access_pathv(plist_t plist, uint32_t length, va_list v); |
| 640 | 633 | ||
| 641 | /** | 634 | /** |
| 642 | * Compare two node values | 635 | * Compare two node values |
| @@ -645,7 +638,7 @@ extern "C" | |||
| 645 | * @param node_r rigth node to compare | 638 | * @param node_r rigth node to compare |
| 646 | * @return TRUE is type and value match, FALSE otherwise. | 639 | * @return TRUE is type and value match, FALSE otherwise. |
| 647 | */ | 640 | */ |
| 648 | PLIST_API char plist_compare_node_value(plist_t node_l, plist_t node_r); | 641 | char plist_compare_node_value(plist_t node_l, plist_t node_r); |
| 649 | 642 | ||
| 650 | /*@}*/ | 643 | /*@}*/ |
| 651 | 644 | ||
