ec_bag_find

March 26, 2020 Contributors

Name

ec_bag_find

Synopsis

#include "hooks/core/ec_bag_find.h"

| void * **ec_bag_find** ( | closure, |   |
|   | bag, |   |
|   | type_name); |   |

void * <var class="pdparam">closure</var>;
ec_bag * <var class="pdparam">bag</var>;
const char * <var class="pdparam">type_name</var>;

| int **has_core_ec_bag_find_hook** ( | ); |   |

| void **register_core_ec_bag_find_hook_first** ( | hook, |   |
|   | closure); |   |

ec_hook_core_ec_bag_find_func_t <var class="pdparam">hook</var>;
void *<var class="pdparam">closure</var>;

| void **register_core_ec_bag_find_hook_last** ( | hook, |   |
|   | closure); |   |

ec_hook_core_ec_bag_find_func_t <var class="pdparam">hook</var>;
void *<var class="pdparam">closure</var>;

| void * **call_core_ec_bag_find_hook** ( | bag, |   |
|   | type_name); |   |

ec_bag * <var class="pdparam">bag</var>;
const char * <var class="pdparam">type_name</var>;

Description

Called whenever an ec_bag_find operation is executed. The default is to attempt to find the type, and then to attempt to locate the type within other types, provided that the original type is known. This hook allows others to create a way to search for their types within the context of the bag of holding.