summaryrefslogtreecommitdiff
path: root/lib/talloc/doc/tutorial_introduction.dox
diff options
context:
space:
mode:
authorPavel Březina <pbrezina@redhat.com>2012-05-06 14:34:48 +0200
committerAndreas Schneider <asn@samba.org>2012-05-07 19:20:29 +0200
commitd99b7d0220d8bd694c0d997622a7a87eb09c5570 (patch)
tree7d65ff8d83faef7e7d0464d8408db8ec2ac4a719 /lib/talloc/doc/tutorial_introduction.dox
parent890485bd17142ac9bbaf71c24d3d3ec1fa4a6724 (diff)
downloadsamba-d99b7d0220d8bd694c0d997622a7a87eb09c5570.tar.gz
samba-d99b7d0220d8bd694c0d997622a7a87eb09c5570.tar.bz2
samba-d99b7d0220d8bd694c0d997622a7a87eb09c5570.zip
doc: Add talloc tutorial.
Signed-off-by: Andreas Schneider <asn@samba.org>
Diffstat (limited to 'lib/talloc/doc/tutorial_introduction.dox')
-rw-r--r--lib/talloc/doc/tutorial_introduction.dox43
1 files changed, 43 insertions, 0 deletions
diff --git a/lib/talloc/doc/tutorial_introduction.dox b/lib/talloc/doc/tutorial_introduction.dox
new file mode 100644
index 0000000000..02777b9f77
--- /dev/null
+++ b/lib/talloc/doc/tutorial_introduction.dox
@@ -0,0 +1,43 @@
+/**
+@page libtalloc_tutorial The Tutorial
+@section introduction Introduction
+
+Talloc is a hierarchical, reference counted memory pool system with destructors.
+It is built atop the C standard library and it defines a set of utility
+functions that altogether simplifies allocation and deallocation of data,
+especially for complex structures that contain many dynamically allocated
+elements such as strings and arrays.
+
+The main goals of this library are: removing the needs for creating a cleanup
+function for every complex structure, providing a logical organization of
+allocated memory blocks and reducing the likelihood of creating memory leaks in
+long-running applications. All of this is achieved by allocating memory in a
+hierarchical structure of talloc contexts such that deallocating one context
+recursively frees all of its descendants as well.
+
+@section main-features Main features
+- An open source project
+- A hierarchical memory model
+- Natural projection of data structures into the memory space
+- Simplifies memory management of large data structures
+- Automatic execution of a destructor before the memory is freed
+- Simulates a dynamic type system
+- Implements a transparent memory pool
+
+@section toc Table of contents:
+
+@subpage libtalloc_context
+
+@subpage libtalloc_stealing
+
+@subpage libtalloc_dts
+
+@subpage libtalloc_destructors
+
+@subpage libtalloc_pools
+
+@subpage libtalloc_debugging
+
+@subpage libtalloc_bestpractices
+
+*/ \ No newline at end of file