#168 - add attributes and const

remove test code duplication for cxListAdd

add setup and teardown functions to test_list.c

fix typo in documentation

add convenience function to configure list memory management

add new destructor API and apply it to CxList

change Doxyfile to ignore __attribute__ and include static inline functions

add allocator support to CxBuffer

do not hide pointers behind typedefs

add cxListInsertAfter() and cxListInsertBefore()

reorder the list test functions

pointer type must be explicit in cx_foreach macro

add cx_foreach macro

add the feature to remove items during iteration

add iterator interface + linked list iterator

hide __attribute__ from compilers that may not support it

simplifies some linked list tests

fix missing cleanup in test_hl_linked_list_from_array

add cxListReverse()

add some const qualifiers

add cxLinkedListFromArray() and cxListCompare()

use c99 bool + add test for low level find

add cx_linked_list_compare() and simplifies some tests

use same doxygen style in all files

add common.h include to all other header files

add ported UCX buffer implementation

add tests for the new low level functions

add several new linked list functions

add cx_linked_list_find()

add linked list tests for cxListAt()

add more nonnull attributes

add more explicit documentation to cx_linked_list_remove()

change contract of cx_linked_list_remove()

add cx_linked_list_first() + cx_linked_list_prepend()

remove cxListLast (can be realized via cxListAt and index=size-1)

add cx_linked_list_{prev, remove, reverse}

move dereference operation into macro

add new ucx_list_sort test support/2.x

add tree.h to list of headers

add high level list sort and inlines method invocation functions

add cx_linked_list_sort()

remove unused cxLinkedListRecalculateSize()

add special linked list implementation for storing pointers

remove redundant documentation for function pointers

add documentation for list.h

change src dir of Doxygen to only include header files

remove obsolete config from Doxyfile

put attributes on separate lines

remove convenience macros

add tests for high level functions

add convenience macros for pointer casts

fix bad start index in cx_ll_node_at()

change cx_linked_list_last() and add a test for it

change test names

remove unused cx_tree_last()

add some documentation and changes some signatures

add __alloc_size__ attribute

make cx_linked_list_class static

improves usage of attributes

minor code changes

implement cx_ll_insert()

implement cx_ll_remove()

remove unnecessary fields from linked list node and simplifies cx_ll_add()

Automated merge

rename test_cx_linked_list_add

remove error handling from tests

add test for cx_linked_list_add

change cxLinkedListCreate() setting all fields instead of calling cxListRecalculateSize()

fix mixed up cases in cx_ll_at()

add high-level function cxListAt()

add function cx_linked_list_at()

implement linked list find

add node destruction in cxLinkedListDestroy()

change inheritance model for lists

add attributes to allocator functions

add option to enable more warnings

Automated merge

implement cx_tree_add_child_node using cx_linked_list_add

add cx_tree_add_child_node tests

add documentation to allocator.h

fix special cases for linked_list_add

Automated merge

implement cx_tree_add_node()

add cx_tree_add_node test

add some low level tree function declarations

implement at least freeing the linked list container

add utility to verify allocations

fix reallocate_null test not used and wrong

change detection of Doxygen

remove public visibility of default allocator class

merge with remote default

add missing quotation marks

remove unnecessary check

fix missing extern "C"

adds cxReallocate()

perform array and list tests in the same test binary (use the same assertions, later)

removes stupid high level wrapper for linked lists + adds test for cxLinkedListCreate

add first test suite to test_linked_list.c

add test config and let the test binary return nonzero on test failures

adds cxLinkedListDestroy prototype

fixes cx_linked_list_add not recalculating end

simplifies linked list descriptor

adds cxLinkedListWrap and cxLinkedListRecalculateSize

removes unnecessary typedefs

adds cxListLast

use C99 flexible array to mark the node's payload

use named fields to access node memory

copy list items when they are added to the list

changes off_t to ptrdiff_t

adds missing assignments for new list node

adds first draft for linked list implementation

removes unnecessary cx_allocator typedef

make cx_allocator_class shared

fixes missing CUnit include dir

high level allocator functions should be real functions, not macros

no C99 comments

add at least a cxFree() call, even if we can't test it

adds allocator interface and default implementation

starts ucx 3.0 development

Added tag v2.1 for changeset 871a8ffe6c9d

merges closed feature/array branch v2.1

closes array branch towards ucx 2.1 release feature/array

adds changelog to html documentation

fix: missing test header files in make dist target

fixes build on FreeBSD and macOS

fixes string replace function in case replmax is 0

adds more sstrreplace tests

adds CHANGELOG

fixes another leak in string replace function

fix: index buffer in string replace was not freed

adds string replace functions

adds install target for cmake builds

fixes logging of absolute paths in ucx_logger_logf()

adds proper cmake build targets

adds set operations for UcxMap

adds missing documentation for custom multiplication function

adds very simple cmake wrapper

adds set operations to UcxList

updates the web doc for array

removes some bugs by redesigning the array API

removes c11 default again and leave the choice to the user

fix: configure.ac

adds testcase to uncover a bug in ucx_array_append()

fix: missing documentation for first param in ucx_array_init_a()

adds case independent versions of sstrprefix() and sstrsuffix()

fixes hard to use documentation in string.h

adds automatic c11 detection to configure.ac

adds missing include for strncasecmp() to avoid an implicit declaration

merges the UcxArray implementation

adjusts the UcxArray documentation to the recent changes feature/array

tells libtool to prefer the static library to avoid accidental testing against a previously installed version of ucx feature/array

fixes two bugs: clone to uninitialized array and missing return in ucx_array_ensurecap() feature/array

changes UcxArray from value to pointer semantics feature/array

adds array utility functions for user defined arrays feature/array

improves array append/prepend/set interface feature/array

renames ucx_array_free() to ucx_array_destroy() feature/array

merges master changes feature/array

fixes dist_int() function in AVL tests broken on 32 bit platforms

fixes array_equals test (broken on 32 bit platforms) feature/array

adds a broader set of compare and distance functions feature/array

use qsort_s on solaris feature/array

fixes build on FreeBSD feature/array

fixes #ifdefs to be sure no redefine can ever happen feature/array

ucx_array_sort() uses qsort_r(), if available feature/array

reverts deletion of tests for ucx_array_at() feature/array

adjusts the documentation for ucx_array_sort() to the current plans feature/array

removes cumbersome array accessor macros feature/array

resets revision number feature/array

adds documentation feature/array

fixes doxygen doc feature/array

adjusts library version feature/array

adds ucx_array_set() feature/array

implements ucx_array_sort() feature/array

fixes inappropriate size datatype in list merge sort feature/array

adds array interface and tests feature/array

fixes an url typo which survived surprisingly long

Added tag v2.0 for changeset 3b985a4eb05b

fixes ucx_szmul definition for gcc < 5 v2.0

adds some additional avl tree tests

adds Eclipse hidden files to .hgignore

makes g++ happy again

UcxMap now separates internal non-const keys from public const keys

being more precise on the different required behavior of a destructor function for pooled and non-pooled memory

changes sstr shortcut macros s.t. they distinguish sstr_t and scstr_t + add macros which can completely disable the shortcuts

fixes logging messages starting with '- ' when no additional information is selected

removes deprecated ucx_list_append_once() and ucx_list_prepend_once()

Tags finalization of the scstr_t integration.

adds scstr_t to modules.md + fixes parenthesis bug in sstrsplit_a macro scstr_t-final

use 'convert' as more precise term than 'cast' for the conversion from sstr_t to scstr_t

unifies naming of sstr_t related and scstr_t related functions

adds remaining documentation for the scstr functions

overflow of sstrnlen should return SIZE_MAX instead of zero

adjusts documentation of UCX string types, converters, and constructors

finally removes the underscore of ugliness from ucx_str_cmp() and ucx_str_casecmp()

renames int and longint distance and compare functions according to the new scheme

renames ucx_doublecmp() and ucx_floatcmp() to ucx_cmp_double() and ucx_cmp_float()

renames ucx_ptrcmp() to ucx_cmp_ptr()

renames ucx_memcmp() to ucx_cmp_mem()

renames ucx_sstrcmp() to ucx_cmp_sstr()

renames ucx_strncmp() to ucx_cmp_strn()

renames ucx_strcmp() to ucx_cmp_str()

closes constsstr branch constsstr

merges constsstr branch

Version 1.1 (library version 2:0:1).

fixes typo in modules.md v1.1

adds documentation for ucx_szmul and 32 bit support

comprehensive code example for the memory pool

documentation for the UcxStack

completes conversion to scstr constsstr

adjusts code sample for UcxMap

adds a code sample for UcxMap

documentation for the testing framework

fixes logger test case

documents (and fixes!) the UcxLogger

example code for the usage of a UcxList

adds deprecation notice for *_append/prepend_once()

adds ucx_sstrcmp() compare function to utils.h

adds ucx_list_prepend_once() and ucx_list_prepend_once_a()

adds new shift operations for UcxBuffer (including tests and a usage example in modules.md)

adds ucx_buffer_to_sstr() macro

makes sstrcat and sstrnlen scstr_t compatible constsstr

adds ucx_avl_free_content() function and documentation in modules.md

adds distance functions for integers as utils

adds ucx_longintcmp() compare function

introduces macro for library version, s.t. both version numbers can be changed in configure.ac

adds more convenience macros for sstr

minor formatting fix in modules.md

doc: adds ucx_sprintf() and ucx_bprintf() samples + fixes leftmenu

removes artificial anchors from modules.md

doc: MWE for ucx_stream_copy()

tell the user how allocation of property values works

makes destructor functions for *_free_content() optional + more documentation for UcxProperties

adapts sstrtrim, sstrsplit, sstrcmp and sstrstr to new const string API constsstr

adds scstr_t struct for const strings and adapts some string functions constsstr

Tag as version 1.0.1

fixes return value for multiplication with zero in ucx_szmul v1.0.1

adds integer overflow checks to sstrlen and sstrcat

makes default_allocator static

adds integer overflow checks

ucx_buffere_getc should return an unsigned char (0-255) or EOF (-1)

(0) -240 +240 tip

mercurial