Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/alyx/libmowgli-tri

libmowgli -- now with more trigraphs!
https://github.com/alyx/libmowgli-tri

Last synced: 12 days ago
JSON representation

libmowgli -- now with more trigraphs!

Awesome Lists containing this project

README

        

libmowgli - A useful collection of routines for programming
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

libmowgli is a free but copyrighted library, check COPYING for details.

Contents
--------

1. What is libmowgli?
2. Installation
3. Bug Reports

What is libmowgli?
------------------

libmowgli is a class library containing performance and usability oriented
extensions to C.

It contains:
- mowgli_alloc: A safe wrapper around malloc/free.
- mowgli_argstack: Safe serialization of valists.
- mowgli_assert: Various assertion routines that can be used.
- mowgli_bitvector: Bitmasks with an unlimited level of precision.
- mowgli_dictionary: A keyword-backed definition hashtable class.
- mowgli_error_backtrace: Provide feedback to users on what caused the
error they are recieving.
- mowgli_exception: Assertions with user feedback.
- mowgli_formatter: A simple token formatter which is sometimes useful.
- mowgli_global_storage: A simple global storage library.
- mowgli_hash: A portable implementation of the FNV-1 hash.
- mowgli_heap: An optimistic heap-based memory allocator
- mowgli_hook: A simple hooks API you can use for your application, which
allows for hooks to provide both application data and user data.
- mowgli_ioevent: Portable I/O completion ports for many OSes.
- mowgli_list: A high performance linked lists implementation with O(1) scalability
for most common operations.
- mowgli_logger: An internal class for handling logging of exceptions.
- mowgli_memorypool: A class which allows for memory pooling.
- mowgli_module: A wrapper around dlopen(3) and dlsym(3).
- mowgli_object: A simple class which provides reference counted pointers and
polymorphism of structs.
- mowgli_object_class: Classing and subclassing for objects.
- mowgli_object_metadata: Metadata for objects.
- mowgli_object_messaging: Messaging and signalling for objects.
- mowgli_queue: A simple class which implements double-ended queues.
- mowgli_random: A high performance psuedo-random number generator.
- mowgli_signal: A wrapper for sigaction(2).
- mowgli_spinlock: Portable spinlocks.

More classes will be added with later releases. Please contact
nenolod -at- atheme.org if you have suggestions on what should be
implemented.

More information is available at http://www.atheme.org/projects/mowgli.shtml.

Installation
------------

Installation is fairly typical:

$ ./configure
$ make
$ sudo make install

(If sudo isn't on your system, su to root. On GNU systems you can even
do "su -c 'make install'", which is basically the same thing as using
sudo.)

Bug Reports
-----------

Bugs can be reported on our tracker at http://bugs-meta.atheme.org against the
Mowgli product.