Adaptive Framework  0.9.0
All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
afw_adaptor_impl_index_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 
75 #ifdef __AFW_ADAPTOR_IMPL_INDEX_IMPL_DECLARES_H__
76 #ifndef AFW_ADAPTOR_IMPL_INDEX_INF_ONLY
77 #error "afw_adaptor_impl_index_impl_declares.h already included."
78 #endif
79 #endif
80 #ifndef __AFW_ADAPTOR_IMPL_INDEX_IMPL_DECLARES_H__
81 #ifdef AFW_ADAPTOR_IMPL_INDEX_INF_ONLY
82 #error "afw_adaptor_impl_index_impl_declares.h must be included before AFW_ADAPTOR_IMPL_INDEX_INF_ONLY."
83 #endif
84 #define __AFW_ADAPTOR_IMPL_INDEX_IMPL_DECLARES_H__ 1
85 #endif
86 
87 #ifdef AFW_IMPLEMENTATION_ID
88 #define _AFW_IMPLEMENTATION_ID_ AFW_IMPLEMENTATION_ID
89 #else
90 #define _AFW_IMPLEMENTATION_ID_ "unspecified"
91 #endif
92 #ifdef AFW_IMPLEMENTATION_SPECIFIC
93 #define _AFW_IMPLEMENTATION_SPECIFIC_ AFW_IMPLEMENTATION_SPECIFIC
94 #else
95 #define _AFW_IMPLEMENTATION_SPECIFIC_ NULL
96 #endif
97 #ifndef AFW_ADAPTOR_IMPL_INDEX_INF_ONLY
98 
99 #ifndef impl_afw_adaptor_impl_index_open
100 /* Declare method open */
101 AFW_DECLARE_STATIC(void)
102 impl_afw_adaptor_impl_index_open(
103  const afw_adaptor_impl_index_t * instance,
104  const afw_utf8_t * object_type_id,
105  const afw_utf8_t * key,
106  afw_boolean_t integer,
107  afw_boolean_t unique,
108  afw_boolean_t reverse,
109  const afw_pool_t * pool,
110  afw_xctx_t * xctx);
111 #endif
112 
113 #ifndef impl_afw_adaptor_impl_index_release
114 /* Declare method release */
115 AFW_DECLARE_STATIC(void)
116 impl_afw_adaptor_impl_index_release(
117  const afw_adaptor_impl_index_t * instance,
118  afw_xctx_t * xctx);
119 #endif
120 
121 #ifndef impl_afw_adaptor_impl_index_get_index_definitions
122 /* Declare method get_index_definitions */
123 AFW_DECLARE_STATIC(const afw_object_t *)
124 impl_afw_adaptor_impl_index_get_index_definitions(
125  const afw_adaptor_impl_index_t * instance,
126  afw_xctx_t * xctx);
127 #endif
128 
129 #ifndef impl_afw_adaptor_impl_index_update_index_definitions
130 /* Declare method update_index_definitions */
131 AFW_DECLARE_STATIC(void)
132 impl_afw_adaptor_impl_index_update_index_definitions(
133  const afw_adaptor_impl_index_t * instance,
134  const afw_object_t * indexDefinitions,
135  afw_xctx_t * xctx);
136 #endif
137 
138 #ifndef impl_afw_adaptor_impl_index_add
139 /* Declare method add */
140 AFW_DECLARE_STATIC(afw_rc_t)
142  const afw_adaptor_impl_index_t * instance,
143  const afw_utf8_t * object_type_id,
144  const afw_utf8_t * object_id,
145  const afw_utf8_t * key,
146  const afw_utf8_t* value,
147  afw_boolean_t unique,
148  const afw_pool_t * pool,
149  afw_xctx_t * xctx);
150 #endif
151 
152 #ifndef impl_afw_adaptor_impl_index_delete
153 /* Declare method delete */
154 AFW_DECLARE_STATIC(afw_rc_t)
156  const afw_adaptor_impl_index_t * instance,
157  const afw_utf8_t * object_type_id,
158  const afw_utf8_t * object_id,
159  const afw_utf8_t * key,
160  const afw_utf8_t* value,
161  const afw_pool_t * pool,
162  afw_xctx_t * xctx);
163 #endif
164 
165 #ifndef impl_afw_adaptor_impl_index_replace
166 /* Declare method replace */
167 AFW_DECLARE_STATIC(afw_rc_t)
168 impl_afw_adaptor_impl_index_replace(
169  const afw_adaptor_impl_index_t * instance,
170  const afw_utf8_t * object_type_id,
171  const afw_utf8_t * object_id,
172  const afw_utf8_t * key,
173  const afw_utf8_t* old_value,
174  const afw_utf8_t* new_value,
175  const afw_pool_t * pool,
176  afw_xctx_t * xctx);
177 #endif
178 
179 #ifndef impl_afw_adaptor_impl_index_drop
180 /* Declare method drop */
181 AFW_DECLARE_STATIC(afw_rc_t)
182 impl_afw_adaptor_impl_index_drop(
183  const afw_adaptor_impl_index_t * instance,
184  const afw_utf8_t * object_type_id,
185  const afw_utf8_t * key,
186  const afw_pool_t * pool,
187  afw_xctx_t * xctx);
188 #endif
189 
190 #ifndef impl_afw_adaptor_impl_index_open_cursor
191 /* Declare method open_cursor */
192 AFW_DECLARE_STATIC(afw_adaptor_impl_index_cursor_t *)
193 impl_afw_adaptor_impl_index_open_cursor(
194  const afw_adaptor_impl_index_t * instance,
195  const afw_utf8_t * object_type_id,
196  const afw_utf8_t * index_key,
197  int operator,
198  const afw_utf8_t * value,
199  afw_boolean_t unique,
200  const afw_pool_t * pool,
201  afw_xctx_t * xctx);
202 #endif
203 
204 #ifndef impl_afw_adaptor_impl_index_get_session
205 /* Declare method get_session */
206 AFW_DECLARE_STATIC(const afw_adaptor_session_t *)
207 impl_afw_adaptor_impl_index_get_session(
208  const afw_adaptor_impl_index_t * instance,
209  afw_xctx_t * xctx);
210 #endif
211 #endif
212 
213 /* inf for interface afw_adaptor_impl_index */
214 #ifdef __BASE_FILE__
215 #define _AFW_IMPLEMENTATION_SOURCE_FILE_ __BASE_FILE__
216 #else
217 #define _AFW_IMPLEMENTATION_SOURCE_FILE_ __FILE__
218 #endif
219 #ifdef AFW_IMPLEMENTATION_INF_SPECIFIER
220 AFW_IMPLEMENTATION_INF_SPECIFIER(afw_adaptor_impl_index_inf_t)
221 #else
222 static const afw_adaptor_impl_index_inf_t
223 #endif
224 #ifdef AFW_IMPLEMENTATION_INF_LABEL
225 AFW_IMPLEMENTATION_INF_LABEL = {
226 #else
227 impl_afw_adaptor_impl_index_inf = {
228 #endif
229  {
230  AFW_UTF8_LITERAL("afw_adaptor_impl_index"),
231  AFW_UTF8_LITERAL(_AFW_IMPLEMENTATION_SOURCE_FILE_),
232  AFW_UTF8_LITERAL(_AFW_IMPLEMENTATION_ID_),
233  _AFW_IMPLEMENTATION_SPECIFIC_
234  },
235  impl_afw_adaptor_impl_index_open,
236  impl_afw_adaptor_impl_index_release,
237  impl_afw_adaptor_impl_index_get_index_definitions,
238  impl_afw_adaptor_impl_index_update_index_definitions,
241  impl_afw_adaptor_impl_index_replace,
242  impl_afw_adaptor_impl_index_drop,
243  impl_afw_adaptor_impl_index_open_cursor,
244  impl_afw_adaptor_impl_index_get_session
245 };
246 
247 #undef _AFW_IMPLEMENTATION_ID_
248 #undef _AFW_IMPLEMENTATION_SPECIFIC_
249 #undef _AFW_IMPLEMENTATION_SOURCE_FILE_
250 
#define AFW_BEGIN_DECLARES
Interface afw_interface opaque typedefs.
impl_afw_adaptor_impl_index_delete(const afw_adaptor_impl_index_t *instance, const afw_utf8_t *object_type_id, const afw_utf8_t *object_id, const afw_utf8_t *key, const afw_utf8_t *value, const afw_pool_t *pool, afw_xctx_t *xctx)
impl_afw_adaptor_impl_index_add(const afw_adaptor_impl_index_t *instance, const afw_utf8_t *object_type_id, const afw_utf8_t *object_id, const afw_utf8_t *key, const afw_utf8_t *value, afw_boolean_t unique, const afw_pool_t *pool, afw_xctx_t *xctx)
#define AFW_UTF8_LITERAL(A_STRING)
String literal initializer.
Definition: afw_common.h:582
_Bool afw_boolean_t
Definition: afw_common.h:373
int afw_rc_t
Definition: afw_common.h:663
Interface afw_adaptor_impl_index_cursor public struct.
Interface afw_adaptor_impl_index_inf_s struct.
Interface afw_adaptor_impl_index public struct.
Interface afw_adaptor_session public struct.
Interface afw_object public struct.
Interface afw_pool public struct.
NFC normalized UTF-8 string.
Definition: afw_common.h:545
Interface afw_xctx public struct.