Creates a new closure which invokes
the first parameter.
destroy_data will be called as a finalize notifier on the
This function is not directly available to language bindings.
A floating reference to a new
|The caller of the function takes ownership of the data, and is responsible for freeing it.