Adaptive Framework  0.9.0
All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
afw_list_impl_declares.h
Go to the documentation of this file.
1 // See the 'COPYING' file in the project root for licensing information.
2 /*
3  * Interface afw_interface Implementation Declares
4  *
5  * Copyright (c) 2010-2023 Clemson University
6  *
7  */
8 
10 
12 
74 #ifdef __AFW_LIST_IMPL_DECLARES_H__
75 #ifndef AFW_LIST_INF_ONLY
76 #error "afw_list_impl_declares.h already included."
77 #endif
78 #endif
79 #ifndef __AFW_LIST_IMPL_DECLARES_H__
80 #ifdef AFW_LIST_INF_ONLY
81 #error "afw_list_impl_declares.h must be included before AFW_LIST_INF_ONLY."
82 #endif
83 #define __AFW_LIST_IMPL_DECLARES_H__ 1
84 #endif
85 
86 #ifdef AFW_IMPLEMENTATION_ID
87 #define _AFW_IMPLEMENTATION_ID_ AFW_IMPLEMENTATION_ID
88 #else
89 #define _AFW_IMPLEMENTATION_ID_ "unspecified"
90 #endif
91 #ifdef AFW_IMPLEMENTATION_SPECIFIC
92 #define _AFW_IMPLEMENTATION_SPECIFIC_ AFW_IMPLEMENTATION_SPECIFIC
93 #else
94 #define _AFW_IMPLEMENTATION_SPECIFIC_ NULL
95 #endif
96 #ifndef AFW_LIST_INF_ONLY
97 
98 #ifndef impl_afw_list_release
99 /* Declare method release */
100 AFW_DECLARE_STATIC(void)
102  const afw_list_t * instance,
103  afw_xctx_t * xctx);
104 #endif
105 
106 #ifndef impl_afw_list_get_count
107 /* Declare method get_count */
108 AFW_DECLARE_STATIC(afw_size_t)
110  const afw_list_t * instance,
111  afw_xctx_t * xctx);
112 #endif
113 
114 #ifndef impl_afw_list_get_data_type
115 /* Declare method get_data_type */
116 AFW_DECLARE_STATIC(const afw_data_type_t *)
118  const afw_list_t * instance,
119  afw_xctx_t * xctx);
120 #endif
121 
122 #ifndef impl_afw_list_get_entry_meta
123 /* Declare method get_entry_meta */
124 AFW_DECLARE_STATIC(const afw_value_t *)
125 impl_afw_list_get_entry_meta(
126  const afw_list_t * instance,
127  afw_integer_t index,
128  const afw_pool_t * p,
129  afw_xctx_t * xctx);
130 #endif
131 
132 #ifndef impl_afw_list_get_entry_internal
133 /* Declare method get_entry_internal */
134 AFW_DECLARE_STATIC(afw_boolean_t)
136  const afw_list_t * instance,
137  afw_integer_t index,
138  const afw_data_type_t * * data_type,
139  const void * * internal,
140  afw_xctx_t * xctx);
141 #endif
142 
143 #ifndef impl_afw_list_get_entry_value
144 /* Declare method get_entry_value */
145 AFW_DECLARE_STATIC(const afw_value_t *)
147  const afw_list_t * instance,
148  afw_integer_t index,
149  const afw_pool_t * p,
150  afw_xctx_t * xctx);
151 #endif
152 
153 #ifndef impl_afw_list_get_next_entry_meta
154 /* Declare method get_next_entry_meta */
155 AFW_DECLARE_STATIC(const afw_value_t *)
156 impl_afw_list_get_next_entry_meta(
157  const afw_list_t * instance,
158  const afw_iterator_t * * iterator,
159  const afw_pool_t * p,
160  afw_xctx_t * xctx);
161 #endif
162 
163 #ifndef impl_afw_list_get_next_internal
164 /* Declare method get_next_internal */
165 AFW_DECLARE_STATIC(afw_boolean_t)
167  const afw_list_t * instance,
168  const afw_iterator_t * * iterator,
169  const afw_data_type_t * * data_type,
170  const void * * internal,
171  afw_xctx_t * xctx);
172 #endif
173 
174 #ifndef impl_afw_list_get_next_value
175 /* Declare method get_next_value */
176 AFW_DECLARE_STATIC(const afw_value_t *)
178  const afw_list_t * instance,
179  const afw_iterator_t * * iterator,
180  const afw_pool_t * p,
181  afw_xctx_t * xctx);
182 #endif
183 
184 #ifndef impl_afw_list_get_setter
185 /* Declare method get_setter */
186 AFW_DECLARE_STATIC(const afw_list_setter_t *)
188  const afw_list_t * instance,
189  afw_xctx_t * xctx);
190 #endif
191 #endif
192 
193 /* inf for interface afw_list */
194 #ifdef __BASE_FILE__
195 #define _AFW_IMPLEMENTATION_SOURCE_FILE_ __BASE_FILE__
196 #else
197 #define _AFW_IMPLEMENTATION_SOURCE_FILE_ __FILE__
198 #endif
199 #ifdef AFW_IMPLEMENTATION_INF_SPECIFIER
200 AFW_IMPLEMENTATION_INF_SPECIFIER(afw_list_inf_t)
201 #else
202 static const afw_list_inf_t
203 #endif
204 #ifdef AFW_IMPLEMENTATION_INF_LABEL
205 AFW_IMPLEMENTATION_INF_LABEL = {
206 #else
207 impl_afw_list_inf = {
208 #endif
209  {
210  AFW_UTF8_LITERAL("afw_list"),
211  AFW_UTF8_LITERAL(_AFW_IMPLEMENTATION_SOURCE_FILE_),
212  AFW_UTF8_LITERAL(_AFW_IMPLEMENTATION_ID_),
213  _AFW_IMPLEMENTATION_SPECIFIC_
214  },
218  impl_afw_list_get_entry_meta,
221  impl_afw_list_get_next_entry_meta,
225 };
226 
227 #undef _AFW_IMPLEMENTATION_ID_
228 #undef _AFW_IMPLEMENTATION_SPECIFIC_
229 #undef _AFW_IMPLEMENTATION_SOURCE_FILE_
230 
#define AFW_BEGIN_DECLARES
Interface afw_interface opaque typedefs.
#define AFW_UTF8_LITERAL(A_STRING)
String literal initializer.
Definition: afw_common.h:582
struct afw_iterator_s afw_iterator_t
_Bool afw_boolean_t
Definition: afw_common.h:373
apr_size_t afw_size_t
size_t.
Definition: afw_common.h:151
apr_int64_t afw_integer_t
typedef for big signed int.
Definition: afw_common.h:321
impl_afw_list_get_next_value(const afw_list_t *instance, const afw_iterator_t **iterator, const afw_pool_t *p, afw_xctx_t *xctx)
impl_afw_list_get_entry_internal(const afw_list_t *instance, afw_integer_t index, const afw_data_type_t **data_type, const void **internal, afw_xctx_t *xctx)
impl_afw_list_get_data_type(const afw_list_t *instance, afw_xctx_t *xctx)
impl_afw_list_release(const afw_list_t *instance, afw_xctx_t *xctx)
impl_afw_list_get_next_internal(const afw_list_t *instance, const afw_iterator_t **iterator, const afw_data_type_t **data_type, const void **internal, afw_xctx_t *xctx)
impl_afw_list_get_setter(const afw_list_t *instance, afw_xctx_t *xctx)
impl_afw_list_get_count(const afw_list_t *instance, afw_xctx_t *xctx)
impl_afw_list_get_entry_value(const afw_list_t *instance, afw_integer_t index, const afw_pool_t *p, afw_xctx_t *xctx)
Interface afw_data_type public struct.
Interface afw_list_inf_s struct.
Interface afw_list public struct.
Interface afw_list_setter public struct.
Interface afw_pool public struct.
Interface afw_value public struct.
Interface afw_xctx public struct.