Skip to content

Latest commit

 

History

History
98 lines (54 loc) · 2.95 KB

README.md

File metadata and controls

98 lines (54 loc) · 2.95 KB

mulle-storage

🛅 Memory management for tree nodes

Why not just use malloc ? mulle-storage can be useful as a storage for nodes of a tree. It's likely faster and it may produce less fragmentation and it may improve locality of reference. Freed nodes will be reused. All the tree nodes can be "blown" away at once, without having to free each node individually.

Why is not a mulle_structarray ? A struct array would have holes, when nodes are freed randomly. Also freed nodes on their own would need to be managed externally. mulle-storage does this, but uses a struct queue instead, so it does not have to deal with holes.

Release Version Release Notes AI Documentation
Mulle kybernetiK tag Build Status RELEASENOTES DeepWiki for mulle-storage

You are here

Overview

Add

This project is a component of the mulle-core library. As such you usually will not add or install it individually, unless you specifically do not want to link against mulle-core.

Add as an individual component

Use mulle-sde to add mulle-storage to your project:

mulle-sde add github:mulle-c/mulle-storage

To only add the sources of mulle-storage with dependency sources use clib:

clib install --out src/mulle-c mulle-c/mulle-storage

Add -isystem src/mulle-c to your CFLAGS and compile all the sources that were downloaded with your project.

Install

Use mulle-sde to build and install mulle-storage and all dependencies:

mulle-sde install --prefix /usr/local \
   https://github.com/mulle-c/mulle-storage/archive/latest.tar.gz

Legacy Installation

Install the requirements:

Requirements Description
mulle-container 🛄 Arrays, hashtables and a queue

Download the latest tar or zip archive and unpack it.

Install mulle-storage into /usr/local with cmake:

cmake -B build \
      -DCMAKE_INSTALL_PREFIX=/usr/local \
      -DCMAKE_PREFIX_PATH=/usr/local \
      -DCMAKE_BUILD_TYPE=Release &&
cmake --build build --config Release &&
cmake --install build --config Release

Author

Nat! for Mulle kybernetiK