Elm  2
ELM is a library providing generic data structures, OS-independent interface, plugins and XML.
array Namespace Reference

Detailed Description

This namespace provides optimized to work with C native array (whatever the running OS).

Most of these functions uses information of the type provided by the type_info<T> structure to optimize or not the array operations. Particularly, they uses the is_deep definition to know if a value may be copied byte-per-byte or need more complex processing because of its data structure. Any non-scalar type is basically considered as non-deep but you may change this behavior by specializing the type_info for your own type, MyType in the example below:

template <> struct type_info<MyType>: public class_t<MyType> {
enum { is_deep = true };
}