Creates a new
Type: An array of
The abstract name.
The length of the array is specified in the
The data is owned by the caller of the function.
The length of
path, or -1
|The caller of the function takes ownership of the data, and is responsible for freeing it.|