Method functions to operate on REPY_DeferredCleanupHelper objects. More...
Method functions to operate on REPY_DeferredCleanupHelper objects.
| REPY_Handle REPY_DeferredCleanupHelper_AddHandle | ( | REPY_DeferredCleanupHelper * | cleanup, |
| REPY_Handle | handle_no_release ) |
Adds a REPY_Handle to be release by a REPY_DeferredCleanupHelper instance.
The REPY_DeferredCleanupHelper will now be responsible for releasing this handle. Don't release it yourself, or make the Single-Use. This function will not release a Single-Use handle if it recieves one.
For the sake of easily wrapping other function calls, this function returns the same REPY_Handle it was given.
| cleanup | The REPY_DeferredCleanupHelper to add handle_no_release to. |
| handle_no_release | A REPY_Handle to be released by this cleanup helper. |
| REPY_IfStmtHelper * REPY_DeferredCleanupHelper_AddIfStmtHelper | ( | REPY_DeferredCleanupHelper * | cleanup, |
| REPY_IfStmtHelper * | if_stmt_helper ) |
Adds a REPY_IfStmtHelper to be destroyed by a REPY_DeferredCleanupHelper instance.
The REPY_DeferredCleanupHelper will now be responsible for destroying this REPY_IfStmtHelper. Do not destroy it yourself.
For the sake of easily wrapping other function calls, this function returns the same REPY_IfStmtHelper* it was given.
| cleanup | The REPY_DeferredCleanupHelper to add if_stmt_helper to. |
| if_stmt_helper | A REPY_IfStmtHelper to be released by this cleanup helper. |
| REPY_IteratorHelper * REPY_DeferredCleanupHelper_AddIteratorHelper | ( | REPY_DeferredCleanupHelper * | cleanup, |
| REPY_IteratorHelper * | iterator_helper ) |
Adds a REPY_IteratorHelper to be destroyed by a REPY_DeferredCleanupHelper instance.
The REPY_DeferredCleanupHelper will now be responsible for destroying this REPY_IteratorHelper. Do not destroy it yourself.
For the sake of easily wrapping other function calls, this function returns the same REPY_IteratorHelper* it was given.
| cleanup | The REPY_DeferredCleanupHelper to add iterator_helper to. |
| iterator_helper | A REPY_IteratorHelper to be released by this cleanup helper. |
| void * REPY_DeferredCleanupHelper_AddRecompFree | ( | REPY_DeferredCleanupHelper * | cleanup, |
| void * | pointer ) |
Adds a region of memory (specified by a void*) to be freed with recomp_free by a REPY_DeferredCleanupHelper instance.
The REPY_DeferredCleanupHelper will now be responsible for freeing this memory. Do not free it yourself.
The memory will be released using recomp_free. If recomp_free is not the appropriate for releasing this memory, then do not use this mechanism. In the future, REPY_DeferredCleanupHelper may be updated to allow specifying custom types to be released.
For the sake of easily wrapping other function calls, this function returns the same void*it was given.
| cleanup | The REPY_DeferredCleanupHelper to add pointer to. |
| pointer | A void* to be freed by this cleanup helper. |
| void REPY_DeferredCleanupHelper_CleanNow | ( | REPY_DeferredCleanupHelper * | cleanup | ) |
Clean up all of the resources registered to a REPY_DeferredCleanupHelper without destroying the instance itself.
The REPY_DeferredCleanupHelper now be considered empty again, and thus you can reuse it by adding new resources for it to clean up.
| cleanup | The REPY_DeferredCleanupHelper to run. |
| REPY_DeferredCleanupHelper * REPY_DeferredCleanupHelper_Create | ( | ) |
Create a new REPY_DeferredCleanupHelper object.
Internally, allocation is handled via recomp_alloc.
| void REPY_DeferredCleanupHelper_Destroy | ( | REPY_DeferredCleanupHelper * | cleanup | ) |
Destroy a REPY_DeferredCleanupHelper instance and clean up all of the resources registered to it.
It is safe to destroy a REPY_DeferredCleanupHelper instance that never had any resources added to it.
| cleanup | The REPY_DeferredCleanupHelper to run. |