19 #define impl_afw_object_get_meta afw_object_impl_internal_get_meta
21 #define impl_afw_object_get_property_meta \
22 afw_object_impl_internal_get_property_meta
24 #define impl_afw_object_get_next_property_meta \
25 afw_object_impl_internal_get_next_property_meta
28 #define AFW_IMPLEMENTATION_ID "afw_object_aggregate_external"
42 self->pub.inf = &impl_afw_object_inf;
44 self->object_list = object_list;
54 impl_afw_object_release(
65 impl_afw_object_add_reference(
92 impl_afw_object_get_property(
102 for (obj = self->object_list, result = NULL; *obj; obj++) {
116 impl_afw_object_get_next_property(
128 self->iterator.object = self->object_list;
129 self->iterator.iterator = NULL;
133 for (; *
self->iterator.object;
self->iterator.object++) {
135 *self->iterator.object, &self->iterator.iterator,
136 property_name, xctx);
153 impl_afw_object_has_property(
158 return impl_afw_object_get_property(instance, property_name, xctx) != NULL;
165 impl_afw_object_get_setter(
AFW_DEFINE(const afw_object_t *)
Adaptive Framework Core Internal.
Interface afw_interface implementation declares.
struct afw_iterator_s afw_iterator_t
apr_size_t afw_size_t
size_t.
#define AFW_THROW_ERROR_Z(code, message_z, xctx)
Macro used to set error and 0 rv in xctx and throw it.
afw_size_t impl_afw_object_get_count(const afw_object_t *instance, afw_xctx_t *xctx)
#define afw_object_get_property(instance, property_name, xctx)
Call method get_property of interface afw_object.
#define afw_object_get_next_property(instance, iterator, property_name, xctx)
Call method get_next_property of interface afw_object.
#define afw_object_get_setter(instance, xctx)
Call method get_setter of interface afw_object.
afw_object_aggregate_external_create(const afw_object_t *const *object_list, const afw_pool_t *p, afw_xctx_t *xctx)
Create an aggregate object with an external object list.
#define afw_pool_calloc_type(instance, type, xctx)
Macro to allocate cleared memory to hold type in pool.
Interface afw_object public struct.
Interface afw_object_setter public struct.
Interface afw_pool public struct.
NFC normalized UTF-8 string.
Interface afw_value public struct.
Interface afw_xctx public struct.