summaryrefslogtreecommitdiffstats
path: root/include/plist
AgeCommit message (Collapse)AuthorFilesLines
2021-12-19Add new plist_mem_free() functionGravatar Nikias Bassen1-14/+20
Thanks to @azerg for bringing this to my attention. Instead of having multiple (internally identical) plist_*_free() functions, this commit introduces a single plist_mem_free() that can be used to free the memory allocated by plist_to_xml(), plist_to_bin(), plist_get_key_val(), plist_get_string_val(), and plist_get_data_val(). Note: This commit REMOVES plist_to_bin_free() and plist_to_xml_free().
2021-06-22[clang-tidy] cpp: Turn reference operators to constGravatar Rosen Penev10-10/+10
Found with cppcoreguidelines-c-copy-assignment-signature Signed-off-by: Rosen Penev <rosenp@gmail.com>
2020-06-03c++: Fix inconsistent declarationsGravatar Rosen Penev3-4/+4
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2020-05-11Add plist_*_val_compare, plist_*_val_contains, etc. for the respective node ↵Gravatar Nikias Bassen1-0/+183
types ... except container node types like PLIST_ARRAY or PLIST_DICT.
2019-11-07Add plist_get_data_ptr() and plist_get_string_ptr() to the interfaceGravatar Nikias Bassen1-0/+26
2019-11-07Add plist_to_bin_free() and plist_to_xml_free() functions that free memory ↵Gravatar Nikias Bassen1-0/+14
allocated by plist_to_bin()/plist_to_xml()
2019-07-07Add PList::Dictionary::const_iteratorGravatar Alexander Böhn1-0/+4
... and const versions of three member functions, each returning const_iterator: * Plist::Dictionary::Begin() * PList::Dictionary::End() * PList::Dictionary::Find()
2019-05-20Add plist_dict_item_get_key() to allow retrieving the key node for a given ↵Gravatar Nikias Bassen1-2/+10
item of a #PLIST_DICT
2019-05-19Add plist_array_item_remove() to allow removing an array's child node ↵Gravatar Nikias Bassen1-0/+8
without relying on the index
2019-05-19plist_array_get_item_index(): return UINT_MAX instead of 0 when node can't ↵Gravatar Nikias Bassen1-1/+1
be found
2019-01-21headers: Don't redefine uint*_t for newer versions of MSVCGravatar Nikias Bassen1-1/+1
2019-01-21plist: Add iterator for #PLIST_ARRAY nodesGravatar Nikias Bassen1-9/+37
Similar to #PLIST_DICT, an iterator can now be used for #PLIST_ARRAY nodes. Get an iterator with plist_array_new_iter() and use plist_array_next_item() to iterate over the elements.
2016-11-10Add new PLIST_IS_* helper macros for the different plist node typesGravatar Nikias Bassen1-0/+14
Instead of e.g.: if (plist_get_node_type(plist) == PLIST_STRING) you can now write: if (PLIST_IS_STRING(plist))
2016-10-22Remove libxml2 dependency in favor of custom XML parsingGravatar Nikias Bassen1-13/+0
2016-05-12Implement plist_from_memory()Gravatar Christophe Fergeau1-0/+11
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-12Add plist_is_binary()Gravatar Christophe Fergeau1-0/+13
It can be useful if one needs to know what type of plist a memory buffer contains.
2016-04-20Move libxml cleanup code to a plist_cleanup methodGravatar Frederik Carlier1-0/+13
2014-10-03Avoid exporting non-public symbolsGravatar Nikias Bassen1-59/+52
2014-09-26plist.h: Move deprecation marker before function declaration to make ↵Gravatar Nikias Bassen1-1/+2
non-gcc/clang compilers happy
2014-09-26C++: Add missing cstddef include to Node.hGravatar Nikias Bassen1-0/+1
2014-09-20Added const to Array.GetSize(), and to 3 Node methods.Gravatar Aaron Burghardt2-4/+4
2014-09-20Change Clone() to be const, which required constructors with const ↵Gravatar Aaron Burghardt11-33/+34
references and a const GetValue().
2014-08-06Properly rename header guards according to C++ standardGravatar Nikias Bassen12-36/+36
2014-05-21Move deprecation marker also for C++ API for better compiler outputGravatar Martin Szulecki1-1/+1
2014-05-20Move deprecation marker after the function declaration for better compiler ↵Gravatar Nikias Bassen1-1/+1
output
2014-05-20Removed plist_set_type() as it should not be used.Gravatar Nikias Bassen1-8/+0
2014-05-20Redo PLIST_WARN_DEPRECATED macro to work with older llvm/clangGravatar Martin Szulecki2-10/+32
2014-05-20Added Doxygen comments to explicitly describe memory buffer ↵Gravatar Aaron Burghardt1-12/+17
ownership/responsibility.
2014-03-19deprecated plist_dict_insert_item in favor of plist_dict_set_itemGravatar Nikias Bassen2-2/+13
2014-03-19plist_dict_set_item: insert key/value pair if key not already presentGravatar Nikias Bassen1-4/+5
2013-12-13add new plist_dict_merge() functionGravatar Nikias Bassen1-0/+10
2013-03-19C++: added support for PLIST_UID nodes (class Uid)Gravatar Nikias Bassen2-0/+49
2013-03-18added Key.h to plist++ header fileGravatar Nikias Bassen1-0/+1
2012-11-13C++ bindings: added support for PLIST_KEY nodes.Gravatar Nikias Bassen1-0/+49
2012-09-16implemented handling of UID keyed encoding typeGravatar Nikias Bassen1-0/+28
2012-08-15include sys/time.h for systems that don't include it automaticallyGravatar Nikias Bassen1-0/+1
2012-05-08remove useless win32 include from plist/Date.hGravatar Nikias Bassen1-4/+0
2010-03-03Alow compiling with mingw on windows (thanks to Patrick).Gravatar Jonathan Beck1-1/+1
2009-11-11Move some methods and drop Utils class in C++ binding.Gravatar Jonathan Beck4-44/+5
2009-11-10Remove deprecated functions from API.Gravatar Jonathan Beck1-162/+0
2009-11-10Remove wrongly exposed SetParent method.Gravatar Jonathan Beck2-2/+5
2009-11-04Add GetNodeIdex and GetNodeKey methods.Gravatar Jonathan Beck2-0/+2
2009-10-28Update doxygen documentation generation to be useful.Gravatar Martin Szulecki1-4/+6
2009-10-28Format sources to ANSI style using AStyle (astyle --style=ansi).Gravatar Jonathan Beck13-878/+880
2009-10-28Unlink previous node in SetParent().Gravatar Jonathan Beck1-0/+2
2009-10-28Fix build for MSVC9.Gravatar Jonathan Beck1-0/+4
2009-10-26Change name of input argument as 'in' is a reserved keyword in python.Gravatar Jonathan Beck1-2/+2
2009-10-26Add Set/Get Parent and a helper to create a Node from a plist_t.Gravatar Jonathan Beck11-21/+25
2009-10-19prefix headers #ifndef with PLIST__ to make them less common.Gravatar Jonathan Beck11-33/+33
2009-10-18Tweak Dictioonary interface a bit.Gravatar Jonathan Beck1-1/+2