Skip to content

mowgli development framework (version 2) -- generic runtime for atheme applications

License

Notifications You must be signed in to change notification settings

enmand/libmowgli-2

 
 

Repository files navigation

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.patricia: 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.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.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.eventloop: A portable event loop implementation.
    - mowgli.vio: An abstraction layer for I/O.
    - mowgli.linebuf: A line-buffering implementation for clients.
    - mowgli.thread: Minimal thread abstraction.

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://jira.atheme.org against the
libmowgli product.

About

mowgli development framework (version 2) -- generic runtime for atheme applications

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C 74.4%
  • Shell 24.7%
  • Other 0.9%