Age | Commit message (Collapse) | Author | Files | Lines |
|
Trees: Previously, the AVL node type was different than the node type used
in the BinTree and SplayTree modules. It requires an additional
field to maintain AVL balance information. I merged that field into
the base type (in ubi_BinTree.h) so that all three use the same
node type. On most systems this will have zero effect on the node
size, due to word alignment. The change allowed me to remove a
bigbunch of redundant code, which makes the AVL module smaller and
cleaner.
Linked Lists: I combined ubi_StackQueue into ubi_sLinkList. The interface
has changed a tiny bit. I added macros to ubi_dLinkList to round
it out a bit.
I have verified that the few Samba modules that use these tools (so far)
do not have any problems with the changes.
Chris -)-----
(This used to be commit 599a29401defded32358dfae18e54704c0428f38)
|
|
Jeremy pointed out that there might be problems with this. Darn shame.
(This used to be commit ce9acc96a6cbc91f0a3f95221c3e8f801cbdb602)
|
|
I'll be using the cache module to replace the name cache in mangle.c. The
new one should be much faster and should require less memory.
Another feature is that the cache size can be limited by the amount of
memory used in addition to the number of entries allowed. With the
current cache, the default is to allocate 12800 bytes representing 50
entries (256 bytes each). With the same amount of memory, I should be able
to load over around two hundred entries.
Changes to the AVL trees were minor (missing comments).
Chris -)-----
(This used to be commit 45962779a658b0b78895ae08ad394e870ce6ed10)
|
|
a better way to handle the node pointer array used in ubi_BinTree. The
change simplified the code a bigbunch. It also forced updates to all of
the binary tree modules. CRH
(This used to be commit db9898559f1493ade4478196b72663759bb18995)
|
|
ubiqx/Makefile ubiqx/README.UBI
Added new modules to the Makefile. Changed the text of the README to
reflect the directory change.
Added Files:
ubiqx/ubi_AVLtree.c ubiqx/ubi_AVLtree.h
ubiqx/ubi_BinTree.c ubiqx/ubi_BinTree.h
ubiqx/ubi_SplayTree.c ubiqx/ubi_SplayTree.h
ubiqx/ubi_StackQueue.c ubiqx/ubi_StackQueue.h
ubiqx/ubi_sLinkList.c ubiqx/ubi_sLinkList.h
This is the remainder of the toolkit. A quick rundown:
sLinkList = A simple singly-linked list.
StackQueue = Implements both a stack and a queue.
dLinkList = (Not added 'cause it's already there.) A doubly-linked list.
BinTree = Base level binary tree module. (No height balancing, just
the basics.)
AVLtree = Descendant type of BinTree. Implements a height-balanced
(AVL) binary tree.
SplayTree = Descendant type of BinTree. Implements a splay-balanced
binary tree.
Renamed Files:
ubiqx/COPYING.LGPL ==> ubiqx/COPYING.LIB
This matches the naming that GNU suggests.
(This used to be commit c6205dd45e455a4a228a3411b95fa569e0ea00e1)
|
|
so I've started to move them into the main directory.
(This used to be commit 4691a94d3c657321d29231f062aed714dfe4ac26)
|
|
This library is being included as part of the Samba distribution.
(Hurray!)
(This used to be commit 3590a783338defa4ff1385b2d5bb095c5051ac82)
|