fix compile regression on some platforms after removing sys/types.h include

fix cx_mempool_free crash if ptr is null

avoid state buffer allocation for JSON with reasonable nesting depth

add cx_nmemb() utility

make both gcc and clang happy with how cx_json_value_nothing is initialized

fix memory leak in case of json parser errors

use json reader state macros everywhere

fix incomplete json object not resulting in syntax error

fix memory leak in json reader when handling incomplete tokens

add test for parsing json with multiple incomplete tokens

simplify cx_json_value_nothing initialization

add first draft of json implementation - relates to #431

add missing dependencies for test_properties.o

add convenience macro for cx_reallocate to hide the (void**) cast

remove <sys/types.h> include from common.h

add extern "C" to iterator.h

add extern "C" to properties.h

add test coverage for unlinking tree nodes w/o prev pointer

add max depth for tree search - closes #459

fix totally bugged assertion in cxPropertiesUseStack()

add source/sink facility for properties - fixes #430

fix missing parameter doc

fix several survivors of east-const and some missing consts

fix invalid reads when removing linked list nodes

add implementation for the properties parser

add ucx2.1 style interface for a properties parser

also report coverage for header files

make loc_prev in trees optional - fixes #433

update CHANGELOG

add possibility to remove arrays of data and retrieve removed data

add cxTreeSetParent()

add functions to start iteration in a subtree

add missing details for 100% test coverage in tree.c

add test for creating an iterator over an empty tree

simplify tree class

implement cxTreeDestroyNode and cxTreeDestroySubtree - resolves #438

fix missing free() in test_array_insert_sorted

fix missing free() in test_tree_add_duplicate_root

fix uninitialized simple_destructor - fixes #443

implement cxTreeRemove() with re-link function

rename cxTreeRemove() to cxTreeRemoveSubtree()

fix bug when removing the root node of a tree

add test for simple destructor in trees - fixes #436

complete implementation of remaining high level tree functions

implement cxTreeInsert family of functions

add cxTreeSubtreeDepth()

implement cxTreeCreate family of functions

add functions to link/unlink nodes manually

downgrade the attention block regarding the auto-register of a simple destructor to a note

more prototypes for tree functions

prototypes for create and destroy functions

add allocator and root node pointer to tree structure

allow find() member function to start in an arbitrary subtree

provide a default tree node layout, but do not make it mandatory

first draft of a class for high level trees

add bounding parameter to cx_tree_add_iter()

fix misleading documentation that could have indicated that an allocator is optional for lists

make all function attributes leading - fixes #425

move all const keywords to the west - fixes #426

apply binary search in cx_array_insert_sorted()

(0) -300 -100 -60 tip

mercurial