70 Commits

Author SHA1 Message Date
Nikias Bassen ad1a95e962 Add new PLIST_IS_* helper macros for the different plist node types
Instead of e.g.:
    if (plist_get_node_type(plist) == PLIST_STRING)
you can now write:
    if (PLIST_IS_STRING(plist))
2016-11-10 02:14:59 +01:00
Nikias Bassen 392135c7db Remove libxml2 dependency in favor of custom XML parsing 2016-10-22 04:39:47 +02:00
Christophe Fergeau 11d639f92f Implement plist_from_memory()
Rather than having everyone reimplement binary/XML plist detection by
looking at the first bytes of the plist content, it's better to do this
detection in libplist and hide that internal detail from library users.
2016-05-12 02:55:01 +02:00
Christophe Fergeau 449e27bf75 Add plist_is_binary()
It can be useful if one needs to know what type of plist a memory buffer
contains.
2016-05-12 02:52:50 +02:00
Frederik Carlier 6ab7e301f1 Move libxml cleanup code to a plist_cleanup method 2016-04-20 14:18:46 +02:00
Nikias Bassen 62813daf2c Avoid exporting non-public symbols 2014-10-03 15:39:47 +02:00
Nikias Bassen eab599c151 plist.h: Move deprecation marker before function declaration to make non-gcc/clang compilers happy 2014-09-26 22:35:38 +02:00
Nikias Bassen 7377026506 C++: Add missing cstddef include to Node.h 2014-09-26 01:22:47 +02:00
Aaron Burghardt b6c43e901c Added const to Array.GetSize(), and to 3 Node methods. 2014-09-20 00:10:46 +02:00
Aaron Burghardt ccd6f05fe1 Change Clone() to be const, which required constructors with const references and a const GetValue(). 2014-09-20 00:10:46 +02:00
Nikias Bassen 83650b30ad Properly rename header guards according to C++ standard 2014-08-06 01:42:46 +02:00
Martin Szulecki 1317925ffc Move deprecation marker also for C++ API for better compiler output 2014-05-21 14:42:49 +02:00
Nikias Bassen 135164ae06 Move deprecation marker after the function declaration for better compiler output 2014-05-20 23:43:36 +02:00
Nikias Bassen a9ec8fa5ce Removed plist_set_type() as it should not be used. 2014-05-20 21:01:11 +02:00
Martin Szulecki c51d1a77b0 Redo PLIST_WARN_DEPRECATED macro to work with older llvm/clang 2014-05-20 17:47:13 +02:00
Aaron Burghardt 7b59a04d94 Added Doxygen comments to explicitly describe memory buffer ownership/responsibility. 2014-05-20 03:02:46 +02:00
Nikias Bassen 6b719ecda2 deprecated plist_dict_insert_item in favor of plist_dict_set_item 2014-03-19 02:32:57 +01:00
Nikias Bassen f9299fa80a plist_dict_set_item: insert key/value pair if key not already present 2014-03-19 02:26:09 +01:00
Nikias Bassen 3b76474994 add new plist_dict_merge() function 2013-12-13 00:32:06 +01:00
Nikias Bassen 553c384920 C++: added support for PLIST_UID nodes (class Uid) 2013-03-19 16:50:47 +01:00
Nikias Bassen 32320a185e added Key.h to plist++ header file 2013-03-18 01:49:24 +01:00
Nikias Bassen 46a5feb381 C++ bindings: added support for PLIST_KEY nodes. 2012-11-13 03:22:51 +01:00
Nikias Bassen 817749dd4e implemented handling of UID keyed encoding type 2012-09-16 06:03:57 +02:00
Nikias Bassen fee6a9eacd include sys/time.h for systems that don't include it automatically 2012-08-15 20:22:00 +02:00
Nikias Bassen f024951b48 remove useless win32 include from plist/Date.h 2012-05-08 18:00:53 +02:00