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()

fix for empty arrays

fix documentation

also add a binary search for the supremum

fixes incorrect result from cx_array_binary_search() when searched element is smaller than the entire array

add cx_array_binary_search() - fixes #424

add low level cx_array_insert_sorted() and convenience macros

add missing documentation for cx_list_default_swap() return value

add optimized implementation of insert_sorted for array lists

fix cx_ll_insert_sorted_cmp_func not being thread local

implement optimized sorted insert for linked lists - resolves #415

fix typo in documentation

optimize default insert_sorted implementation

add stupid default implementation for high level insertion sort

add default impl for some list member functions

fix inserting via iterator correctly increases element count

close feature branch feature/tree_add

merge feature/tree_add branch

rework cx_tree_add() API to allow insertion of edge nodes feature/tree_add

remove condition that is always false after recent fix feature/tree_add

fix cx_tree_search() not remembering root as a valid candidate feature/tree_add

cx_tree_add_iter() - optimize check for empty trees feature/tree_add

cx_tree_add() fix missing spec for adding duplicates feature/tree_add

complete cx_tree_add() implementations feature/tree_add

fix return type of cx_tree_node_create_func feature/tree_add

complete specification for tree_add functions feature/tree_add

merge changes from default branch feature/tree_add

change cx_tree_link() from prepending to appending children - fixes #391

fix mixed up arguments for calloc()

add prototypes for cx_tree_add() family of functions feature/tree_add

minor doc fixes

add cxIteratorRef() macro

add missing convenience functions

fix name of collection base member (to avoid base.base)

fix inconsistent use of item_size and elem_size

fix members inherited by macro or include are not documented

simplify iterator structures

fix documentation

issue #389 : add separate function for immutable arrays

add iterator over raw C arrays - closes #389

improves interface of cx_sprintf() variants

implement tree continue - fixes #376

add missing cxTreeVisitorDispose() test

add missing header dependencies

add cx_tree_visitor()

fix another superfluous semicolon...

fix superfluous semicolon

add -lm to ldflags on Solaris

fix build in case CX_SZMUL_BUILTIN is undefined

allow freeing tree nodes on exit - fixes #377

add xml test case for the tree iterator

add visit_on_exit to iterator implementation

add depth assertion to basic tree iterator test

implement basic (enter only) tree iterator

set tree iterator stack pointer to NULL on dispose to avoid accidental double-frees

capitalize cx_array_declare()

vastly simplify tree iterators and add test for creating them

make cx_array_simple_add() automatically take the address of the element

add convenience macros for cx_array_*

commit complicated stuff before simplifying it

remove unnecessary flag_removal function

improve tree iterator struct and add signature for a function that can create an iterator

first draft of a tree iterator

add cx_tree_search() - relates to #165

be honest at least in the lib version

fix missing typedef

declare cx_tree_search_func function pointer

add code documentation for tree functions

update uwproj configure template

remove check that is always true in cx_arl_remove()

rename cx_array_copy_result to just cx_array_result

add cx_array_add() + fix type of cx_array_default_reallocator

add cx_array_default_reallocator

add first basic low level tree functions

update uwproj and check toolchain dependency for coverage flags - fixes #345

fix using warning options with compilers which do not support them - fixes #363

improve program flow - relates to #353

fix unnecessary printf retry when printed string is empty

fix missing va_end() calls

add cx_sprintf() variants - fixes #353

fix assertion failure depending on possibly uninitialized memory

add missing CHANGELOG entries

remove flags to disable SBO in tests - fix #343 fix #358

add constant for reading out strstr sbo size - relates to #343

add constant for reading out printf sbo size - relates to #343

add CX_DISABLE_ARRAY_LIST_SWAP_SBO flag

complete migration of list tests - fixes #342

fix #356 : broken cxListCompare

migrate list create and destroy tests - relates to #342

migrate cxEmptyList tests - relates to #342

fix some broken cleanup

migrate low level linked list tests - relates to #342

use that recent uwproj trims indents in project.xml

update uwproj configure template

fix documentation of reallocator struct

improve output of coverage summary

migrate remaining buffer tests - relates to #342

migrate more buffer tests - relates to #342

generate (release) config.mk if none exists - fixes #350

some text replacements to prepare migration of list tests

begin migration of buffer tests - relates to #342

move coverage flags to make/*.mk files - relates to #345

migrate compare tests - relates to #342

declare cx_compare_func in compare.h - fixes #344

migrate map tests - relates to #342

fix broken CX_TEST_SUBROUTINE - relates to #341

add command to remove outdated coverage data

migrate allocator tests - relates to #342

migrate mempool tests - relates to #342

migrate printf tests - relates to #342

revert the insanely stupid idea to automatically run the test program on default build

fix missing dependencies for test_string.c

migrate string tests - relates to #342

fix accidental generation of cxListIterator() symbol

ignore the intentional use-after-free

add make target to automatically gather coverage info

fix missing LDFLAGS when linking ucxtest

add coverage feature - relates to #342

remove CXX flags that have become unnecessary

migrates self-test for testing allocator - relates to #342

change default make target from 'compile test-compile' to 'check'

migrate hash_key tests - relates to #342

migrate utils tests - relates to #342

bring back UCX test - fixes #341

fix usage of COPYALL in Makefiles

add cxListFindRemove and cx_linked_list_find_node

make cx_cmp_ptr default comparator for pointer lists - relates to #340

add cx_cmp_ptr() - fix #340

add cxBufferReset() - resolves #338

update build instructions

increase version number to 3.1

fix #318 - incorrect link to ucx 3 docs

fix incorrect documentation of cxBufferEof()

fix wrong static lib name in check target

add update-rules script

add an uwproj based install target

replace most of the build system with uwproj

make C++ compiler and pandoc entirely optional

Release 3.0

update CHANGELOG, COPYING, and README v3.0

Release Version 3.0

add release date for UCX 3.0

Added tag v3.0 for changeset b4bd0155f03f

improve the CSV example

some fixes in example code

merge upstream changes

fix typo in mempool.h

change cxMempoolDestroy doc

more doc fixes

fix iterator doc

fix typo in list.h

fix typos in hash_map.h

add overridable macros to the install docs

make streamcopy buffer sizes overridable

unify the list swap SBO sizes

slightly improve CSS

add iterator documentation

add map documentation

add documentation for the lists

add documentation for collection.h

add mempool example

improve how GTest config is passed during builds

improve mempool implementation

add a low-level stdlib-based cx_reallocate()

add docs for the compare.h and printf.h utilities

add web docs for buffer and stream copy

add web documentation for strings

add allocator example

update install instructions for ucx 3.0

add empty sections to features.md

remove deprecated align=center attribute

remove trees from UCX 3.0

fix some typos in UCX 2.1 documentation

update general web documentation structure

add header and footer to list of build dependencies

add missing docs for cxEmptyMap

fix wrong docs for cx_stream_copy()

add missing docs for cx_invoke_destructor()

update Doxyfile to Doxygen 1.9.6

fix const-ness of non-mutating iterator creation for maps

simplify map class structure

fix inconsistent destructor requirements for list and map classes

fix rehash not valid for non-hash-maps

add empty map implementation - fixes #259

fix cxListCompare if-condition

add empty list implementation - fixes #258

improve cx_linked_list_sort() - fixes #257

fix cx_linked_list_sort() not working for empty lists

explicitly set cmake policy CMP0077

add cx_strdup_m() and cx_strdup_ma()

make list find return a negative value when elem not found

fix wrong doc in cxListFind()

add cx_strcat_m() and cx_strcat_ma() for in-place concatenation

add cxHashMapCreateSimple()

fix typo

fix missing controlling-expression for char const*

fix missing const qualifier for allocator

add cxmutstr to the map generics

bring a generic interface to CxMap

simplify CxHashKey

fix typo

serious code formatting problems ;-)

tweak rehash test to achieve missing coverage

add destructor functions for maps - fixes #253

add base collection members to map interface

change CX_STR: use compound literal in C and ctor in C++

add convenience functions for allocating a buffer on the heap

work around some MSC problems

fix common.h include problems - fixes #255

fix wrong operator precedence in destructor macros

add pointer array list tests

reformat code

refactoring of collections to make use of destructors in map implementations

fix initial storage allocation for array lists created with CX_STORE_POINTERS

simplify cx_stream_ncopy()

add stream copy utils - fixes #254

make allocator in cxBufferInit optional

(0) -224 tip

mercurial