Top   Types   Functions   Classes   Options   Index   Sources 

map_u.hd


  1  #REM /* *** Option macros for Map *** */
  2  #REM /* Automatically generated by options.lsp.  Do not edit! */
  3  #REM /* This file is a template input file for untemplatize. */
  4  #OUTPUT_PERHAPS(Global_map_u.ErwinHExt)
  5  #DATE
  6  
  7  /* Global user defined macros for the map implementation */
  8  
  9  #ifdef ERWIN_DEBUG_INCLUDE
 10  #warning "Including Global_map_u.h"
 11  #endif
 12  
 13  #ifndef Global_ERWIN_MAP_U_ErwinHExt
 14  #define Global_ERWIN_MAP_U_ErwinHExt
 15  
 16  #ifdef ERWIN_DEBUG_INCLUDE
 17  #warning "First inclusion of Global_map_u.h"
 18  #endif
 19  
 20  
 21  
 22  #endif /* !defined(Global_ERWIN_MAP_U_ErwinHExt) */
 23  #REM /* ************************************************************** */
 24  #OUTPUT_PERHAPS(Map_u.ErwinHExt)
 25  /* -*- Mode: C -*- */
 26  #DATE
 27  /* User defined macros for the map implementation. */
 28  
 29  #ifdef ERWIN_DEBUG_INCLUDE
 30  #warning "First inclusion of Map_u.ErwinHExt"
 31  #endif
 32  
 33  #ifndef ERWIN_Map_U_ErwinHExt
 34  #define ERWIN_Map_U_ErwinHExt
 35  
 36  #ifdef ERWIN_DEBUG_INCLUDE
 37  #warning "First inclusion of Map_u.ErwinHExt"
 38  #endif
 39  
 40  #include "#Global_map_u.ErwinHExt"
 41  
 42  
 43  
 44  #endif /* !defined(ERWIN_Map_U_ErwinHExt) */
 45  #REM /* ************************************************************** */
 46  #OUTPUT(Map_d.ErwinHExt)
 47  /* -*- Mode: C -*- */
 48  #DATE
 49  
 50  #ifdef ERWIN_DEBUG_INCLUDE
 51  #warning "Including Map_d.h"
 52  #endif
 53  
 54  #ifndef ERWIN_Map_D_ErwinHExt
 55  #define ERWIN_Map_D_ErwinHExt
 56  
 57  #ifdef ERWIN_DEBUG_INCLUDE
 58  #warning "First inclusion of Map_d.ErwinHExt"
 59  #endif
 60  
 61  #include "#Global_map_u.ErwinHExt"
 62  #include "#Map_u.ErwinHExt"
 63  
 64  ErwinUserInclude
 65  
 66  /* Preface */
 67  #IF(oType == void)
 68  #  define Map_INDEX_IS_VOID 1
 69  #ELSE
 70  #  define Map_INDEX_IS_VOID 0
 71  #ENDIF
 72  #IF(oType == int)
 73  #  define Map_INDEX_IS_INT 1
 74  #ELSE
 75  #  define Map_INDEX_IS_INT 0
 76  #ENDIF
 77  #IF(isChar == 1)
 78  #  define Map_INDEX_IS_CHAR 1
 79  #ELSE
 80  #  define Map_INDEX_IS_CHAR 0
 81  #ENDIF
 82  
 83  /* CONSTANT_ZERO */
 84  #if Map_INDEX_IS_VOID
 85  #  undef Map_CONSTANT_ZERO
 86  #  define Map_CONSTANT_ZERO 1
 87  #  undef Map_DYN_ZERO
 88  #elif defined(Map_CONSTANT_ZERO)
 89  #  if ERWIN_BOOL_VALUE(Map_CONSTANT_ZERO)
 90  #    undef Map_CONSTANT_ZERO
 91  #    define Map_CONSTANT_ZERO 1
 92  #  else
 93  #    undef Map_CONSTANT_ZERO
 94  #    define Map_CONSTANT_ZERO 0
 95  #  endif
 96  #elif defined(Map_DYN_ZERO)
 97  #  if !ERWIN_BOOL_VALUE(Map_DYN_ZERO)
 98  #    define Map_CONSTANT_ZERO 1
 99  #  else
100  #    define Map_CONSTANT_ZERO 0
101  #  endif
102  #elif defined(Global_oType_HAS_CONSTANT_ZERO)
103  #  if ERWIN_BOOL_VALUE(Global_oType_HAS_CONSTANT_ZERO)
104  #    define Map_CONSTANT_ZERO 1
105  #  else
106  #    define Map_CONSTANT_ZERO 0
107  #  endif
108  #elif defined(Global_MAP_CONSTANT_ZERO)
109  #  if ERWIN_BOOL_VALUE(Global_MAP_CONSTANT_ZERO)
110  #    define Map_CONSTANT_ZERO 1
111  #  else
112  #    define Map_CONSTANT_ZERO 0
113  #  endif
114  #elif defined(Global_MAP_DYN_ZERO)
115  #  if !ERWIN_BOOL_VALUE(Global_MAP_DYN_ZERO)
116  #    define Map_CONSTANT_ZERO 1
117  #  else
118  #    define Map_CONSTANT_ZERO 0
119  #  endif
120  #elif defined(Global_ERWIN_CONSTANT_ZERO)
121  #  if ERWIN_BOOL_VALUE(Global_ERWIN_CONSTANT_ZERO)
122  #    define Map_CONSTANT_ZERO 1
123  #  else
124  #    define Map_CONSTANT_ZERO 0
125  #  endif
126  #elif defined(Global_ERWIN_DYN_ZERO)
127  #  if !ERWIN_BOOL_VALUE(Global_ERWIN_DYN_ZERO)
128  #    define Map_CONSTANT_ZERO 1
129  #  else
130  #    define Map_CONSTANT_ZERO 0
131  #  endif
132  #elif defined(ALL_ERWIN_CONSTANT_ZERO)
133  #  if ERWIN_BOOL_VALUE(ALL_ERWIN_CONSTANT_ZERO)
134  #    define Map_CONSTANT_ZERO 1
135  #  else
136  #    define Map_CONSTANT_ZERO 0
137  #  endif
138  #elif !defined(ALL_ERWIN_DYN_ZERO)
139  #  define Map_CONSTANT_ZERO 0
140  #elif !ERWIN_BOOL_VALUE(ALL_ERWIN_DYN_ZERO)
141  #  define Map_CONSTANT_ZERO 1
142  #else
143  #  define Map_CONSTANT_ZERO 0
144  #endif
145  #if !defined(Map_DYN_ZERO)
146  #elif Map_CONSTANT_ZERO == ERWIN_BOOL_VALUE(Map_DYN_ZERO)
147  #  error "Inconsistency: Map_CONSTANT_ZERO == Map_DYN_ZERO"
148  #endif
149  #if ERWIN_BOOL_VALUE(Map_CONSTANT_ZERO)
150  #  define Map_DYN_ZERO 0
151  #else
152  #  define Map_DYN_ZERO 1
153  #endif
154  
155  /* USE_DEFAULT_ARGS */
156  #if !defined(__cplusplus)
157  #  undef Map_USE_DEFAULT_ARGS
158  #  define Map_USE_DEFAULT_ARGS 0
159  #  undef Map_NO_DEFAULT_ARGS
160  #elif defined(Map_USE_DEFAULT_ARGS)
161  #  if ERWIN_BOOL_VALUE(Map_USE_DEFAULT_ARGS)
162  #    undef Map_USE_DEFAULT_ARGS
163  #    define Map_USE_DEFAULT_ARGS 1
164  #  else
165  #    undef Map_USE_DEFAULT_ARGS
166  #    define Map_USE_DEFAULT_ARGS 0
167  #  endif
168  #elif defined(Map_NO_DEFAULT_ARGS)
169  #  if !ERWIN_BOOL_VALUE(Map_NO_DEFAULT_ARGS)
170  #    define Map_USE_DEFAULT_ARGS 1
171  #  else
172  #    define Map_USE_DEFAULT_ARGS 0
173  #  endif
174  #elif defined(Global_MAP_USE_DEFAULT_ARGS)
175  #  if ERWIN_BOOL_VALUE(Global_MAP_USE_DEFAULT_ARGS)
176  #    define Map_USE_DEFAULT_ARGS 1
177  #  else
178  #    define Map_USE_DEFAULT_ARGS 0
179  #  endif
180  #elif defined(Global_MAP_NO_DEFAULT_ARGS)
181  #  if !ERWIN_BOOL_VALUE(Global_MAP_NO_DEFAULT_ARGS)
182  #    define Map_USE_DEFAULT_ARGS 1
183  #  else
184  #    define Map_USE_DEFAULT_ARGS 0
185  #  endif
186  #elif defined(Global_ERWIN_USE_DEFAULT_ARGS)
187  #  if ERWIN_BOOL_VALUE(Global_ERWIN_USE_DEFAULT_ARGS)
188  #    define Map_USE_DEFAULT_ARGS 1
189  #  else
190  #    define Map_USE_DEFAULT_ARGS 0
191  #  endif
192  #elif defined(Global_ERWIN_NO_DEFAULT_ARGS)
193  #  if !ERWIN_BOOL_VALUE(Global_ERWIN_NO_DEFAULT_ARGS)
194  #    define Map_USE_DEFAULT_ARGS 1
195  #  else
196  #    define Map_USE_DEFAULT_ARGS 0
197  #  endif
198  #elif defined(ALL_ERWIN_USE_DEFAULT_ARGS)
199  #  if ERWIN_BOOL_VALUE(ALL_ERWIN_USE_DEFAULT_ARGS)
200  #    define Map_USE_DEFAULT_ARGS 1
201  #  else
202  #    define Map_USE_DEFAULT_ARGS 0
203  #  endif
204  #elif !defined(ALL_ERWIN_NO_DEFAULT_ARGS)
205  #  define Map_USE_DEFAULT_ARGS 1
206  #elif !ERWIN_BOOL_VALUE(ALL_ERWIN_NO_DEFAULT_ARGS)
207  #  define Map_USE_DEFAULT_ARGS 1
208  #else
209  #  define Map_USE_DEFAULT_ARGS 0
210  #endif
211  #if !defined(Map_NO_DEFAULT_ARGS)
212  #elif Map_USE_DEFAULT_ARGS == ERWIN_BOOL_VALUE(Map_NO_DEFAULT_ARGS)
213  #  error "Inconsistency: Map_USE_DEFAULT_ARGS == Map_NO_DEFAULT_ARGS"
214  #endif
215  #if ERWIN_BOOL_VALUE(Map_USE_DEFAULT_ARGS)
216  #  define Map_NO_DEFAULT_ARGS 0
217  #else
218  #  define Map_NO_DEFAULT_ARGS 1
219  #endif
220  #if defined(Map_USE_DEFAULT_ARGS) && Map_USE_DEFAULT_ARGS
221  #  define Map_DEFAULT_ARG(X) = X
222  #else
223  #  define Map_DEFAULT_ARG(X)
224  #endif
225  
226  /* SUPER_CLASS */
227  #if !defined(__cplusplus)
228  #elif defined(Map_SUPER_CLASS)
229  #elif defined(Global_MAP_SUPER_CLASS)
230  #  define Map_SUPER_CLASS Global_MAP_SUPER_CLASS
231  #elif defined(Global_ERWIN_SUPER_CLASS)
232  #  define Map_SUPER_CLASS Global_ERWIN_SUPER_CLASS
233  #elif defined(ALL_ERWIN_SUPER_CLASS)
234  #  define Map_SUPER_CLASS ALL_ERWIN_SUPER_CLASS
235  #endif
236  
237  /* SUPER_CLASS_ACCESS */
238  #if !defined(__cplusplus)
239  #elif defined(Map_SUPER_CLASS_ACCESS)
240  #elif defined(Global_MAP_SUPER_CLASS_ACCESS)
241  #  define Map_SUPER_CLASS_ACCESS Global_MAP_SUPER_CLASS_ACCESS
242  #elif defined(Global_ERWIN_SUPER_CLASS_ACCESS)
243  #  define Map_SUPER_CLASS_ACCESS Global_ERWIN_SUPER_CLASS_ACCESS
244  #elif defined(ALL_ERWIN_SUPER_CLASS_ACCESS)
245  #  define Map_SUPER_CLASS_ACCESS ALL_ERWIN_SUPER_CLASS_ACCESS
246  #else
247  #  define Map_SUPER_CLASS_ACCESS private
248  #endif
249  
250  /* STD_MEMBERS */
251  #if defined(Map_TYPE_INFO_STD_MEMBERS)
252  #elif defined(Map_t_TYPE_INFO_STD_MEMBERS)
253  #  define Map_TYPE_INFO_STD_MEMBERS Map_t_TYPE_INFO_STD_MEMBERS
254  #endif
255  #if defined(Map_STD_MEMBERS)
256  #elif defined(Global_MAP_STD_MEMBERS)
257  #  define Map_STD_MEMBERS(CLASS_NAME) Global_MAP_STD_MEMBERS(CLASS_NAME)
258  #  define Map_TYPE_INFO_STD_MEMBERS Global_MAP_TYPE_INFO_STD_MEMBERS
259  #elif defined(Global_ERWIN_STD_MEMBERS)
260  #  define Map_STD_MEMBERS(CLASS_NAME) Global_ERWIN_STD_MEMBERS(CLASS_NAME)
261  #  define Map_TYPE_INFO_STD_MEMBERS Global_ERWIN_TYPE_INFO_STD_MEMBERS
262  #elif defined(ALL_ERWIN_STD_MEMBERS)
263  #  define Map_STD_MEMBERS(CLASS_NAME) ALL_ERWIN_STD_MEMBERS(CLASS_NAME)
264  #  define Map_TYPE_INFO_STD_MEMBERS ALL_ERWIN_TYPE_INFO_STD_MEMBERS
265  #else
266  #  define Map_STD_MEMBERS(CLASS_NAME)
267  #  define Map_TYPE_INFO_STD_MEMBERS
268  #endif
269  
270  /* HAVE_SIG */
271  #if defined(Map_HAVE_SIG)
272  #  if ERWIN_BOOL_VALUE(Map_HAVE_SIG)
273  #    undef Map_HAVE_SIG
274  #    define Map_HAVE_SIG 1
275  #  else
276  #    undef Map_HAVE_SIG
277  #    define Map_HAVE_SIG 0
278  #  endif
279  #elif defined(Map_NO_SIG)
280  #  if !ERWIN_BOOL_VALUE(Map_NO_SIG)
281  #    define Map_HAVE_SIG 1
282  #  else
283  #    define Map_HAVE_SIG 0
284  #  endif
285  #elif defined(Map_FORCE_SIG)
286  #  if ERWIN_BOOL_VALUE(Map_FORCE_SIG)
287  #    define Map_HAVE_SIG 1
288  #  else
289  #    define Map_HAVE_SIG 0
290  #  endif
291  #elif defined(Global_MAP_HAVE_SIG)
292  #  if ERWIN_BOOL_VALUE(Global_MAP_HAVE_SIG)
293  #    define Map_HAVE_SIG 1
294  #  else
295  #    define Map_HAVE_SIG 0
296  #  endif
297  #elif defined(Global_MAP_NO_SIG)
298  #  if !ERWIN_BOOL_VALUE(Global_MAP_NO_SIG)
299  #    define Map_HAVE_SIG 1
300  #  else
301  #    define Map_HAVE_SIG 0
302  #  endif
303  #elif defined(Global_MAP_FORCE_SIG)
304  #  if ERWIN_BOOL_VALUE(Global_MAP_FORCE_SIG)
305  #    define Map_HAVE_SIG 1
306  #  else
307  #    define Map_HAVE_SIG 0
308  #  endif
309  #elif defined(Global_ERWIN_HAVE_SIG)
310  #  if ERWIN_BOOL_VALUE(Global_ERWIN_HAVE_SIG)
311  #    define Map_HAVE_SIG 1
312  #  else
313  #    define Map_HAVE_SIG 0
314  #  endif
315  #elif defined(Global_ERWIN_NO_SIG)
316  #  if !ERWIN_BOOL_VALUE(Global_ERWIN_NO_SIG)
317  #    define Map_HAVE_SIG 1
318  #  else
319  #    define Map_HAVE_SIG 0
320  #  endif
321  #elif defined(Global_ERWIN_FORCE_SIG)
322  #  if ERWIN_BOOL_VALUE(Global_ERWIN_FORCE_SIG)
323  #    define Map_HAVE_SIG 1
324  #  else
325  #    define Map_HAVE_SIG 0
326  #  endif
327  #elif defined(ALL_ERWIN_HAVE_SIG)
328  #  if ERWIN_BOOL_VALUE(ALL_ERWIN_HAVE_SIG)
329  #    define Map_HAVE_SIG 1
330  #  else
331  #    define Map_HAVE_SIG 0
332  #  endif
333  #elif defined(ALL_ERWIN_NO_SIG)
334  #  if !ERWIN_BOOL_VALUE(ALL_ERWIN_NO_SIG)
335  #    define Map_HAVE_SIG 1
336  #  else
337  #    define Map_HAVE_SIG 0
338  #  endif
339  #elif defined(ALL_ERWIN_FORCE_SIG)
340  #  if ERWIN_BOOL_VALUE(ALL_ERWIN_FORCE_SIG)
341  #    define Map_HAVE_SIG 1
342  #  else
343  #    define Map_HAVE_SIG 0
344  #  endif
345  #elif defined(DEVEL)
346  #  define Map_HAVE_SIG 1
347  #else
348  #  define Map_HAVE_SIG 0
349  #endif
350  #if !defined(Map_NO_SIG)
351  #elif Map_HAVE_SIG == ERWIN_BOOL_VALUE(Map_NO_SIG)
352  #  error "Inconsistency: Map_HAVE_SIG == Map_NO_SIG"
353  #endif
354  #if !defined(Map_FORCE_SIG)
355  #elif Map_HAVE_SIG != ERWIN_BOOL_VALUE(Map_FORCE_SIG)
356  #  error "Inconsistency: Map_HAVE_SIG != Map_FORCE_SIG"
357  #endif
358  #if ERWIN_BOOL_VALUE(Map_HAVE_SIG)
359  #  define Map_NO_SIG 0
360  #else
361  #  define Map_NO_SIG 1
362  #endif
363  
364  /* PROFILE */
365  #if defined(Map_PROFILE)
366  #  if ERWIN_BOOL_VALUE(Map_PROFILE)
367  #    undef Map_PROFILE
368  #    define Map_PROFILE 1
369  #  else
370  #    undef Map_PROFILE
371  #    define Map_PROFILE 0
372  #  endif
373  #elif defined(Global_MAP_PROFILE)
374  #  if ERWIN_BOOL_VALUE(Global_MAP_PROFILE)
375  #    define Map_PROFILE 1
376  #  else
377  #    define Map_PROFILE 0
378  #  endif
379  #elif defined(Global_ERWIN_PROFILE)
380  #  if ERWIN_BOOL_VALUE(Global_ERWIN_PROFILE)
381  #    define Map_PROFILE 1
382  #  else
383  #    define Map_PROFILE 0
384  #  endif
385  #elif !defined(ALL_ERWIN_PROFILE)
386  #  define Map_PROFILE 0
387  #elif ERWIN_BOOL_VALUE(ALL_ERWIN_PROFILE)
388  #  define Map_PROFILE 1
389  #else
390  #  define Map_PROFILE 0
391  #endif
392  
393  /* ALLOW_NULL */
394  #if defined(Map_ALLOW_NULL)
395  #  if ERWIN_BOOL_VALUE(Map_ALLOW_NULL)
396  #    undef Map_ALLOW_NULL
397  #    define Map_ALLOW_NULL 1
398  #  else
399  #    undef Map_ALLOW_NULL
400  #    define Map_ALLOW_NULL 0
401  #  endif
402  #elif defined(Global_MAP_ALLOW_NULL)
403  #  if ERWIN_BOOL_VALUE(Global_MAP_ALLOW_NULL)
404  #    define Map_ALLOW_NULL 1
405  #  else
406  #    define Map_ALLOW_NULL 0
407  #  endif
408  #elif defined(Global_ERWIN_ALLOW_NULL)
409  #  if ERWIN_BOOL_VALUE(Global_ERWIN_ALLOW_NULL)
410  #    define Map_ALLOW_NULL 1
411  #  else
412  #    define Map_ALLOW_NULL 0
413  #  endif
414  #elif !defined(ALL_ERWIN_ALLOW_NULL)
415  #  define Map_ALLOW_NULL 0
416  #elif ERWIN_BOOL_VALUE(ALL_ERWIN_ALLOW_NULL)
417  #  define Map_ALLOW_NULL 1
418  #else
419  #  define Map_ALLOW_NULL 0
420  #endif
421  
422  /* DIRECT_RECURSION */
423  #if !defined(__cplusplus)
424  #elif defined(Map_DIRECT_RECURSION)
425  #  if ERWIN_BOOL_VALUE(Map_DIRECT_RECURSION)
426  #    undef Map_DIRECT_RECURSION
427  #    define Map_DIRECT_RECURSION 1
428  #  else
429  #    undef Map_DIRECT_RECURSION
430  #    define Map_DIRECT_RECURSION 0
431  #  endif
432  #elif defined(Global_MAP_DIRECT_RECURSION)
433  #  if ERWIN_BOOL_VALUE(Global_MAP_DIRECT_RECURSION)
434  #    define Map_DIRECT_RECURSION 1
435  #  else
436  #    define Map_DIRECT_RECURSION 0
437  #  endif
438  #elif defined(Global_ERWIN_DIRECT_RECURSION)
439  #  if ERWIN_BOOL_VALUE(Global_ERWIN_DIRECT_RECURSION)
440  #    define Map_DIRECT_RECURSION 1
441  #  else
442  #    define Map_DIRECT_RECURSION 0
443  #  endif
444  #elif !defined(ALL_ERWIN_DIRECT_RECURSION)
445  #  define Map_DIRECT_RECURSION 0
446  #elif ERWIN_BOOL_VALUE(ALL_ERWIN_DIRECT_RECURSION)
447  #  define Map_DIRECT_RECURSION 1
448  #else
449  #  define Map_DIRECT_RECURSION 0
450  #endif
451  
452  /* HAVE_INT_CONSTRUCTOR */
453  #if defined(__cplusplus)
454  #  if Map_DYN_ZERO && Map_INDEX_IS_INT
455  #    undef Map_HAVE_INT_CONSTRUCTOR
456  #    define Map_HAVE_INT_CONSTRUCTOR 0
457  #    undef Map_NO_INT_CONSTRUCTOR
458  #  elif defined(Map_HAVE_INT_CONSTRUCTOR)
459  #    if ERWIN_BOOL_VALUE(Map_HAVE_INT_CONSTRUCTOR)
460  #      undef Map_HAVE_INT_CONSTRUCTOR
461  #      define Map_HAVE_INT_CONSTRUCTOR 1
462  #    else
463  #      undef Map_HAVE_INT_CONSTRUCTOR
464  #      define Map_HAVE_INT_CONSTRUCTOR 0
465  #    endif
466  #  elif defined(Map_NO_INT_CONSTRUCTOR)
467  #    if !ERWIN_BOOL_VALUE(Map_NO_INT_CONSTRUCTOR)
468  #      define Map_HAVE_INT_CONSTRUCTOR 1
469  #    else
470  #      define Map_HAVE_INT_CONSTRUCTOR 0
471  #    endif
472  #  elif defined(Global_MAP_HAVE_INT_CONSTRUCTOR)
473  #    if ERWIN_BOOL_VALUE(Global_MAP_HAVE_INT_CONSTRUCTOR)
474  #      define Map_HAVE_INT_CONSTRUCTOR 1
475  #    else
476  #      define Map_HAVE_INT_CONSTRUCTOR 0
477  #    endif
478  #  elif defined(Global_MAP_NO_INT_CONSTRUCTOR)
479  #    if !ERWIN_BOOL_VALUE(Global_MAP_NO_INT_CONSTRUCTOR)
480  #      define Map_HAVE_INT_CONSTRUCTOR 1
481  #    else
482  #      define Map_HAVE_INT_CONSTRUCTOR 0
483  #    endif
484  #  elif defined(Global_ERWIN_HAVE_INT_CONSTRUCTOR)
485  #    if ERWIN_BOOL_VALUE(Global_ERWIN_HAVE_INT_CONSTRUCTOR)
486  #      define Map_HAVE_INT_CONSTRUCTOR 1
487  #    else
488  #      define Map_HAVE_INT_CONSTRUCTOR 0
489  #    endif
490  #  elif defined(Global_ERWIN_NO_INT_CONSTRUCTOR)
491  #    if !ERWIN_BOOL_VALUE(Global_ERWIN_NO_INT_CONSTRUCTOR)
492  #      define Map_HAVE_INT_CONSTRUCTOR 1
493  #    else
494  #      define Map_HAVE_INT_CONSTRUCTOR 0
495  #    endif
496  #  elif defined(ALL_ERWIN_HAVE_INT_CONSTRUCTOR)
497  #    if ERWIN_BOOL_VALUE(ALL_ERWIN_HAVE_INT_CONSTRUCTOR)
498  #      define Map_HAVE_INT_CONSTRUCTOR 1
499  #    else
500  #      define Map_HAVE_INT_CONSTRUCTOR 0
501  #    endif
502  #  elif !defined(ALL_ERWIN_NO_INT_CONSTRUCTOR)
503  #    define Map_HAVE_INT_CONSTRUCTOR 1
504  #  elif !ERWIN_BOOL_VALUE(ALL_ERWIN_NO_INT_CONSTRUCTOR)
505  #    define Map_HAVE_INT_CONSTRUCTOR 1
506  #  else
507  #    define Map_HAVE_INT_CONSTRUCTOR 0
508  #  endif
509  #  if !defined(Map_NO_INT_CONSTRUCTOR)
510  #  elif Map_HAVE_INT_CONSTRUCTOR == ERWIN_BOOL_VALUE(Map_NO_INT_CONSTRUCTOR)
511  #    error "Inconsistency: Map_HAVE_INT_CONSTRUCTOR == Map_NO_INT_CONSTRUCTOR"
512  #  endif
513  #  if ERWIN_BOOL_VALUE(Map_HAVE_INT_CONSTRUCTOR)
514  #    define Map_NO_INT_CONSTRUCTOR 0
515  #  else
516  #    define Map_NO_INT_CONSTRUCTOR 1
517  #  endif
518  #endif
519  
520  /* MANY_CASTS */
521  #if !defined(__cplusplus)
522  #  undef Map_MANY_CASTS
523  #  define Map_MANY_CASTS 0
524  #elif defined(Map_MANY_CASTS)
525  #  if ERWIN_BOOL_VALUE(Map_MANY_CASTS)
526  #    undef Map_MANY_CASTS
527  #    define Map_MANY_CASTS 1
528  #  else
529  #    undef Map_MANY_CASTS
530  #    define Map_MANY_CASTS 0
531  #  endif
532  #elif defined(Global_MAP_MANY_CASTS)
533  #  if ERWIN_BOOL_VALUE(Global_MAP_MANY_CASTS)
534  #    define Map_MANY_CASTS 1
535  #  else
536  #    define Map_MANY_CASTS 0
537  #  endif
538  #elif defined(Global_ERWIN_MANY_CASTS)
539  #  if ERWIN_BOOL_VALUE(Global_ERWIN_MANY_CASTS)
540  #    define Map_MANY_CASTS 1
541  #  else
542  #    define Map_MANY_CASTS 0
543  #  endif
544  #elif !defined(ALL_ERWIN_MANY_CASTS)
545  #  define Map_MANY_CASTS 0
546  #elif ERWIN_BOOL_VALUE(ALL_ERWIN_MANY_CASTS)
547  #  define Map_MANY_CASTS 1
548  #else
549  #  define Map_MANY_CASTS 0
550  #endif
551  #if defined(Map_MANY_CASTS) && Map_MANY_CASTS
552  #  define Map_DEFAULT_ARG_MANY(X) Map_DEFAULT_ARG(X)
553  #else
554  #  define Map_DEFAULT_ARG_MANY(X)
555  #endif
556  
557  /* ###################################################################### */
558  #ifdef Map_IMPLEMENTATION
559  
560  ErwinImplementationInclude
561  
562  #ifdef Global_ERWIN_COMPILING
563  #  include "erwin/defaults.h"
564  #  include "erwin/forwards.h"
565  #else
566  #  include <erwin/defaults.h>
567  #  include <erwin/forwards.h>
568  #endif
569  
570  /* NOMEM_IS_FATAL */
571  #if defined(Map_NOMEM_IS_FATAL)
572  #  if ERWIN_BOOL_VALUE(Map_NOMEM_IS_FATAL)
573  #    undef Map_NOMEM_IS_FATAL
574  #    define Map_NOMEM_IS_FATAL 1
575  #  else
576  #    undef Map_NOMEM_IS_FATAL
577  #    define Map_NOMEM_IS_FATAL 0
578  #  endif
579  #elif defined(Global_MAP_NOMEM_IS_FATAL)
580  #  if ERWIN_BOOL_VALUE(Global_MAP_NOMEM_IS_FATAL)
581  #    define Map_NOMEM_IS_FATAL 1
582  #  else
583  #    define Map_NOMEM_IS_FATAL 0
584  #  endif
585  #elif defined(Global_ERWIN_NOMEM_IS_FATAL)
586  #  if ERWIN_BOOL_VALUE(Global_ERWIN_NOMEM_IS_FATAL)
587  #    define Map_NOMEM_IS_FATAL 1
588  #  else
589  #    define Map_NOMEM_IS_FATAL 0
590  #  endif
591  #elif !defined(ALL_ERWIN_NOMEM_IS_FATAL)
592  #  define Map_NOMEM_IS_FATAL 0
593  #elif ERWIN_BOOL_VALUE(ALL_ERWIN_NOMEM_IS_FATAL)
594  #  define Map_NOMEM_IS_FATAL 1
595  #else
596  #  define Map_NOMEM_IS_FATAL 0
597  #endif
598  
599  /* ASSERTION_FAILED_HANDLER */
600  #if defined(Map_ASSERTION_FAILED_HANDLER)
601  #elif defined(Global_MAP_ASSERTION_FAILED_HANDLER)
602  #  define Map_ASSERTION_FAILED_HANDLER(FILE,LINE,FUNC,CHECK) Global_MAP_ASSERTION_FAILED_HANDLER(FILE,LINE,FUNC,CHECK)
603  #elif defined(Global_ERWIN_ASSERTION_FAILED_HANDLER)
604  #  define Map_ASSERTION_FAILED_HANDLER(FILE,LINE,FUNC,CHECK) Global_ERWIN_ASSERTION_FAILED_HANDLER(FILE,LINE,FUNC,CHECK)
605  #elif defined(ALL_ERWIN_ASSERTION_FAILED_HANDLER)
606  #  define Map_ASSERTION_FAILED_HANDLER(FILE,LINE,FUNC,CHECK) ALL_ERWIN_ASSERTION_FAILED_HANDLER(FILE,LINE,FUNC,CHECK)
607  #else
608  #  define Map_ASSERTION_FAILED_HANDLER(FILE,LINE,FUNC,CHECK) Global_ERWIN_DEFAULT_ASSERTION_FAILED_HANDLER(FILE,LINE,FUNC,CHECK)
609  #endif
610  
611  /* OPTIMISE_SIZE */
612  #if defined(Map_OPTIMISE_SIZE)
613  #  if ERWIN_BOOL_VALUE(Map_OPTIMISE_SIZE)
614  #    undef Map_OPTIMISE_SIZE
615  #    define Map_OPTIMISE_SIZE 1
616  #  else
617  #    undef Map_OPTIMISE_SIZE
618  #    define Map_OPTIMISE_SIZE 0
619  #  endif
620  #elif defined(Global_MAP_OPTIMISE_SIZE)
621  #  if ERWIN_BOOL_VALUE(Global_MAP_OPTIMISE_SIZE)
622  #    define Map_OPTIMISE_SIZE 1
623  #  else
624  #    define Map_OPTIMISE_SIZE 0
625  #  endif
626  #elif defined(Global_ERWIN_OPTIMISE_SIZE)
627  #  if ERWIN_BOOL_VALUE(Global_ERWIN_OPTIMISE_SIZE)
628  #    define Map_OPTIMISE_SIZE 1
629  #  else
630  #    define Map_OPTIMISE_SIZE 0
631  #  endif
632  #elif !defined(ALL_ERWIN_OPTIMISE_SIZE)
633  #elif ERWIN_BOOL_VALUE(ALL_ERWIN_OPTIMISE_SIZE)
634  #  define Map_OPTIMISE_SIZE 1
635  #else
636  #  define Map_OPTIMISE_SIZE 0
637  #endif
638  
639  /* SPLIT */
640  #if defined(Map_SPLIT)
641  #  if ERWIN_BOOL_VALUE(Map_SPLIT)
642  #    undef Map_SPLIT
643  #    define Map_SPLIT 1
644  #  else
645  #    undef Map_SPLIT
646  #    define Map_SPLIT 0
647  #  endif
648  #elif defined(Global_MAP_SPLIT)
649  #  if ERWIN_BOOL_VALUE(Global_MAP_SPLIT)
650  #    define Map_SPLIT 1
651  #  else
652  #    define Map_SPLIT 0
653  #  endif
654  #elif defined(Global_ERWIN_SPLIT)
655  #  if ERWIN_BOOL_VALUE(Global_ERWIN_SPLIT)
656  #    define Map_SPLIT 1
657  #  else
658  #    define Map_SPLIT 0
659  #  endif
660  #elif !defined(ALL_ERWIN_SPLIT)
661  #elif ERWIN_BOOL_VALUE(ALL_ERWIN_SPLIT)
662  #  define Map_SPLIT 1
663  #else
664  #  define Map_SPLIT 0
665  #endif
666  
667  /* INITIAL_SIZE */
668  #if defined(Map_INITIAL_SIZE)
669  #elif defined(Global_MAP_INITIAL_SIZE)
670  #  define Map_INITIAL_SIZE Global_MAP_INITIAL_SIZE
671  #elif defined(Global_ERWIN_INITIAL_SIZE)
672  #  define Map_INITIAL_SIZE Global_ERWIN_INITIAL_SIZE
673  #elif defined(ALL_ERWIN_INITIAL_SIZE)
674  #  define Map_INITIAL_SIZE ALL_ERWIN_INITIAL_SIZE
675  #else
676  #  define Map_INITIAL_SIZE 4
677  #endif
678  
679  /* MINIMAL_SIZE */
680  #if defined(Map_MINIMAL_SIZE)
681  #elif defined(Global_MAP_MINIMAL_SIZE)
682  #  define Map_MINIMAL_SIZE Global_MAP_MINIMAL_SIZE
683  #elif defined(Global_ERWIN_MINIMAL_SIZE)
684  #  define Map_MINIMAL_SIZE Global_ERWIN_MINIMAL_SIZE
685  #elif defined(ALL_ERWIN_MINIMAL_SIZE)
686  #  define Map_MINIMAL_SIZE ALL_ERWIN_MINIMAL_SIZE
687  #else
688  #  define Map_MINIMAL_SIZE 4
689  #endif
690  
691  /* TRIGGER_DENOMINATOR */
692  #if defined(Map_TRIGGER_DENOMINATOR)
693  #elif defined(Global_MAP_TRIGGER_DENOMINATOR)
694  #  define Map_TRIGGER_DENOMINATOR Global_MAP_TRIGGER_DENOMINATOR
695  #elif defined(Global_ERWIN_TRIGGER_DENOMINATOR)
696  #  define Map_TRIGGER_DENOMINATOR Global_ERWIN_TRIGGER_DENOMINATOR
697  #elif defined(ALL_ERWIN_TRIGGER_DENOMINATOR)
698  #  define Map_TRIGGER_DENOMINATOR ALL_ERWIN_TRIGGER_DENOMINATOR
699  #else
700  #  define Map_TRIGGER_DENOMINATOR 5
701  #endif
702  
703  /* TRIGGER_NUMERATOR */
704  #if defined(Map_TRIGGER_NUMERATOR)
705  #elif defined(Global_MAP_TRIGGER_NUMERATOR)
706  #  define Map_TRIGGER_NUMERATOR Global_MAP_TRIGGER_NUMERATOR
707  #elif defined(Global_ERWIN_TRIGGER_NUMERATOR)
708  #  define Map_TRIGGER_NUMERATOR Global_ERWIN_TRIGGER_NUMERATOR
709  #elif defined(ALL_ERWIN_TRIGGER_NUMERATOR)
710  #  define Map_TRIGGER_NUMERATOR ALL_ERWIN_TRIGGER_NUMERATOR
711  #else
712  #  define Map_TRIGGER_NUMERATOR 4
713  #endif
714  
715  /* PLAIN_LIST_LENGTH */
716  #if defined(Map_PLAIN_LIST_LENGTH)
717  #elif defined(Global_MAP_PLAIN_LIST_LENGTH)
718  #  define Map_PLAIN_LIST_LENGTH Global_MAP_PLAIN_LIST_LENGTH
719  #elif defined(Global_ERWIN_PLAIN_LIST_LENGTH)
720  #  define Map_PLAIN_LIST_LENGTH Global_ERWIN_PLAIN_LIST_LENGTH
721  #elif defined(ALL_ERWIN_PLAIN_LIST_LENGTH)
722  #  define Map_PLAIN_LIST_LENGTH ALL_ERWIN_PLAIN_LIST_LENGTH
723  #elif !defined(Map_TRIGGER_NUMERATOR)
724  #elif defined(Map_TRIGGER_DENOMINATOR)
725  #  define Map_PLAIN_LIST_LENGTH (5 * (Map_TRIGGER_NUMERATOR)) / (Map_TRIGGER_DENOMINATOR)
726  #endif
727  
728  /* HASH_RAW */
729  #if defined(Global_iType_HASH_RAW)
730  #elif defined(Global_iType_HASHVAL)
731  #  define Global_iType_HASH_RAW(X) Global_iType_HASHVAL(X)
732  #else
733  #  define Global_iType_HASH_RAW(X) Global_ERWIN_DEFAULT_HASH_RAW(X)
734  #endif
735  
736  /* HASH_RAW */
737  #if defined(Global_oType_HASH_RAW)
738  #elif defined(Global_oType_HASHVAL)
739  #  define Global_oType_HASH_RAW(X) Global_oType_HASHVAL(X)
740  #endif
741  
742  /* HASH */
743  #if defined(Global_iType_HASH)
744  #elif defined(Global_iType_HASH_RAW)
745  #  define Global_iType_HASH(X) Global_hashval_t_hash((Global_iType_HASH_RAW(X)))
746  #endif
747  
748  /* HASH */
749  #if defined(Global_oType_HASH)
750  #elif Map_INDEX_IS_VOID
751  #  define Global_oType_HASH(X) Global_ERWIN_HASH_INIT8
752  #elif defined(Global_oType_HASH_RAW)
753  #  define Global_oType_HASH(X) Global_hashval_t_hash((Global_oType_HASH_RAW(X)))
754  #endif
755  
756  /* CMP */
757  #if defined(Global_iType_CMP_PROVIDED)
758  #elif defined(Global_iType_CMP)
759  #  define Global_iType_CMP_PROVIDED 1
760  #else
761  #  define Global_iType_CMP_PROVIDED 0
762  #endif
763  #if defined(Global_iType_CMP)
764  #elif Global_iType_CMP_PROVIDED
765  #  error "Inconsistency: Global_iType_CMP_PROVIDED is true but Global_iType_CMP is undefined."
766  #endif
767  
768  /* CMP */
769  #if defined(Global_oType_CMP_PROVIDED)
770  #elif Map_INDEX_IS_VOID
771  #  define Global_oType_CMP_PROVIDED 0
772  #  undef Global_oType_CMP
773  #  define Global_oType_CMP(A,B) 0
774  #elif defined(Global_oType_CMP)
775  #  define Global_oType_CMP_PROVIDED 1
776  #else
777  #  define Global_oType_CMP_PROVIDED 0
778  #endif
779  #if defined(Global_oType_CMP)
780  #elif Global_oType_CMP_PROVIDED
781  #  error "Inconsistency: Global_oType_CMP_PROVIDED is true but Global_oType_CMP is undefined."
782  #endif
783  
784  /* DETCMP */
785  #if defined(Global_iType_DETCMP_PROVIDED)
786  #elif defined(Global_iType_DETCMP)
787  #  define Global_iType_DETCMP_PROVIDED 1
788  #else
789  #  if defined(Global_iType_CMP)
790  #    define Global_iType_DETCMP(A,B) Global_iType_CMP(A,B)
791  #  endif
792  #  define Global_iType_DETCMP_PROVIDED 0
793  #endif
794  #if defined(Global_iType_DETCMP)
795  #elif Global_iType_DETCMP_PROVIDED
796  #  error "Inconsistency: Global_iType_DETCMP_PROVIDED is true but Global_iType_DETCMP is undefined."
797  #endif
798  #if defined(Global_iType_DETCMP)
799  #elif !defined(Global_ERWIN_REQUIRE_DETERMINISM)
800  #elif !defined(Global_ERWIN_WEAK_DETERMINISM)
801  #  error "Need Global_iType_DETCMP or Global_iType_CMP when enforcing determinism. Try to #define Global_iType_DETCMP(x,y) false_if_reached_pk(Global_iType_DETCMP) if you think you never invoke it."
802  #endif
803  
804  /* DETCMP */
805  #if defined(Global_oType_DETCMP_PROVIDED)
806  #elif Map_INDEX_IS_VOID
807  #  define Global_oType_DETCMP_PROVIDED 0
808  #  undef Global_oType_DETCMP
809  #  define Global_oType_DETCMP(A,B) 0
810  #elif defined(Global_oType_DETCMP)
811  #  define Global_oType_DETCMP_PROVIDED 1
812  #else
813  #  if defined(Global_oType_CMP)
814  #    define Global_oType_DETCMP(A,B) Global_oType_CMP(A,B)
815  #  endif
816  #  define Global_oType_DETCMP_PROVIDED 0
817  #endif
818  #if defined(Global_oType_DETCMP)
819  #elif Global_oType_DETCMP_PROVIDED
820  #  error "Inconsistency: Global_oType_DETCMP_PROVIDED is true but Global_oType_DETCMP is undefined."
821  #endif
822  #if defined(Global_oType_DETCMP)
823  #elif !defined(Global_ERWIN_REQUIRE_DETERMINISM)
824  #elif !defined(Global_ERWIN_WEAK_DETERMINISM)
825  #  error "Need Global_oType_DETCMP or Global_oType_CMP when enforcing determinism. Try to #define Global_oType_DETCMP(x,y) false_if_reached_pk(Global_oType_DETCMP) if you think you never invoke it."
826  #endif
827  
828  /* EQUAL */
829  #if defined(Global_iType_EQUAL_PROVIDED)
830  #elif defined(Global_iType_EQUAL)
831  #  define Global_iType_EQUAL_PROVIDED 1
832  #else
833  #  if !Global_iType_CMP_PROVIDED
834  #    define Global_iType_EQUAL(A,B) (A) == (B)
835  #  elif defined(Global_iType_CMP)
836  #    define Global_iType_EQUAL(A,B) (Global_iType_CMP(A,B)) == 0
837  #  endif
838  #  define Global_iType_EQUAL_PROVIDED 0
839  #endif
840  #if defined(Global_iType_EQUAL)
841  #elif Global_iType_EQUAL_PROVIDED
842  #  error "Inconsistency: Global_iType_EQUAL_PROVIDED is true but Global_iType_EQUAL is undefined."
843  #endif
844  
845  /* EQUAL */
846  
847  /* ICOPY */
848  #if defined(Global_iType_ICOPY_PROVIDED)
849  #elif defined(Global_iType_ICOPY)
850  #  define Global_iType_ICOPY_PROVIDED 1
851  #elif defined(Global_iType_COPY)
852  #  define Global_iType_ICOPY_PROVIDED 1
853  #  define Global_iType_ICOPY(TO_BE_COPIED,ERR_P) Global_iType_COPY(TO_BE_COPIED,ERR_P)
854  #else
855  #  define Global_iType_ICOPY(TO_BE_COPIED,ERR_P) TO_BE_COPIED
856  #  define Global_iType_ICOPY_PROVIDED 0
857  #endif
858  #if defined(Global_iType_ICOPY)
859  #elif Global_iType_ICOPY_PROVIDED
860  #  error "Inconsistency: Global_iType_ICOPY_PROVIDED is true but Global_iType_ICOPY is undefined."
861  #endif
862  
863  /* IFREE */
864  #if defined(Global_iType_IFREE_PROVIDED)
865  #elif defined(Global_iType_IFREE)
866  #  define Global_iType_IFREE_PROVIDED 1
867  #elif defined(Global_iType_FREE)
868  #  define Global_iType_IFREE_PROVIDED 1
869  #  define Global_iType_IFREE(TO_BE_DESTROYED) Global_iType_FREE(TO_BE_DESTROYED)
870  #else
871  #  define Global_iType_IFREE(TO_BE_DESTROYED)
872  #  define Global_iType_IFREE_PROVIDED 0
873  #endif
874  #if defined(Global_iType_IFREE)
875  #elif Global_iType_IFREE_PROVIDED
876  #  error "Inconsistency: Global_iType_IFREE_PROVIDED is true but Global_iType_IFREE is undefined."
877  #endif
878  
879  /* ZERO */
880  #if !defined(Global_iType_ZERO)
881  #  define Global_iType_ZERO (iTypeTouched)0
882  #endif
883  
884  /* OCOPY */
885  #if defined(Global_oType_OCOPY_PROVIDED)
886  #elif Map_INDEX_IS_VOID
887  #  define Global_oType_OCOPY_PROVIDED 0
888  #  undef Global_oType_OCOPY
889  #  define Global_oType_OCOPY(TO_BE_COPIED,ERR_P) TO_BE_COPIED
890  #  undef Global_oType_COPY
891  #elif defined(Global_oType_OCOPY)
892  #  define Global_oType_OCOPY_PROVIDED 1
893  #elif defined(Global_oType_COPY)
894  #  define Global_oType_OCOPY_PROVIDED 1
895  #  define Global_oType_OCOPY(TO_BE_COPIED,ERR_P) Global_oType_COPY(TO_BE_COPIED,ERR_P)
896  #else
897  #  define Global_oType_OCOPY(TO_BE_COPIED,ERR_P) TO_BE_COPIED
898  #  define Global_oType_OCOPY_PROVIDED 0
899  #endif
900  #if defined(Global_oType_OCOPY)
901  #elif Global_oType_OCOPY_PROVIDED
902  #  error "Inconsistency: Global_oType_OCOPY_PROVIDED is true but Global_oType_OCOPY is undefined."
903  #endif
904  
905  /* OFREE */
906  #if defined(Global_oType_OFREE_PROVIDED)
907  #elif Map_INDEX_IS_VOID
908  #  define Global_oType_OFREE_PROVIDED 0
909  #  undef Global_oType_OFREE
910  #  define Global_oType_OFREE(TO_BE_DESTROYED)
911  #  undef Global_oType_FREE
912  #elif defined(Global_oType_OFREE)
913  #  define Global_oType_OFREE_PROVIDED 1
914  #elif defined(Global_oType_FREE)
915  #  define Global_oType_OFREE_PROVIDED 1
916  #  define Global_oType_OFREE(TO_BE_DESTROYED) Global_oType_FREE(TO_BE_DESTROYED)
917  #else
918  #  define Global_oType_OFREE(TO_BE_DESTROYED)
919  #  define Global_oType_OFREE_PROVIDED 0
920  #endif
921  #if defined(Global_oType_OFREE)
922  #elif Global_oType_OFREE_PROVIDED
923  #  error "Inconsistency: Global_oType_OFREE_PROVIDED is true but Global_oType_OFREE is undefined."
924  #endif
925  
926  /* ZERO */
927  #if defined(Global_oType_ZERO)
928  #elif Map_INDEX_IS_VOID
929  #  define Global_oType_ZERO (oTypeResult)0
930  #else
931  #  define Global_oType_ZERO (oTypeTouched)0
932  #endif
933  
934  /* ENSURE_VALUE */
935  #if defined(Map_ENSURE_VALUE)
936  #elif defined(Global_oType_ENSURE_VALUE)
937  #  define Map_ENSURE_VALUE(SELF,KEY,COPY_ERR) Global_oType_ENSURE_VALUE(COPY_ERR)
938  #elif defined(Global_MAP_ENSURE_VALUE)
939  #  define Map_ENSURE_VALUE(SELF,KEY,COPY_ERR) Global_MAP_ENSURE_VALUE(SELF,KEY,COPY_ERR)
940  #elif defined(Global_ERWIN_ENSURE_VALUE)
941  #  define Map_ENSURE_VALUE(SELF,KEY,COPY_ERR) Global_ERWIN_ENSURE_VALUE(SELF,KEY,COPY_ERR)
942  #elif defined(ALL_ERWIN_ENSURE_VALUE)
943  #  define Map_ENSURE_VALUE(SELF,KEY,COPY_ERR) ALL_ERWIN_ENSURE_VALUE(SELF,KEY,COPY_ERR)
944  #elif defined(Global_oType_OCOPY)
945  #  define Map_ENSURE_VALUE(SELF,KEY,COPY_ERR) Global_oType_OCOPY((ZERO(SELF)),COPY_ERR)
946  #endif
947  
948  #endif /* Map_IMPLEMENTATION */
949  #endif /* !defined(ERWIN_Map_D_ErwinHExt) */

Index

Stoppt die Vorratsdatenspeicherung
November 26th, 2007
Comments? Suggestions? Corrections? You can drop me a line.
zpentrabvagiktu@theiling.de
Schwerpunktpraxis