diff options
Diffstat (limited to 'dev-libs/eina/metadata.xml')
-rw-r--r-- | dev-libs/eina/metadata.xml | 66 |
1 files changed, 66 insertions, 0 deletions
diff --git a/dev-libs/eina/metadata.xml b/dev-libs/eina/metadata.xml new file mode 100644 index 000000000000..76fbac87e982 --- /dev/null +++ b/dev-libs/eina/metadata.xml @@ -0,0 +1,66 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> +<herd>enlightenment</herd> +<use> + <flag name="mempool-buddy">Compile "buddy" memory pool allocation.</flag> + <flag name="mempool-chained-pool">Compile "chained-pool" memory pool allocation.</flag> + <flag name="mempool-fixed-bitmap">Compile "fixed-bitmap" memory pool allocation.</flag> + <flag name="mempool-one-big">Compile "one-big" memory pool allocation.</flag> + <flag name="mempool-pass-through">Compile "pass-through" (system's malloc) memory pool allocation.</flag> + <flag name="default-mempool">By default use system's allocator (pass-through) instead of custom choice for Eina's own data structures.</flag> + <flag name="valgrind">Compile in valgrind hints for smoother integration.</flag> +</use> +<longdescription> +Eina is a multi-platform library that provides optimized data types +and useful tools for projects. + +Among its data types, Eina provides efficient implementation of: + + * double linked list with O(1) append and count; + + * double linked inlist (node is built in the data) with O(1) append; + + * stringshare, a pool of read-only strings that are shared in order + to save memory (no copies!), fast referencing and + pointer-comparison; + + * hash table with extensible key support, ships by default with + string, stringshare, pointer and integer hashes by default; + + * array of pointers, with O(1) count and append, configurable step + growing; + + * red-black tree; + + * sparse matrix; + + +As for tools, it provides couple of convenience: + + * generic and extensible logging system; + + * easy to use dynamic module loading (on top of dlopen()) that makes + it easy to change to static/built-in modules; + + * generic safety-checks system covering NULL pointers and other + incorrect conditions with logging; + + * "magic" type checking that check and logs if expected magic number + is incorrect; + + * easy to use and extensible memory allocators (mempools); + + * fixed-point arithmetic; + + * tile splitter and simplifier (merges); + + * generic iterator pattern (how to walk in one direction), just + implement the given API; + + * generic accessor pattern (how to randomly access items), just + implement the given API; + + * benchmark helpers. +</longdescription> +</pkgmetadata> |