aboutsummaryrefslogtreecommitdiff
path: root/libxsde/xsde/allocator.c
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2010-05-11 12:20:11 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2010-05-11 12:20:11 +0200
commit2e501c68a8641a2b3c430b55f13491a9c1c5d0f5 (patch)
tree49c2748443fe3c1f01108756b647440e0647a11b /libxsde/xsde/allocator.c
parent161beba6cdb0d91b15ad19fa8b3e51d986203915 (diff)
Add support for custom allocators
New example: examples/cxx/hybrid/allocator.
Diffstat (limited to 'libxsde/xsde/allocator.c')
-rw-r--r--libxsde/xsde/allocator.c32
1 files changed, 32 insertions, 0 deletions
diff --git a/libxsde/xsde/allocator.c b/libxsde/xsde/allocator.c
new file mode 100644
index 0000000..7874295
--- /dev/null
+++ b/libxsde/xsde/allocator.c
@@ -0,0 +1,32 @@
+// file : xsde/allocator.c
+// author : Boris Kolpackov <boris@codesynthesis.com>
+// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC
+// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
+
+// This is the default implementation of the custom allocator functions.
+// It is primarily useful for testing when XSD/e is configured with custom
+// allocators. You can also replace this implementation with your own if
+// you would like to test with that.
+//
+
+#include <stdlib.h>
+
+#include <xsde/allocator.h>
+
+void*
+xsde_alloc (size_t n)
+{
+ return malloc (n);
+}
+
+void*
+xsde_realloc (void* p, size_t n)
+{
+ return realloc (p, n);
+}
+
+void
+xsde_free (void* p)
+{
+ free (p);
+}