]> git.wh0rd.org - ICEs.git/blob - 395151/addr.i
more
[ICEs.git] / 395151 / addr.i
1 # 1 "Address.cpp"
2 # 1 "<built-in>"
3 #define __STDC__ 1
4 #define __cplusplus 1
5 #define __STDC_HOSTED__ 1
6 #define __GNUC__ 4
7 #define __GNUC_MINOR__ 5
8 #define __GNUC_PATCHLEVEL__ 3
9 #define __GNUG__ 4
10 #define __SIZE_TYPE__ long unsigned int
11 #define __PTRDIFF_TYPE__ long int
12 #define __WCHAR_TYPE__ int
13 #define __WINT_TYPE__ unsigned int
14 #define __INTMAX_TYPE__ long int
15 #define __UINTMAX_TYPE__ long unsigned int
16 #define __CHAR16_TYPE__ short unsigned int
17 #define __CHAR32_TYPE__ unsigned int
18 #define __SIG_ATOMIC_TYPE__ int
19 #define __INT8_TYPE__ signed char
20 #define __INT16_TYPE__ short int
21 #define __INT32_TYPE__ int
22 #define __INT64_TYPE__ long int
23 #define __UINT8_TYPE__ unsigned char
24 #define __UINT16_TYPE__ short unsigned int
25 #define __UINT32_TYPE__ unsigned int
26 #define __UINT64_TYPE__ long unsigned int
27 #define __INT_LEAST8_TYPE__ signed char
28 #define __INT_LEAST16_TYPE__ short int
29 #define __INT_LEAST32_TYPE__ int
30 #define __INT_LEAST64_TYPE__ long int
31 #define __UINT_LEAST8_TYPE__ unsigned char
32 #define __UINT_LEAST16_TYPE__ short unsigned int
33 #define __UINT_LEAST32_TYPE__ unsigned int
34 #define __UINT_LEAST64_TYPE__ long unsigned int
35 #define __INT_FAST8_TYPE__ signed char
36 #define __INT_FAST16_TYPE__ long int
37 #define __INT_FAST32_TYPE__ long int
38 #define __INT_FAST64_TYPE__ long int
39 #define __UINT_FAST8_TYPE__ unsigned char
40 #define __UINT_FAST16_TYPE__ long unsigned int
41 #define __UINT_FAST32_TYPE__ long unsigned int
42 #define __UINT_FAST64_TYPE__ long unsigned int
43 #define __INTPTR_TYPE__ long int
44 #define __UINTPTR_TYPE__ long unsigned int
45 #define __GXX_WEAK__ 1
46 #define __DEPRECATED 1
47 #define __GXX_RTTI 1
48 #define __EXCEPTIONS 1
49 #define __GXX_ABI_VERSION 1002
50 #define __SCHAR_MAX__ 127
51 #define __SHRT_MAX__ 32767
52 #define __INT_MAX__ 2147483647
53 #define __LONG_MAX__ 9223372036854775807L
54 #define __LONG_LONG_MAX__ 9223372036854775807LL
55 #define __WCHAR_MAX__ 2147483647
56 #define __WCHAR_MIN__ (-__WCHAR_MAX__ - 1)
57 #define __WINT_MAX__ 4294967295U
58 #define __WINT_MIN__ 0U
59 #define __PTRDIFF_MAX__ 9223372036854775807L
60 #define __SIZE_MAX__ 18446744073709551615UL
61 #define __CHAR_BIT__ 8
62 #define __INTMAX_MAX__ 9223372036854775807L
63 #define __INTMAX_C(c) c ## L
64 #define __UINTMAX_MAX__ 18446744073709551615UL
65 #define __UINTMAX_C(c) c ## UL
66 #define __SIG_ATOMIC_MAX__ 2147483647
67 #define __SIG_ATOMIC_MIN__ (-__SIG_ATOMIC_MAX__ - 1)
68 #define __INT8_MAX__ 127
69 #define __INT16_MAX__ 32767
70 #define __INT32_MAX__ 2147483647
71 #define __INT64_MAX__ 9223372036854775807L
72 #define __UINT8_MAX__ 255
73 #define __UINT16_MAX__ 65535
74 #define __UINT32_MAX__ 4294967295U
75 #define __UINT64_MAX__ 18446744073709551615UL
76 #define __INT_LEAST8_MAX__ 127
77 #define __INT8_C(c) c
78 #define __INT_LEAST16_MAX__ 32767
79 #define __INT16_C(c) c
80 #define __INT_LEAST32_MAX__ 2147483647
81 #define __INT32_C(c) c
82 #define __INT_LEAST64_MAX__ 9223372036854775807L
83 #define __INT64_C(c) c ## L
84 #define __UINT_LEAST8_MAX__ 255
85 #define __UINT8_C(c) c
86 #define __UINT_LEAST16_MAX__ 65535
87 #define __UINT16_C(c) c
88 #define __UINT_LEAST32_MAX__ 4294967295U
89 #define __UINT32_C(c) c ## U
90 #define __UINT_LEAST64_MAX__ 18446744073709551615UL
91 #define __UINT64_C(c) c ## UL
92 #define __INT_FAST8_MAX__ 127
93 #define __INT_FAST16_MAX__ 9223372036854775807L
94 #define __INT_FAST32_MAX__ 9223372036854775807L
95 #define __INT_FAST64_MAX__ 9223372036854775807L
96 #define __UINT_FAST8_MAX__ 255
97 #define __UINT_FAST16_MAX__ 18446744073709551615UL
98 #define __UINT_FAST32_MAX__ 18446744073709551615UL
99 #define __UINT_FAST64_MAX__ 18446744073709551615UL
100 #define __INTPTR_MAX__ 9223372036854775807L
101 #define __UINTPTR_MAX__ 18446744073709551615UL
102 #define __FLT_EVAL_METHOD__ 0
103 #define __DEC_EVAL_METHOD__ 2
104 #define __FLT_RADIX__ 2
105 #define __FLT_MANT_DIG__ 24
106 #define __FLT_DIG__ 6
107 #define __FLT_MIN_EXP__ (-125)
108 #define __FLT_MIN_10_EXP__ (-37)
109 #define __FLT_MAX_EXP__ 128
110 #define __FLT_MAX_10_EXP__ 38
111 #define __FLT_MAX__ 3.40282346638528859812e+38F
112 #define __FLT_MIN__ 1.17549435082228750797e-38F
113 #define __FLT_EPSILON__ 1.19209289550781250000e-7F
114 #define __FLT_DENORM_MIN__ 1.40129846432481707092e-45F
115 #define __FLT_HAS_DENORM__ 1
116 #define __FLT_HAS_INFINITY__ 1
117 #define __FLT_HAS_QUIET_NAN__ 1
118 #define __DBL_MANT_DIG__ 53
119 #define __DBL_DIG__ 15
120 #define __DBL_MIN_EXP__ (-1021)
121 #define __DBL_MIN_10_EXP__ (-307)
122 #define __DBL_MAX_EXP__ 1024
123 #define __DBL_MAX_10_EXP__ 308
124 #define __DBL_MAX__ ((double)1.79769313486231570815e+308L)
125 #define __DBL_MIN__ ((double)2.22507385850720138309e-308L)
126 #define __DBL_EPSILON__ ((double)2.22044604925031308085e-16L)
127 #define __DBL_DENORM_MIN__ ((double)4.94065645841246544177e-324L)
128 #define __DBL_HAS_DENORM__ 1
129 #define __DBL_HAS_INFINITY__ 1
130 #define __DBL_HAS_QUIET_NAN__ 1
131 #define __LDBL_MANT_DIG__ 64
132 #define __LDBL_DIG__ 18
133 #define __LDBL_MIN_EXP__ (-16381)
134 #define __LDBL_MIN_10_EXP__ (-4931)
135 #define __LDBL_MAX_EXP__ 16384
136 #define __LDBL_MAX_10_EXP__ 4932
137 #define __DECIMAL_DIG__ 21
138 #define __LDBL_MAX__ 1.18973149535723176502e+4932L
139 #define __LDBL_MIN__ 3.36210314311209350626e-4932L
140 #define __LDBL_EPSILON__ 1.08420217248550443401e-19L
141 #define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
142 #define __LDBL_HAS_DENORM__ 1
143 #define __LDBL_HAS_INFINITY__ 1
144 #define __LDBL_HAS_QUIET_NAN__ 1
145 #define __DEC32_MANT_DIG__ 7
146 #define __DEC32_MIN_EXP__ (-94)
147 #define __DEC32_MAX_EXP__ 97
148 #define __DEC32_MIN__ 1E-95DF
149 #define __DEC32_MAX__ 9.999999E96DF
150 #define __DEC32_EPSILON__ 1E-6DF
151 #define __DEC32_SUBNORMAL_MIN__ 0.000001E-95DF
152 #define __DEC64_MANT_DIG__ 16
153 #define __DEC64_MIN_EXP__ (-382)
154 #define __DEC64_MAX_EXP__ 385
155 #define __DEC64_MIN__ 1E-383DD
156 #define __DEC64_MAX__ 9.999999999999999E384DD
157 #define __DEC64_EPSILON__ 1E-15DD
158 #define __DEC64_SUBNORMAL_MIN__ 0.000000000000001E-383DD
159 #define __DEC128_MANT_DIG__ 34
160 #define __DEC128_MIN_EXP__ (-6142)
161 #define __DEC128_MAX_EXP__ 6145
162 #define __DEC128_MIN__ 1E-6143DL
163 #define __DEC128_MAX__ 9.999999999999999999999999999999999E6144DL
164 #define __DEC128_EPSILON__ 1E-33DL
165 #define __DEC128_SUBNORMAL_MIN__ 0.000000000000000000000000000000001E-6143DL
166 #define __REGISTER_PREFIX__
167 #define __USER_LABEL_PREFIX__
168 #define __VERSION__ "4.5.3"
169 #define __GNUC_GNU_INLINE__ 1
170 #define _LP64 1
171 #define __LP64__ 1
172 #define __OPTIMIZE__ 1
173 #define __FINITE_MATH_ONLY__ 0
174 #define __pic__ 2
175 #define __PIC__ 2
176 #define __GCC_HAVE_SYNC_COMPARE_AND_SWAP_1 1
177 #define __GCC_HAVE_SYNC_COMPARE_AND_SWAP_2 1
178 #define __GCC_HAVE_SYNC_COMPARE_AND_SWAP_4 1
179 #define __GCC_HAVE_SYNC_COMPARE_AND_SWAP_8 1
180 #define __GCC_HAVE_SYNC_COMPARE_AND_SWAP_16 1
181 #define __GCC_HAVE_DWARF2_CFI_ASM 1
182 #define __PRAGMA_REDEFINE_EXTNAME 1
183 #define __SIZEOF_INT__ 4
184 #define __SIZEOF_LONG__ 8
185 #define __SIZEOF_LONG_LONG__ 8
186 #define __SIZEOF_SHORT__ 2
187 #define __SIZEOF_FLOAT__ 4
188 #define __SIZEOF_DOUBLE__ 8
189 #define __SIZEOF_LONG_DOUBLE__ 16
190 #define __SIZEOF_SIZE_T__ 8
191 #define __SIZEOF_WCHAR_T__ 4
192 #define __SIZEOF_WINT_T__ 4
193 #define __SIZEOF_PTRDIFF_T__ 8
194 #define __SIZEOF_POINTER__ 8
195 #define __amd64 1
196 #define __amd64__ 1
197 #define __x86_64 1
198 #define __x86_64__ 1
199 #define __core2 1
200 #define __core2__ 1
201 #define __tune_core2__ 1
202 #define __MMX__ 1
203 #define __SSE__ 1
204 #define __SSE2__ 1
205 #define __SSE3__ 1
206 #define __SSSE3__ 1
207 #define __SSE_MATH__ 1
208 #define __SSE2_MATH__ 1
209 #define __gnu_linux__ 1
210 #define __linux 1
211 #define __linux__ 1
212 #define linux 1
213 #define __unix 1
214 #define __unix__ 1
215 #define unix 1
216 #define __ELF__ 1
217 #define __DECIMAL_BID_FORMAT__ 1
218 #define __BIGGEST_ALIGNMENT__ 16
219 # 1 "<command-line>"
220 #define _GNU_SOURCE 1
221 #define _FORTIFY_SOURCE 2
222 # 1 "Address.cpp"
223 # 27 "Address.cpp"
224 # 1 "/usr/include/assert.h" 1 3 4
225 # 36 "/usr/include/assert.h" 3 4
226 #define _ASSERT_H 1
227 # 1 "/usr/include/features.h" 1 3 4
228 # 21 "/usr/include/features.h" 3 4
229 #define _FEATURES_H 1
230 # 98 "/usr/include/features.h" 3 4
231 #undef __USE_ISOC99
232 #undef __USE_ISOC95
233 #undef __USE_POSIX
234 #undef __USE_POSIX2
235 #undef __USE_POSIX199309
236 #undef __USE_POSIX199506
237 #undef __USE_XOPEN
238 #undef __USE_XOPEN_EXTENDED
239 #undef __USE_UNIX98
240 #undef __USE_XOPEN2K
241 #undef __USE_XOPEN2KXSI
242 #undef __USE_XOPEN2K8
243 #undef __USE_XOPEN2K8XSI
244 #undef __USE_LARGEFILE
245 #undef __USE_LARGEFILE64
246 #undef __USE_FILE_OFFSET64
247 #undef __USE_BSD
248 #undef __USE_SVID
249 #undef __USE_MISC
250 #undef __USE_ATFILE
251 #undef __USE_GNU
252 #undef __USE_REENTRANT
253 #undef __USE_FORTIFY_LEVEL
254 #undef __FAVOR_BSD
255 #undef __KERNEL_STRICT_NAMES
256
257
258
259
260 #define __KERNEL_STRICT_NAMES
261
262
263
264 #define __USE_ANSI 1
265 # 141 "/usr/include/features.h" 3 4
266 #define __GNUC_PREREQ(maj,min) ((__GNUC__ << 16) + __GNUC_MINOR__ >= ((maj) << 16) + (min))
267 # 157 "/usr/include/features.h" 3 4
268 #undef _ISOC95_SOURCE
269 #define _ISOC95_SOURCE 1
270 #undef _ISOC99_SOURCE
271 #define _ISOC99_SOURCE 1
272 #undef _POSIX_SOURCE
273 #define _POSIX_SOURCE 1
274 #undef _POSIX_C_SOURCE
275 #define _POSIX_C_SOURCE 200809L
276 #undef _XOPEN_SOURCE
277 #define _XOPEN_SOURCE 700
278 #undef _XOPEN_SOURCE_EXTENDED
279 #define _XOPEN_SOURCE_EXTENDED 1
280 #undef _LARGEFILE64_SOURCE
281 #define _LARGEFILE64_SOURCE 1
282 #undef _BSD_SOURCE
283 #define _BSD_SOURCE 1
284 #undef _SVID_SOURCE
285 #define _SVID_SOURCE 1
286 #undef _ATFILE_SOURCE
287 #define _ATFILE_SOURCE 1
288 # 194 "/usr/include/features.h" 3 4
289 #define __USE_ISOC99 1
290
291
292
293
294
295 #define __USE_ISOC95 1
296 # 221 "/usr/include/features.h" 3 4
297 #define __USE_POSIX 1
298
299
300
301 #define __USE_POSIX2 1
302
303
304
305 #define __USE_POSIX199309 1
306
307
308
309 #define __USE_POSIX199506 1
310
311
312
313 #define __USE_XOPEN2K 1
314 #undef __USE_ISOC95
315 #define __USE_ISOC95 1
316 #undef __USE_ISOC99
317 #define __USE_ISOC99 1
318
319
320
321 #define __USE_XOPEN2K8 1
322 #undef _ATFILE_SOURCE
323 #define _ATFILE_SOURCE 1
324
325
326
327 #define __USE_XOPEN 1
328
329 #define __USE_XOPEN_EXTENDED 1
330 #define __USE_UNIX98 1
331 #undef _LARGEFILE_SOURCE
332 #define _LARGEFILE_SOURCE 1
333
334
335 #define __USE_XOPEN2K8 1
336 #define __USE_XOPEN2K8XSI 1
337
338 #define __USE_XOPEN2K 1
339 #define __USE_XOPEN2KXSI 1
340 #undef __USE_ISOC95
341 #define __USE_ISOC95 1
342 #undef __USE_ISOC99
343 #define __USE_ISOC99 1
344 # 277 "/usr/include/features.h" 3 4
345 #define __USE_LARGEFILE 1
346
347
348
349 #define __USE_LARGEFILE64 1
350
351
352
353
354
355
356
357 #define __USE_MISC 1
358
359
360
361 #define __USE_BSD 1
362
363
364
365 #define __USE_SVID 1
366
367
368
369 #define __USE_ATFILE 1
370
371
372
373 #define __USE_GNU 1
374 # 315 "/usr/include/features.h" 3 4
375 #define __USE_FORTIFY_LEVEL 2
376 # 324 "/usr/include/features.h" 3 4
377 #define __STDC_IEC_559__ 1
378 #define __STDC_IEC_559_COMPLEX__ 1
379
380
381 #define __STDC_ISO_10646__ 200009L
382
383
384
385
386
387
388
389 #undef __GNU_LIBRARY__
390 #define __GNU_LIBRARY__ 6
391
392
393
394 #define __GLIBC__ 2
395 #define __GLIBC_MINOR__ 14
396
397 #define __GLIBC_PREREQ(maj,min) ((__GLIBC__ << 16) + __GLIBC_MINOR__ >= ((maj) << 16) + (min))
398
399
400
401
402
403
404
405 #define __GLIBC_HAVE_LONG_LONG 1
406
407
408
409
410
411 # 1 "/usr/include/sys/cdefs.h" 1 3 4
412 # 21 "/usr/include/sys/cdefs.h" 3 4
413 #define _SYS_CDEFS_H 1
414 # 36 "/usr/include/sys/cdefs.h" 3 4
415 #undef __P
416 #undef __PMT
417 # 51 "/usr/include/sys/cdefs.h" 3 4
418 #define __THROW throw ()
419 #define __NTH(fct) fct throw ()
420 # 74 "/usr/include/sys/cdefs.h" 3 4
421 #define __P(args) args
422 #define __PMT(args) args
423
424
425
426
427 #define __CONCAT(x,y) x ## y
428 #define __STRING(x) #x
429
430
431 #define __ptr_t void *
432 #define __long_double_t long double
433
434
435
436
437 #define __BEGIN_DECLS extern "C" {
438 #define __END_DECLS }
439 # 114 "/usr/include/sys/cdefs.h" 3 4
440 #define __BEGIN_NAMESPACE_STD
441 #define __END_NAMESPACE_STD
442 #define __USING_NAMESPACE_STD(name)
443 #define __BEGIN_NAMESPACE_C99
444 #define __END_NAMESPACE_C99
445 #define __USING_NAMESPACE_C99(name)
446
447
448
449
450
451 #define __bounded
452 #define __unbounded
453 #define __ptrvalue
454
455
456
457
458 #define __bos(ptr) __builtin_object_size (ptr, __USE_FORTIFY_LEVEL > 1)
459 #define __bos0(ptr) __builtin_object_size (ptr, 0)
460
461
462 #define __warndecl(name,msg) extern void name (void) __attribute__((__warning__ (msg)))
463
464 #define __warnattr(msg) __attribute__((__warning__ (msg)))
465 #define __errordecl(name,msg) extern void name (void) __attribute__((__error__ (msg)))
466 # 150 "/usr/include/sys/cdefs.h" 3 4
467 #define __flexarr []
468 # 177 "/usr/include/sys/cdefs.h" 3 4
469 #define __REDIRECT(name,proto,alias) name proto __asm__ (__ASMNAME (#alias))
470
471 #define __REDIRECT_NTH(name,proto,alias) name proto __THROW __asm__ (__ASMNAME (#alias))
472
473
474
475
476
477 #define __ASMNAME(cname) __ASMNAME2 (__USER_LABEL_PREFIX__, cname)
478 #define __ASMNAME2(prefix,cname) __STRING (prefix) cname
479 # 207 "/usr/include/sys/cdefs.h" 3 4
480 #define __attribute_malloc__ __attribute__ ((__malloc__))
481 # 216 "/usr/include/sys/cdefs.h" 3 4
482 #define __attribute_pure__ __attribute__ ((__pure__))
483 # 225 "/usr/include/sys/cdefs.h" 3 4
484 #define __attribute_used__ __attribute__ ((__used__))
485 #define __attribute_noinline__ __attribute__ ((__noinline__))
486
487
488
489
490
491
492
493 #define __attribute_deprecated__ __attribute__ ((__deprecated__))
494 # 246 "/usr/include/sys/cdefs.h" 3 4
495 #define __attribute_format_arg__(x) __attribute__ ((__format_arg__ (x)))
496 # 256 "/usr/include/sys/cdefs.h" 3 4
497 #define __attribute_format_strfmon__(a,b) __attribute__ ((__format__ (__strfmon__, a, b)))
498 # 265 "/usr/include/sys/cdefs.h" 3 4
499 #define __nonnull(params) __attribute__ ((__nonnull__ params))
500
501
502
503
504
505
506
507 #define __attribute_warn_unused_result__ __attribute__ ((__warn_unused_result__))
508
509
510 #define __wur __attribute_warn_unused_result__
511 # 287 "/usr/include/sys/cdefs.h" 3 4
512 #define __always_inline __inline __attribute__ ((__always_inline__))
513 # 296 "/usr/include/sys/cdefs.h" 3 4
514 #define __extern_inline extern __inline __attribute__ ((__gnu_inline__))
515
516 #define __extern_always_inline extern __always_inline __attribute__ ((__gnu_inline__, __artificial__))
517 # 318 "/usr/include/sys/cdefs.h" 3 4
518 #define __va_arg_pack() __builtin_va_arg_pack ()
519 #define __va_arg_pack_len() __builtin_va_arg_pack_len ()
520 # 342 "/usr/include/sys/cdefs.h" 3 4
521 #define __restrict_arr
522 # 353 "/usr/include/sys/cdefs.h" 3 4
523 # 1 "/usr/include/bits/wordsize.h" 1 3 4
524
525
526
527 #define __WORDSIZE 64
528 #define __WORDSIZE_COMPAT32 1
529 # 354 "/usr/include/sys/cdefs.h" 2 3 4
530 # 375 "/usr/include/sys/cdefs.h" 3 4
531 #define __LDBL_REDIR1(name,proto,alias) name proto
532 #define __LDBL_REDIR(name,proto) name proto
533 #define __LDBL_REDIR1_NTH(name,proto,alias) name proto __THROW
534 #define __LDBL_REDIR_NTH(name,proto) name proto __THROW
535 #define __LDBL_REDIR_DECL(name)
536
537 #define __REDIRECT_LDBL(name,proto,alias) __REDIRECT (name, proto, alias)
538 #define __REDIRECT_NTH_LDBL(name,proto,alias) __REDIRECT_NTH (name, proto, alias)
539 # 359 "/usr/include/features.h" 2 3 4
540 # 374 "/usr/include/features.h" 3 4
541 #define __USE_EXTERN_INLINES 1
542
543
544
545
546
547
548
549 # 1 "/usr/include/gnu/stubs.h" 1 3 4
550
551
552
553 # 1 "/usr/include/bits/wordsize.h" 1 3 4
554
555
556
557 #define __WORDSIZE 64
558 #define __WORDSIZE_COMPAT32 1
559 # 5 "/usr/include/gnu/stubs.h" 2 3 4
560
561
562
563
564 # 1 "/usr/include/gnu/stubs-64.h" 1 3 4
565 # 10 "/usr/include/gnu/stubs-64.h" 3 4
566 #define __stub_bdflush
567 #define __stub_chflags
568 #define __stub_fattach
569 #define __stub_fchflags
570 #define __stub_fdetach
571 #define __stub_getmsg
572 #define __stub_gtty
573 #define __stub_lchmod
574 #define __stub_putmsg
575 #define __stub_revoke
576 #define __stub_setlogin
577 #define __stub_sigreturn
578 #define __stub_sstk
579 #define __stub_stty
580 # 10 "/usr/include/gnu/stubs.h" 2 3 4
581 # 383 "/usr/include/features.h" 2 3 4
582 # 38 "/usr/include/assert.h" 2 3 4
583
584
585 #define __ASSERT_VOID_CAST static_cast<void>
586 # 66 "/usr/include/assert.h" 3 4
587 extern "C" {
588
589
590 extern void __assert_fail (__const char *__assertion, __const char *__file,
591 unsigned int __line, __const char *__function)
592 throw () __attribute__ ((__noreturn__));
593
594
595 extern void __assert_perror_fail (int __errnum, __const char *__file,
596 unsigned int __line,
597 __const char *__function)
598 throw () __attribute__ ((__noreturn__));
599
600
601
602
603 extern void __assert (const char *__assertion, const char *__file, int __line)
604 throw () __attribute__ ((__noreturn__));
605
606
607 }
608
609 #define assert(expr) ((expr) ? __ASSERT_VOID_CAST (0) : __assert_fail (__STRING(expr), __FILE__, __LINE__, __ASSERT_FUNCTION))
610
611
612
613
614
615 #define assert_perror(errnum) (!(errnum) ? __ASSERT_VOID_CAST (0) : __assert_perror_fail ((errnum), __FILE__, __LINE__, __ASSERT_FUNCTION))
616 # 106 "/usr/include/assert.h" 3 4
617 #define __ASSERT_FUNCTION __PRETTY_FUNCTION__
618 # 28 "Address.cpp" 2
619 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/iostream" 1 3
620 # 35 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/iostream" 3
621 #define _GLIBCXX_IOSTREAM 1
622
623
624 # 38 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/iostream" 3
625
626 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/x86_64-pc-linux-gnu/bits/c++config.h" 1 3
627 # 32 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/x86_64-pc-linux-gnu/bits/c++config.h" 3
628 #define _GLIBCXX_CXX_CONFIG_H 1
629
630
631 #define __GLIBCXX__ 20110428
632
633
634
635
636 #define _GLIBCXX_HAVE_ATTRIBUTE_VISIBILITY 1
637
638
639 #define _GLIBCXX_VISIBILITY_ATTR(V) __attribute__ ((__visibility__ (#V)))
640 # 54 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/x86_64-pc-linux-gnu/bits/c++config.h" 3
641 #define _GLIBCXX_DEPRECATED 1
642
643
644
645
646
647 #define _GLIBCXX_DEPRECATED_ATTR
648 # 95 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/x86_64-pc-linux-gnu/bits/c++config.h" 3
649 #define _GLIBCXX_NAMESPACE_ASSOCIATION_VERSION 0
650 # 117 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/x86_64-pc-linux-gnu/bits/c++config.h" 3
651 #define _GLIBCXX_STD_D _GLIBCXX_STD
652 #define _GLIBCXX_STD_P _GLIBCXX_STD
653 #define _GLIBCXX_STD_PR _GLIBCXX_STD
654 #define _GLIBCXX_STD std
655 #define _GLIBCXX_BEGIN_NESTED_NAMESPACE(X,Y) _GLIBCXX_BEGIN_NAMESPACE(X)
656 #define _GLIBCXX_END_NESTED_NAMESPACE _GLIBCXX_END_NAMESPACE
657 #define _GLIBCXX_BEGIN_NAMESPACE(X) namespace X _GLIBCXX_VISIBILITY_ATTR(default) {
658 #define _GLIBCXX_END_NAMESPACE }
659 # 240 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/x86_64-pc-linux-gnu/bits/c++config.h" 3
660 #undef _GLIBCXX_LONG_DOUBLE_COMPAT
661 # 252 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/x86_64-pc-linux-gnu/bits/c++config.h" 3
662 #define _GLIBCXX_LDBL_NAMESPACE
663 #define _GLIBCXX_BEGIN_LDBL_NAMESPACE
664 #define _GLIBCXX_END_LDBL_NAMESPACE
665
666
667
668
669
670 #define _GLIBCXX_BEGIN_EXTERN_C extern "C" {
671 #define _GLIBCXX_END_EXTERN_C }
672 # 275 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/x86_64-pc-linux-gnu/bits/c++config.h" 3
673 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/x86_64-pc-linux-gnu/bits/os_defines.h" 1 3
674 # 31 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/x86_64-pc-linux-gnu/bits/os_defines.h" 3
675 #define _GLIBCXX_OS_DEFINES 1
676
677
678
679
680
681 #define __NO_CTYPE 1
682 # 276 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/x86_64-pc-linux-gnu/bits/c++config.h" 2 3
683
684
685 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/x86_64-pc-linux-gnu/bits/cpu_defines.h" 1 3
686 # 31 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/x86_64-pc-linux-gnu/bits/cpu_defines.h" 3
687 #define _GLIBCXX_CPU_DEFINES 1
688 # 279 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/x86_64-pc-linux-gnu/bits/c++config.h" 2 3
689
690
691
692
693 #define _GLIBCXX_PSEUDO_VISIBILITY(V)
694 # 301 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/x86_64-pc-linux-gnu/bits/c++config.h" 3
695 #define _GLIBCXX_EXTERN_TEMPLATE 1
696
697
698
699
700
701
702 #define _GLIBCXX_WEAK_DEFINITION
703
704
705
706
707
708
709 #define __glibcxx_assert(_Condition)
710 # 346 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/x86_64-pc-linux-gnu/bits/c++config.h" 3
711 #define _GLIBCXX_FAST_MATH 0
712
713
714
715
716
717
718 #define __N(msgid) (msgid)
719
720
721 #undef min
722 #undef max
723
724
725 #define _GLIBCXX_PURE __attribute__ ((__pure__))
726
727
728
729 #define _GLIBCXX_CONST __attribute__ ((__const__))
730
731
732
733 #define _GLIBCXX_NORETURN __attribute__ ((__noreturn__))
734
735
736
737
738 #define _GLIBCXX_NOTHROW throw()
739 # 384 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/x86_64-pc-linux-gnu/bits/c++config.h" 3
740 #define _GLIBCXX_HAVE_ACOSF 1
741
742
743 #define _GLIBCXX_HAVE_ACOSL 1
744
745
746 #define _GLIBCXX_HAVE_ASINF 1
747
748
749 #define _GLIBCXX_HAVE_ASINL 1
750
751
752 #define _GLIBCXX_HAVE_AS_SYMVER_DIRECTIVE 1
753
754
755 #define _GLIBCXX_HAVE_ATAN2F 1
756
757
758 #define _GLIBCXX_HAVE_ATAN2L 1
759
760
761 #define _GLIBCXX_HAVE_ATANF 1
762
763
764 #define _GLIBCXX_HAVE_ATANL 1
765
766
767
768
769
770 #define _GLIBCXX_HAVE_CEILF 1
771
772
773 #define _GLIBCXX_HAVE_CEILL 1
774
775
776 #define _GLIBCXX_HAVE_COMPLEX_H 1
777
778
779 #define _GLIBCXX_HAVE_COSF 1
780
781
782 #define _GLIBCXX_HAVE_COSHF 1
783
784
785 #define _GLIBCXX_HAVE_COSHL 1
786
787
788 #define _GLIBCXX_HAVE_COSL 1
789
790
791 #define _GLIBCXX_HAVE_DLFCN_H 1
792
793
794 #define _GLIBCXX_HAVE_EBADMSG 1
795
796
797 #define _GLIBCXX_HAVE_ECANCELED 1
798
799
800 #define _GLIBCXX_HAVE_EIDRM 1
801
802
803 #define _GLIBCXX_HAVE_ENDIAN_H 1
804
805
806 #define _GLIBCXX_HAVE_ENODATA 1
807
808
809 #define _GLIBCXX_HAVE_ENOLINK 1
810
811
812 #define _GLIBCXX_HAVE_ENOSR 1
813
814
815 #define _GLIBCXX_HAVE_ENOSTR 1
816
817
818 #define _GLIBCXX_HAVE_ENOTRECOVERABLE 1
819
820
821 #define _GLIBCXX_HAVE_ENOTSUP 1
822
823
824 #define _GLIBCXX_HAVE_EOVERFLOW 1
825
826
827 #define _GLIBCXX_HAVE_EOWNERDEAD 1
828
829
830 #define _GLIBCXX_HAVE_EPROTO 1
831
832
833 #define _GLIBCXX_HAVE_ETIME 1
834
835
836 #define _GLIBCXX_HAVE_ETXTBSY 1
837
838
839 #define _GLIBCXX_HAVE_EXECINFO_H 1
840
841
842 #define _GLIBCXX_HAVE_EXPF 1
843
844
845 #define _GLIBCXX_HAVE_EXPL 1
846
847
848 #define _GLIBCXX_HAVE_FABSF 1
849
850
851 #define _GLIBCXX_HAVE_FABSL 1
852
853
854 #define _GLIBCXX_HAVE_FENV_H 1
855
856
857 #define _GLIBCXX_HAVE_FINITE 1
858
859
860 #define _GLIBCXX_HAVE_FINITEF 1
861
862
863 #define _GLIBCXX_HAVE_FINITEL 1
864
865
866 #define _GLIBCXX_HAVE_FLOAT_H 1
867
868
869 #define _GLIBCXX_HAVE_FLOORF 1
870
871
872 #define _GLIBCXX_HAVE_FLOORL 1
873
874
875 #define _GLIBCXX_HAVE_FMODF 1
876
877
878 #define _GLIBCXX_HAVE_FMODL 1
879 # 531 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/x86_64-pc-linux-gnu/bits/c++config.h" 3
880 #define _GLIBCXX_HAVE_FREXPF 1
881
882
883 #define _GLIBCXX_HAVE_FREXPL 1
884
885
886 #define _GLIBCXX_HAVE_GETIPINFO 1
887
888
889
890 #define _GLIBCXX_HAVE_GTHR_DEFAULT 1
891
892
893 #define _GLIBCXX_HAVE_HYPOT 1
894
895
896 #define _GLIBCXX_HAVE_HYPOTF 1
897
898
899 #define _GLIBCXX_HAVE_HYPOTL 1
900
901
902 #define _GLIBCXX_HAVE_ICONV 1
903
904
905
906
907
908 #define _GLIBCXX_HAVE_INT64_T 1
909
910
911 #define _GLIBCXX_HAVE_INT64_T_LONG 1
912
913
914
915
916
917 #define _GLIBCXX_HAVE_INTTYPES_H 1
918
919
920 #define _GLIBCXX_HAVE_ISINF 1
921
922
923 #define _GLIBCXX_HAVE_ISINFF 1
924
925
926 #define _GLIBCXX_HAVE_ISINFL 1
927
928
929 #define _GLIBCXX_HAVE_ISNAN 1
930
931
932 #define _GLIBCXX_HAVE_ISNANF 1
933
934
935 #define _GLIBCXX_HAVE_ISNANL 1
936
937
938 #define _GLIBCXX_HAVE_ISWBLANK 1
939
940
941 #define _GLIBCXX_HAVE_LC_MESSAGES 1
942
943
944 #define _GLIBCXX_HAVE_LDEXPF 1
945
946
947 #define _GLIBCXX_HAVE_LDEXPL 1
948
949
950 #define _GLIBCXX_HAVE_LIBINTL_H 1
951
952
953 #define _GLIBCXX_HAVE_LIMIT_AS 1
954
955
956 #define _GLIBCXX_HAVE_LIMIT_DATA 1
957
958
959 #define _GLIBCXX_HAVE_LIMIT_FSIZE 1
960
961
962 #define _GLIBCXX_HAVE_LIMIT_RSS 1
963
964
965 #define _GLIBCXX_HAVE_LIMIT_VMEM 0
966
967
968 #define _GLIBCXX_HAVE_LINUX_FUTEX 1
969
970
971 #define _GLIBCXX_HAVE_LOCALE_H 1
972
973
974 #define _GLIBCXX_HAVE_LOG10F 1
975
976
977 #define _GLIBCXX_HAVE_LOG10L 1
978
979
980 #define _GLIBCXX_HAVE_LOGF 1
981
982
983 #define _GLIBCXX_HAVE_LOGL 1
984 # 643 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/x86_64-pc-linux-gnu/bits/c++config.h" 3
985 #define _GLIBCXX_HAVE_MBSTATE_T 1
986
987
988 #define _GLIBCXX_HAVE_MEMORY_H 1
989
990
991 #define _GLIBCXX_HAVE_MODF 1
992
993
994 #define _GLIBCXX_HAVE_MODFF 1
995
996
997 #define _GLIBCXX_HAVE_MODFL 1
998
999
1000
1001
1002
1003 #define _GLIBCXX_HAVE_POLL 1
1004
1005
1006 #define _GLIBCXX_HAVE_POWF 1
1007
1008
1009 #define _GLIBCXX_HAVE_POWL 1
1010
1011
1012
1013
1014
1015 #define _GLIBCXX_HAVE_SETENV 1
1016
1017
1018 #define _GLIBCXX_HAVE_SINCOS 1
1019
1020
1021 #define _GLIBCXX_HAVE_SINCOSF 1
1022
1023
1024 #define _GLIBCXX_HAVE_SINCOSL 1
1025
1026
1027 #define _GLIBCXX_HAVE_SINF 1
1028
1029
1030 #define _GLIBCXX_HAVE_SINHF 1
1031
1032
1033 #define _GLIBCXX_HAVE_SINHL 1
1034
1035
1036 #define _GLIBCXX_HAVE_SINL 1
1037
1038
1039 #define _GLIBCXX_HAVE_SQRTF 1
1040
1041
1042 #define _GLIBCXX_HAVE_SQRTL 1
1043
1044
1045 #define _GLIBCXX_HAVE_STDBOOL_H 1
1046
1047
1048 #define _GLIBCXX_HAVE_STDINT_H 1
1049
1050
1051 #define _GLIBCXX_HAVE_STDLIB_H 1
1052
1053
1054 #define _GLIBCXX_HAVE_STRERROR_L 1
1055
1056
1057 #define _GLIBCXX_HAVE_STRERROR_R 1
1058
1059
1060 #define _GLIBCXX_HAVE_STRINGS_H 1
1061
1062
1063 #define _GLIBCXX_HAVE_STRING_H 1
1064
1065
1066 #define _GLIBCXX_HAVE_STRTOF 1
1067
1068
1069 #define _GLIBCXX_HAVE_STRTOLD 1
1070
1071
1072 #define _GLIBCXX_HAVE_STRXFRM_L 1
1073
1074
1075
1076
1077
1078 #define _GLIBCXX_HAVE_SYS_IOCTL_H 1
1079
1080
1081 #define _GLIBCXX_HAVE_SYS_IPC_H 1
1082 # 748 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/x86_64-pc-linux-gnu/bits/c++config.h" 3
1083 #define _GLIBCXX_HAVE_SYS_PARAM_H 1
1084
1085
1086 #define _GLIBCXX_HAVE_SYS_RESOURCE_H 1
1087
1088
1089 #define _GLIBCXX_HAVE_SYS_SEM_H 1
1090
1091
1092 #define _GLIBCXX_HAVE_SYS_STAT_H 1
1093
1094
1095 #define _GLIBCXX_HAVE_SYS_TIME_H 1
1096
1097
1098 #define _GLIBCXX_HAVE_SYS_TYPES_H 1
1099
1100
1101 #define _GLIBCXX_HAVE_SYS_UIO_H 1
1102
1103
1104
1105
1106
1107 #define _GLIBCXX_HAVE_S_ISREG 1
1108
1109
1110 #define _GLIBCXX_HAVE_TANF 1
1111
1112
1113 #define _GLIBCXX_HAVE_TANHF 1
1114
1115
1116 #define _GLIBCXX_HAVE_TANHL 1
1117
1118
1119 #define _GLIBCXX_HAVE_TANL 1
1120
1121
1122 #define _GLIBCXX_HAVE_TGMATH_H 1
1123
1124
1125 #define _GLIBCXX_HAVE_TLS 1
1126
1127
1128 #define _GLIBCXX_HAVE_UNISTD_H 1
1129
1130
1131 #define _GLIBCXX_HAVE_VFWSCANF 1
1132
1133
1134 #define _GLIBCXX_HAVE_VSWSCANF 1
1135
1136
1137 #define _GLIBCXX_HAVE_VWSCANF 1
1138
1139
1140 #define _GLIBCXX_HAVE_WCHAR_H 1
1141
1142
1143 #define _GLIBCXX_HAVE_WCSTOF 1
1144
1145
1146 #define _GLIBCXX_HAVE_WCTYPE_H 1
1147
1148
1149 #define _GLIBCXX_HAVE_WRITEV 1
1150 # 1003 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/x86_64-pc-linux-gnu/bits/c++config.h" 3
1151 #define _GLIBCXX_ICONV_CONST
1152
1153
1154
1155 #define LT_OBJDIR ".libs/"
1156
1157
1158
1159
1160
1161 #define _GLIBCXX_PACKAGE_BUGREPORT ""
1162
1163
1164 #define _GLIBCXX_PACKAGE_NAME "package-unused"
1165
1166
1167 #define _GLIBCXX_PACKAGE_STRING "package-unused version-unused"
1168
1169
1170 #define _GLIBCXX_PACKAGE_TARNAME "libstdc++"
1171
1172
1173 #define _GLIBCXX_PACKAGE_URL ""
1174
1175
1176 #define _GLIBCXX_PACKAGE__GLIBCXX_VERSION "version-unused"
1177 # 1046 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/x86_64-pc-linux-gnu/bits/c++config.h" 3
1178 #define STDC_HEADERS 1
1179
1180
1181
1182
1183
1184 #define _GLIBCXX_ATOMIC_BUILTINS_1 1
1185
1186
1187
1188 #define _GLIBCXX_ATOMIC_BUILTINS_2 1
1189
1190
1191 #define _GLIBCXX_ATOMIC_BUILTINS_4 1
1192
1193
1194
1195 #define _GLIBCXX_ATOMIC_BUILTINS_8 1
1196 # 1072 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/x86_64-pc-linux-gnu/bits/c++config.h" 3
1197 #define _GLIBCXX_HAS_GTHREADS 1
1198
1199
1200 #define _GLIBCXX_HOSTED 1
1201
1202
1203
1204
1205
1206
1207
1208 #define _GLIBCXX_RES_LIMITS 1
1209 # 1092 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/x86_64-pc-linux-gnu/bits/c++config.h" 3
1210 #define _GLIBCXX_STDIO_MACROS 1
1211
1212
1213 #define _GLIBCXX_SYMVER 1
1214
1215
1216
1217
1218
1219 #define _GLIBCXX_SYMVER_GNU 1
1220
1221
1222
1223
1224
1225
1226 #define _GLIBCXX_USE_C99 1
1227
1228
1229
1230
1231 #define _GLIBCXX_USE_C99_COMPLEX 1
1232
1233
1234
1235
1236 #define _GLIBCXX_USE_C99_COMPLEX_TR1 1
1237
1238
1239
1240 #define _GLIBCXX_USE_C99_CTYPE_TR1 1
1241
1242
1243
1244 #define _GLIBCXX_USE_C99_FENV_TR1 1
1245
1246
1247
1248 #define _GLIBCXX_USE_C99_INTTYPES_TR1 1
1249
1250
1251
1252 #define _GLIBCXX_USE_C99_INTTYPES_WCHAR_T_TR1 1
1253
1254
1255
1256 #define _GLIBCXX_USE_C99_MATH 1
1257
1258
1259
1260 #define _GLIBCXX_USE_C99_MATH_TR1 1
1261
1262
1263
1264 #define _GLIBCXX_USE_C99_STDINT_TR1 1
1265 # 1156 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/x86_64-pc-linux-gnu/bits/c++config.h" 3
1266 #define _GLIBCXX_USE_DECIMAL_FLOAT 1
1267
1268
1269 #define _GLIBCXX_USE_GETTIMEOFDAY 1
1270
1271
1272 #define _GLIBCXX_USE_LFS 1
1273
1274
1275 #define _GLIBCXX_USE_LONG_LONG 1
1276
1277
1278
1279
1280
1281 #define _GLIBCXX_USE_NLS 1
1282
1283
1284
1285 #define _GLIBCXX_USE_RANDOM_TR1 1
1286
1287
1288
1289
1290
1291 #define _GLIBCXX_USE_WCHAR_T 1
1292 # 40 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/iostream" 2 3
1293 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/ostream" 1 3
1294 # 36 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/ostream" 3
1295 #define _GLIBCXX_OSTREAM 1
1296
1297
1298 # 39 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/ostream" 3
1299
1300 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/ios" 1 3
1301 # 35 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/ios" 3
1302 #define _GLIBCXX_IOS 1
1303
1304
1305 # 38 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/ios" 3
1306
1307 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/iosfwd" 1 3
1308 # 36 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/iosfwd" 3
1309 #define _GLIBCXX_IOSFWD 1
1310
1311
1312 # 39 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/iosfwd" 3
1313
1314
1315 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stringfwd.h" 1 3
1316 # 37 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stringfwd.h" 3
1317 #define _STRINGFWD_H 1
1318
1319
1320 # 40 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stringfwd.h" 3
1321
1322
1323
1324 namespace std __attribute__ ((__visibility__ ("default"))) {
1325
1326 template<typename _Alloc>
1327 class allocator;
1328
1329
1330
1331
1332
1333
1334
1335 template<class _CharT>
1336 struct char_traits;
1337
1338 template<typename _CharT, typename _Traits = char_traits<_CharT>,
1339 typename _Alloc = allocator<_CharT> >
1340 class basic_string;
1341
1342 template<> struct char_traits<char>;
1343
1344 typedef basic_string<char> string;
1345
1346
1347 template<> struct char_traits<wchar_t>;
1348
1349 typedef basic_string<wchar_t> wstring;
1350 # 83 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stringfwd.h" 3
1351 }
1352 # 42 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/iosfwd" 2 3
1353 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/postypes.h" 1 3
1354 # 38 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/postypes.h" 3
1355 #define _GLIBCXX_POSTYPES_H 1
1356
1357
1358 # 41 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/postypes.h" 3
1359
1360 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/cwchar" 1 3
1361 # 41 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/cwchar" 3
1362
1363 # 42 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/cwchar" 3
1364
1365
1366 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/cstddef" 1 3
1367 # 41 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/cstddef" 3
1368
1369 # 42 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/cstddef" 3
1370
1371
1372 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 1 3 4
1373 # 40 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 3 4
1374 #define _STDDEF_H
1375 #define _STDDEF_H_
1376
1377 #define _ANSI_STDDEF_H
1378
1379 #define __STDDEF_H__
1380 # 138 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 3 4
1381 #define _PTRDIFF_T
1382 #define _T_PTRDIFF_
1383 #define _T_PTRDIFF
1384 #define __PTRDIFF_T
1385 #define _PTRDIFF_T_
1386 #define _BSD_PTRDIFF_T_
1387 #define ___int_ptrdiff_t_h
1388 #define _GCC_PTRDIFF_T
1389
1390
1391
1392 typedef long int ptrdiff_t;
1393 # 160 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 3 4
1394 #undef __need_ptrdiff_t
1395 # 186 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 3 4
1396 #define __size_t__
1397 #define __SIZE_T__
1398 #define _SIZE_T
1399 #define _SYS_SIZE_T_H
1400 #define _T_SIZE_
1401 #define _T_SIZE
1402 #define __SIZE_T
1403 #define _SIZE_T_
1404 #define _BSD_SIZE_T_
1405 #define _SIZE_T_DEFINED_
1406 #define _SIZE_T_DEFINED
1407 #define _BSD_SIZE_T_DEFINED_
1408 #define _SIZE_T_DECLARED
1409 #define ___int_size_t_h
1410 #define _GCC_SIZE_T
1411 #define _SIZET_
1412
1413
1414
1415 #define __size_t
1416
1417
1418
1419
1420
1421 typedef long unsigned int size_t;
1422 # 233 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 3 4
1423 #undef __need_size_t
1424 # 262 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 3 4
1425 #define __wchar_t__
1426 #define __WCHAR_T__
1427 #define _WCHAR_T
1428 #define _T_WCHAR_
1429 #define _T_WCHAR
1430 #define __WCHAR_T
1431 #define _WCHAR_T_
1432 #define _BSD_WCHAR_T_
1433 #define _WCHAR_T_DEFINED_
1434 #define _WCHAR_T_DEFINED
1435 #define _WCHAR_T_H
1436 #define ___int_wchar_t_h
1437 #define __INT_WCHAR_T_H
1438 #define _GCC_WCHAR_T
1439 #define _WCHAR_T_DECLARED
1440 # 289 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 3 4
1441 #undef _BSD_WCHAR_T_
1442 # 342 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 3 4
1443 #undef __need_wchar_t
1444 # 395 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 3 4
1445 #undef NULL
1446
1447 #define NULL __null
1448 # 406 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 3 4
1449 #undef __need_NULL
1450
1451
1452
1453
1454 #define offsetof(TYPE,MEMBER) __builtin_offsetof (TYPE, MEMBER)
1455 # 45 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/cstddef" 2 3
1456
1457
1458 #define _GLIBCXX_CSTDDEF 1
1459
1460 namespace std __attribute__ ((__visibility__ ("default"))) {
1461
1462 using ::ptrdiff_t;
1463 using ::size_t;
1464
1465 }
1466 # 45 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/cwchar" 2 3
1467
1468
1469 # 1 "/usr/include/wchar.h" 1 3 4
1470 # 27 "/usr/include/wchar.h" 3 4
1471 #define _WCHAR_H 1
1472
1473
1474
1475
1476
1477 #define __need___FILE
1478
1479 #define __need_FILE
1480
1481 # 1 "/usr/include/stdio.h" 1 3 4
1482 # 45 "/usr/include/stdio.h" 3 4
1483 struct _IO_FILE;
1484
1485
1486
1487 typedef struct _IO_FILE FILE;
1488
1489
1490
1491
1492
1493
1494
1495 #define __FILE_defined 1
1496
1497 #undef __need_FILE
1498
1499
1500
1501
1502
1503 typedef struct _IO_FILE __FILE;
1504
1505 #define ____FILE_defined 1
1506
1507 #undef __need___FILE
1508 # 38 "/usr/include/wchar.h" 2 3 4
1509
1510 #define __need___va_list
1511 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stdarg.h" 1 3 4
1512 # 34 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stdarg.h" 3 4
1513 #undef __need___va_list
1514
1515
1516
1517
1518 #define __GNUC_VA_LIST
1519 typedef __builtin_va_list __gnuc_va_list;
1520 # 41 "/usr/include/wchar.h" 2 3 4
1521
1522 # 1 "/usr/include/bits/wchar.h" 1 3 4
1523 # 21 "/usr/include/bits/wchar.h" 3 4
1524 #define _BITS_WCHAR_H 1
1525
1526 #define __WCHAR_MIN (-2147483647 - 1)
1527 #define __WCHAR_MAX (2147483647)
1528 # 43 "/usr/include/wchar.h" 2 3 4
1529
1530
1531 #define __need_size_t
1532 #define __need_wchar_t
1533 #define __need_NULL
1534
1535
1536 #undef __need_wint_t
1537 #define __need_wint_t
1538 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 1 3 4
1539 # 160 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 3 4
1540 #undef __need_ptrdiff_t
1541 # 233 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 3 4
1542 #undef __need_size_t
1543 # 342 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 3 4
1544 #undef __need_wchar_t
1545
1546
1547
1548
1549 #define _WINT_T
1550
1551
1552
1553
1554 typedef unsigned int wint_t;
1555
1556 #undef __need_wint_t
1557 # 395 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 3 4
1558 #undef NULL
1559
1560 #define NULL __null
1561 # 406 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 3 4
1562 #undef __need_NULL
1563
1564
1565
1566
1567 #define offsetof(TYPE,MEMBER) __builtin_offsetof (TYPE, MEMBER)
1568 # 53 "/usr/include/wchar.h" 2 3 4
1569 # 76 "/usr/include/wchar.h" 3 4
1570 #define __CORRECT_ISO_CPP_WCHAR_H_PROTO
1571
1572
1573
1574
1575 #define __mbstate_t_defined 1
1576
1577 typedef struct
1578 {
1579 int __count;
1580 union
1581 {
1582
1583 unsigned int __wch;
1584
1585
1586
1587 char __wchb[4];
1588 } __value;
1589 } __mbstate_t;
1590
1591 #undef __need_mbstate_t
1592
1593
1594
1595
1596
1597
1598
1599
1600 typedef __mbstate_t mbstate_t;
1601
1602
1603
1604
1605
1606
1607
1608 #define WCHAR_MIN __WCHAR_MIN
1609 #define WCHAR_MAX __WCHAR_MAX
1610
1611
1612
1613 #define WEOF (0xffffffffu)
1614 # 129 "/usr/include/wchar.h" 3 4
1615 extern "C" {
1616
1617
1618
1619
1620 struct tm;
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630 extern wchar_t *wcscpy (wchar_t *__restrict __dest,
1631 __const wchar_t *__restrict __src) throw ();
1632
1633 extern wchar_t *wcsncpy (wchar_t *__restrict __dest,
1634 __const wchar_t *__restrict __src, size_t __n)
1635 throw ();
1636
1637
1638 extern wchar_t *wcscat (wchar_t *__restrict __dest,
1639 __const wchar_t *__restrict __src) throw ();
1640
1641 extern wchar_t *wcsncat (wchar_t *__restrict __dest,
1642 __const wchar_t *__restrict __src, size_t __n)
1643 throw ();
1644
1645
1646 extern int wcscmp (__const wchar_t *__s1, __const wchar_t *__s2)
1647 throw () __attribute__ ((__pure__));
1648
1649 extern int wcsncmp (__const wchar_t *__s1, __const wchar_t *__s2, size_t __n)
1650 throw () __attribute__ ((__pure__));
1651
1652
1653
1654
1655 extern int wcscasecmp (__const wchar_t *__s1, __const wchar_t *__s2) throw ();
1656
1657
1658 extern int wcsncasecmp (__const wchar_t *__s1, __const wchar_t *__s2,
1659 size_t __n) throw ();
1660
1661
1662
1663 # 1 "/usr/include/xlocale.h" 1 3 4
1664 # 22 "/usr/include/xlocale.h" 3 4
1665 #define _XLOCALE_H 1
1666
1667
1668
1669
1670
1671 typedef struct __locale_struct
1672 {
1673
1674 struct __locale_data *__locales[13];
1675
1676
1677 const unsigned short int *__ctype_b;
1678 const int *__ctype_tolower;
1679 const int *__ctype_toupper;
1680
1681
1682 const char *__names[13];
1683 } *__locale_t;
1684
1685
1686 typedef __locale_t locale_t;
1687 # 178 "/usr/include/wchar.h" 2 3 4
1688
1689 extern int wcscasecmp_l (__const wchar_t *__s1, __const wchar_t *__s2,
1690 __locale_t __loc) throw ();
1691
1692 extern int wcsncasecmp_l (__const wchar_t *__s1, __const wchar_t *__s2,
1693 size_t __n, __locale_t __loc) throw ();
1694
1695
1696
1697
1698
1699 extern int wcscoll (__const wchar_t *__s1, __const wchar_t *__s2) throw ();
1700
1701
1702
1703 extern size_t wcsxfrm (wchar_t *__restrict __s1,
1704 __const wchar_t *__restrict __s2, size_t __n) throw ();
1705
1706
1707
1708
1709
1710
1711
1712
1713 extern int wcscoll_l (__const wchar_t *__s1, __const wchar_t *__s2,
1714 __locale_t __loc) throw ();
1715
1716
1717
1718
1719 extern size_t wcsxfrm_l (wchar_t *__s1, __const wchar_t *__s2,
1720 size_t __n, __locale_t __loc) throw ();
1721
1722
1723 extern wchar_t *wcsdup (__const wchar_t *__s) throw () __attribute__ ((__malloc__));
1724
1725
1726
1727
1728
1729 extern "C++" wchar_t *wcschr (wchar_t *__wcs, wchar_t __wc)
1730 throw () __asm ("wcschr") __attribute__ ((__pure__));
1731 extern "C++" __const wchar_t *wcschr (__const wchar_t *__wcs, wchar_t __wc)
1732 throw () __asm ("wcschr") __attribute__ ((__pure__));
1733
1734
1735
1736
1737
1738
1739 extern "C++" wchar_t *wcsrchr (wchar_t *__wcs, wchar_t __wc)
1740 throw () __asm ("wcsrchr") __attribute__ ((__pure__));
1741 extern "C++" __const wchar_t *wcsrchr (__const wchar_t *__wcs, wchar_t __wc)
1742 throw () __asm ("wcsrchr") __attribute__ ((__pure__));
1743
1744
1745
1746
1747
1748
1749
1750
1751
1752 extern wchar_t *wcschrnul (__const wchar_t *__s, wchar_t __wc)
1753 throw () __attribute__ ((__pure__));
1754
1755
1756
1757
1758
1759 extern size_t wcscspn (__const wchar_t *__wcs, __const wchar_t *__reject)
1760 throw () __attribute__ ((__pure__));
1761
1762
1763 extern size_t wcsspn (__const wchar_t *__wcs, __const wchar_t *__accept)
1764 throw () __attribute__ ((__pure__));
1765
1766
1767 extern "C++" wchar_t *wcspbrk (wchar_t *__wcs, __const wchar_t *__accept)
1768 throw () __asm ("wcspbrk") __attribute__ ((__pure__));
1769 extern "C++" __const wchar_t *wcspbrk (__const wchar_t *__wcs,
1770 __const wchar_t *__accept)
1771 throw () __asm ("wcspbrk") __attribute__ ((__pure__));
1772
1773
1774
1775
1776
1777
1778 extern "C++" wchar_t *wcsstr (wchar_t *__haystack, __const wchar_t *__needle)
1779 throw () __asm ("wcsstr") __attribute__ ((__pure__));
1780 extern "C++" __const wchar_t *wcsstr (__const wchar_t *__haystack,
1781 __const wchar_t *__needle)
1782 throw () __asm ("wcsstr") __attribute__ ((__pure__));
1783
1784
1785
1786
1787
1788
1789 extern wchar_t *wcstok (wchar_t *__restrict __s,
1790 __const wchar_t *__restrict __delim,
1791 wchar_t **__restrict __ptr) throw ();
1792
1793
1794 extern size_t wcslen (__const wchar_t *__s) throw () __attribute__ ((__pure__));
1795
1796
1797
1798
1799
1800 extern "C++" wchar_t *wcswcs (wchar_t *__haystack, __const wchar_t *__needle)
1801 throw () __asm ("wcswcs") __attribute__ ((__pure__));
1802 extern "C++" __const wchar_t *wcswcs (__const wchar_t *__haystack,
1803 __const wchar_t *__needle)
1804 throw () __asm ("wcswcs") __attribute__ ((__pure__));
1805 # 303 "/usr/include/wchar.h" 3 4
1806 extern size_t wcsnlen (__const wchar_t *__s, size_t __maxlen)
1807 throw () __attribute__ ((__pure__));
1808
1809
1810
1811
1812
1813
1814 extern "C++" wchar_t *wmemchr (wchar_t *__s, wchar_t __c, size_t __n)
1815 throw () __asm ("wmemchr") __attribute__ ((__pure__));
1816 extern "C++" __const wchar_t *wmemchr (__const wchar_t *__s, wchar_t __c,
1817 size_t __n)
1818 throw () __asm ("wmemchr") __attribute__ ((__pure__));
1819
1820
1821
1822
1823
1824
1825 extern int wmemcmp (__const wchar_t *__s1, __const wchar_t *__s2, size_t __n)
1826 throw () __attribute__ ((__pure__));
1827
1828
1829 extern wchar_t *wmemcpy (wchar_t *__restrict __s1,
1830 __const wchar_t *__restrict __s2, size_t __n) throw ();
1831
1832
1833
1834 extern wchar_t *wmemmove (wchar_t *__s1, __const wchar_t *__s2, size_t __n)
1835 throw ();
1836
1837
1838 extern wchar_t *wmemset (wchar_t *__s, wchar_t __c, size_t __n) throw ();
1839
1840
1841
1842
1843
1844 extern wchar_t *wmempcpy (wchar_t *__restrict __s1,
1845 __const wchar_t *__restrict __s2, size_t __n)
1846 throw ();
1847
1848
1849
1850
1851
1852
1853 extern wint_t btowc (int __c) throw ();
1854
1855
1856
1857 extern int wctob (wint_t __c) throw ();
1858
1859
1860
1861 extern int mbsinit (__const mbstate_t *__ps) throw () __attribute__ ((__pure__));
1862
1863
1864
1865 extern size_t mbrtowc (wchar_t *__restrict __pwc,
1866 __const char *__restrict __s, size_t __n,
1867 mbstate_t *__p) throw ();
1868
1869
1870 extern size_t wcrtomb (char *__restrict __s, wchar_t __wc,
1871 mbstate_t *__restrict __ps) throw ();
1872
1873
1874 extern size_t __mbrlen (__const char *__restrict __s, size_t __n,
1875 mbstate_t *__restrict __ps) throw ();
1876 extern size_t mbrlen (__const char *__restrict __s, size_t __n,
1877 mbstate_t *__restrict __ps) throw ();
1878
1879
1880
1881
1882
1883
1884
1885
1886 extern wint_t __btowc_alias (int __c) __asm ("btowc");
1887 extern __inline __attribute__ ((__gnu_inline__)) wint_t
1888 btowc (int __c) throw ()
1889 { return (__builtin_constant_p (__c) && __c >= '\0' && __c <= '\x7f'
1890 ? (wint_t) __c : __btowc_alias (__c)); }
1891
1892 extern int __wctob_alias (wint_t __c) __asm ("wctob");
1893 extern __inline __attribute__ ((__gnu_inline__)) int
1894 wctob (wint_t __wc) throw ()
1895 { return (__builtin_constant_p (__wc) && __wc >= L'\0' && __wc <= L'\x7f'
1896 ? (int) __wc : __wctob_alias (__wc)); }
1897
1898 extern __inline __attribute__ ((__gnu_inline__)) size_t
1899 mbrlen (__const char *__restrict __s, size_t __n, mbstate_t *__restrict __ps) throw ()
1900
1901 { return (__ps != __null
1902 ? mbrtowc (__null, __s, __n, __ps) : __mbrlen (__s, __n, __null)); }
1903
1904
1905
1906
1907
1908 extern size_t mbsrtowcs (wchar_t *__restrict __dst,
1909 __const char **__restrict __src, size_t __len,
1910 mbstate_t *__restrict __ps) throw ();
1911
1912
1913
1914 extern size_t wcsrtombs (char *__restrict __dst,
1915 __const wchar_t **__restrict __src, size_t __len,
1916 mbstate_t *__restrict __ps) throw ();
1917
1918
1919
1920
1921
1922
1923 extern size_t mbsnrtowcs (wchar_t *__restrict __dst,
1924 __const char **__restrict __src, size_t __nmc,
1925 size_t __len, mbstate_t *__restrict __ps) throw ();
1926
1927
1928
1929 extern size_t wcsnrtombs (char *__restrict __dst,
1930 __const wchar_t **__restrict __src,
1931 size_t __nwc, size_t __len,
1932 mbstate_t *__restrict __ps) throw ();
1933
1934
1935
1936
1937
1938
1939 extern int wcwidth (wchar_t __c) throw ();
1940
1941
1942
1943 extern int wcswidth (__const wchar_t *__s, size_t __n) throw ();
1944
1945
1946
1947
1948
1949
1950 extern double wcstod (__const wchar_t *__restrict __nptr,
1951 wchar_t **__restrict __endptr) throw ();
1952
1953
1954
1955
1956
1957 extern float wcstof (__const wchar_t *__restrict __nptr,
1958 wchar_t **__restrict __endptr) throw ();
1959 extern long double wcstold (__const wchar_t *__restrict __nptr,
1960 wchar_t **__restrict __endptr) throw ();
1961
1962
1963
1964
1965
1966
1967
1968 extern long int wcstol (__const wchar_t *__restrict __nptr,
1969 wchar_t **__restrict __endptr, int __base) throw ();
1970
1971
1972
1973 extern unsigned long int wcstoul (__const wchar_t *__restrict __nptr,
1974 wchar_t **__restrict __endptr, int __base)
1975 throw ();
1976
1977
1978
1979
1980
1981
1982 __extension__
1983 extern long long int wcstoll (__const wchar_t *__restrict __nptr,
1984 wchar_t **__restrict __endptr, int __base)
1985 throw ();
1986
1987
1988
1989 __extension__
1990 extern unsigned long long int wcstoull (__const wchar_t *__restrict __nptr,
1991 wchar_t **__restrict __endptr,
1992 int __base) throw ();
1993
1994
1995
1996
1997
1998
1999 __extension__
2000 extern long long int wcstoq (__const wchar_t *__restrict __nptr,
2001 wchar_t **__restrict __endptr, int __base)
2002 throw ();
2003
2004
2005
2006 __extension__
2007 extern unsigned long long int wcstouq (__const wchar_t *__restrict __nptr,
2008 wchar_t **__restrict __endptr,
2009 int __base) throw ();
2010 # 527 "/usr/include/wchar.h" 3 4
2011 extern long int wcstol_l (__const wchar_t *__restrict __nptr,
2012 wchar_t **__restrict __endptr, int __base,
2013 __locale_t __loc) throw ();
2014
2015 extern unsigned long int wcstoul_l (__const wchar_t *__restrict __nptr,
2016 wchar_t **__restrict __endptr,
2017 int __base, __locale_t __loc) throw ();
2018
2019 __extension__
2020 extern long long int wcstoll_l (__const wchar_t *__restrict __nptr,
2021 wchar_t **__restrict __endptr,
2022 int __base, __locale_t __loc) throw ();
2023
2024 __extension__
2025 extern unsigned long long int wcstoull_l (__const wchar_t *__restrict __nptr,
2026 wchar_t **__restrict __endptr,
2027 int __base, __locale_t __loc)
2028 throw ();
2029
2030 extern double wcstod_l (__const wchar_t *__restrict __nptr,
2031 wchar_t **__restrict __endptr, __locale_t __loc)
2032 throw ();
2033
2034 extern float wcstof_l (__const wchar_t *__restrict __nptr,
2035 wchar_t **__restrict __endptr, __locale_t __loc)
2036 throw ();
2037
2038 extern long double wcstold_l (__const wchar_t *__restrict __nptr,
2039 wchar_t **__restrict __endptr,
2040 __locale_t __loc) throw ();
2041
2042
2043
2044
2045
2046
2047 extern wchar_t *wcpcpy (wchar_t *__restrict __dest,
2048 __const wchar_t *__restrict __src) throw ();
2049
2050
2051
2052 extern wchar_t *wcpncpy (wchar_t *__restrict __dest,
2053 __const wchar_t *__restrict __src, size_t __n)
2054 throw ();
2055
2056
2057
2058
2059
2060
2061 extern __FILE *open_wmemstream (wchar_t **__bufloc, size_t *__sizeloc) throw ();
2062
2063
2064
2065
2066
2067
2068 extern int fwide (__FILE *__fp, int __mode) throw ();
2069
2070
2071
2072
2073
2074
2075 extern int fwprintf (__FILE *__restrict __stream,
2076 __const wchar_t *__restrict __format, ...)
2077 ;
2078
2079
2080
2081
2082 extern int wprintf (__const wchar_t *__restrict __format, ...)
2083 ;
2084
2085 extern int swprintf (wchar_t *__restrict __s, size_t __n,
2086 __const wchar_t *__restrict __format, ...)
2087 throw () ;
2088
2089
2090
2091
2092
2093 extern int vfwprintf (__FILE *__restrict __s,
2094 __const wchar_t *__restrict __format,
2095 __gnuc_va_list __arg)
2096 ;
2097
2098
2099
2100
2101 extern int vwprintf (__const wchar_t *__restrict __format,
2102 __gnuc_va_list __arg)
2103 ;
2104
2105
2106 extern int vswprintf (wchar_t *__restrict __s, size_t __n,
2107 __const wchar_t *__restrict __format,
2108 __gnuc_va_list __arg)
2109 throw () ;
2110
2111
2112
2113
2114
2115
2116 extern int fwscanf (__FILE *__restrict __stream,
2117 __const wchar_t *__restrict __format, ...)
2118 ;
2119
2120
2121
2122
2123 extern int wscanf (__const wchar_t *__restrict __format, ...)
2124 ;
2125
2126 extern int swscanf (__const wchar_t *__restrict __s,
2127 __const wchar_t *__restrict __format, ...)
2128 throw () ;
2129 # 677 "/usr/include/wchar.h" 3 4
2130
2131
2132
2133
2134
2135
2136
2137
2138
2139 extern int vfwscanf (__FILE *__restrict __s,
2140 __const wchar_t *__restrict __format,
2141 __gnuc_va_list __arg)
2142 ;
2143
2144
2145
2146
2147 extern int vwscanf (__const wchar_t *__restrict __format,
2148 __gnuc_va_list __arg)
2149 ;
2150
2151 extern int vswscanf (__const wchar_t *__restrict __s,
2152 __const wchar_t *__restrict __format,
2153 __gnuc_va_list __arg)
2154 throw () ;
2155 # 733 "/usr/include/wchar.h" 3 4
2156
2157
2158
2159
2160
2161
2162
2163
2164
2165 extern wint_t fgetwc (__FILE *__stream);
2166 extern wint_t getwc (__FILE *__stream);
2167
2168
2169
2170
2171
2172 extern wint_t getwchar (void);
2173
2174
2175
2176
2177
2178
2179 extern wint_t fputwc (wchar_t __wc, __FILE *__stream);
2180 extern wint_t putwc (wchar_t __wc, __FILE *__stream);
2181
2182
2183
2184
2185
2186 extern wint_t putwchar (wchar_t __wc);
2187
2188
2189
2190
2191
2192
2193
2194 extern wchar_t *fgetws (wchar_t *__restrict __ws, int __n,
2195 __FILE *__restrict __stream);
2196
2197
2198
2199
2200
2201 extern int fputws (__const wchar_t *__restrict __ws,
2202 __FILE *__restrict __stream);
2203
2204
2205
2206
2207
2208
2209 extern wint_t ungetwc (wint_t __wc, __FILE *__stream);
2210
2211 # 798 "/usr/include/wchar.h" 3 4
2212 extern wint_t getwc_unlocked (__FILE *__stream);
2213 extern wint_t getwchar_unlocked (void);
2214
2215
2216
2217
2218
2219
2220
2221 extern wint_t fgetwc_unlocked (__FILE *__stream);
2222
2223
2224
2225
2226
2227
2228
2229 extern wint_t fputwc_unlocked (wchar_t __wc, __FILE *__stream);
2230 # 824 "/usr/include/wchar.h" 3 4
2231 extern wint_t putwc_unlocked (wchar_t __wc, __FILE *__stream);
2232 extern wint_t putwchar_unlocked (wchar_t __wc);
2233 # 834 "/usr/include/wchar.h" 3 4
2234 extern wchar_t *fgetws_unlocked (wchar_t *__restrict __ws, int __n,
2235 __FILE *__restrict __stream);
2236
2237
2238
2239
2240
2241
2242
2243 extern int fputws_unlocked (__const wchar_t *__restrict __ws,
2244 __FILE *__restrict __stream);
2245
2246
2247
2248
2249
2250
2251
2252 extern size_t wcsftime (wchar_t *__restrict __s, size_t __maxsize,
2253 __const wchar_t *__restrict __format,
2254 __const struct tm *__restrict __tp) throw ();
2255
2256
2257
2258
2259
2260
2261
2262 extern size_t wcsftime_l (wchar_t *__restrict __s, size_t __maxsize,
2263 __const wchar_t *__restrict __format,
2264 __const struct tm *__restrict __tp,
2265 __locale_t __loc) throw ();
2266 # 881 "/usr/include/wchar.h" 3 4
2267 # 1 "/usr/include/bits/wchar2.h" 1 3 4
2268 # 25 "/usr/include/bits/wchar2.h" 3 4
2269 extern wchar_t *__wmemcpy_chk (wchar_t *__restrict __s1,
2270 __const wchar_t *__restrict __s2, size_t __n,
2271 size_t __ns1) throw ();
2272 extern wchar_t *__wmemcpy_alias (wchar_t *__restrict __s1, __const wchar_t *__restrict __s2, size_t __n) throw () __asm__ ("" "wmemcpy")
2273
2274
2275 ;
2276 extern wchar_t *__wmemcpy_chk_warn (wchar_t *__restrict __s1, __const wchar_t *__restrict __s2, size_t __n, size_t __ns1) throw () __asm__ ("" "__wmemcpy_chk")
2277
2278
2279
2280 __attribute__((__warning__ ("wmemcpy called with length bigger than size of destination " "buffer")))
2281 ;
2282
2283 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) wchar_t *
2284 wmemcpy (wchar_t *__restrict __s1, __const wchar_t *__restrict __s2, size_t __n) throw ()
2285
2286 {
2287 if (__builtin_object_size (__s1, 0) != (size_t) -1)
2288 {
2289 if (!__builtin_constant_p (__n))
2290 return __wmemcpy_chk (__s1, __s2, __n,
2291 __builtin_object_size (__s1, 0) / sizeof (wchar_t));
2292
2293 if (__n > __builtin_object_size (__s1, 0) / sizeof (wchar_t))
2294 return __wmemcpy_chk_warn (__s1, __s2, __n,
2295 __builtin_object_size (__s1, 0) / sizeof (wchar_t));
2296 }
2297 return __wmemcpy_alias (__s1, __s2, __n);
2298 }
2299
2300
2301 extern wchar_t *__wmemmove_chk (wchar_t *__s1, __const wchar_t *__s2,
2302 size_t __n, size_t __ns1) throw ();
2303 extern wchar_t *__wmemmove_alias (wchar_t *__s1, __const wchar_t *__s2, size_t __n) throw () __asm__ ("" "wmemmove")
2304
2305 ;
2306 extern wchar_t *__wmemmove_chk_warn (wchar_t *__s1, __const wchar_t *__s2, size_t __n, size_t __ns1) throw () __asm__ ("" "__wmemmove_chk")
2307
2308
2309 __attribute__((__warning__ ("wmemmove called with length bigger than size of destination " "buffer")))
2310 ;
2311
2312 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) wchar_t *
2313 wmemmove (wchar_t *__s1, __const wchar_t *__s2, size_t __n) throw ()
2314 {
2315 if (__builtin_object_size (__s1, 0) != (size_t) -1)
2316 {
2317 if (!__builtin_constant_p (__n))
2318 return __wmemmove_chk (__s1, __s2, __n,
2319 __builtin_object_size (__s1, 0) / sizeof (wchar_t));
2320
2321 if (__n > __builtin_object_size (__s1, 0) / sizeof (wchar_t))
2322 return __wmemmove_chk_warn (__s1, __s2, __n,
2323 __builtin_object_size (__s1, 0) / sizeof (wchar_t));
2324 }
2325 return __wmemmove_alias (__s1, __s2, __n);
2326 }
2327
2328
2329
2330 extern wchar_t *__wmempcpy_chk (wchar_t *__restrict __s1,
2331 __const wchar_t *__restrict __s2, size_t __n,
2332 size_t __ns1) throw ();
2333 extern wchar_t *__wmempcpy_alias (wchar_t *__restrict __s1, __const wchar_t *__restrict __s2, size_t __n) throw () __asm__ ("" "wmempcpy")
2334
2335
2336 ;
2337 extern wchar_t *__wmempcpy_chk_warn (wchar_t *__restrict __s1, __const wchar_t *__restrict __s2, size_t __n, size_t __ns1) throw () __asm__ ("" "__wmempcpy_chk")
2338
2339
2340
2341 __attribute__((__warning__ ("wmempcpy called with length bigger than size of destination " "buffer")))
2342 ;
2343
2344 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) wchar_t *
2345 wmempcpy (wchar_t *__restrict __s1, __const wchar_t *__restrict __s2, size_t __n) throw ()
2346
2347 {
2348 if (__builtin_object_size (__s1, 0) != (size_t) -1)
2349 {
2350 if (!__builtin_constant_p (__n))
2351 return __wmempcpy_chk (__s1, __s2, __n,
2352 __builtin_object_size (__s1, 0) / sizeof (wchar_t));
2353
2354 if (__n > __builtin_object_size (__s1, 0) / sizeof (wchar_t))
2355 return __wmempcpy_chk_warn (__s1, __s2, __n,
2356 __builtin_object_size (__s1, 0) / sizeof (wchar_t));
2357 }
2358 return __wmempcpy_alias (__s1, __s2, __n);
2359 }
2360
2361
2362
2363 extern wchar_t *__wmemset_chk (wchar_t *__s, wchar_t __c, size_t __n,
2364 size_t __ns) throw ();
2365 extern wchar_t *__wmemset_alias (wchar_t *__s, wchar_t __c, size_t __n) throw () __asm__ ("" "wmemset")
2366 ;
2367 extern wchar_t *__wmemset_chk_warn (wchar_t *__s, wchar_t __c, size_t __n, size_t __ns) throw () __asm__ ("" "__wmemset_chk")
2368
2369
2370 __attribute__((__warning__ ("wmemset called with length bigger than size of destination " "buffer")))
2371 ;
2372
2373 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) wchar_t *
2374 wmemset (wchar_t *__s, wchar_t __c, size_t __n) throw ()
2375 {
2376 if (__builtin_object_size (__s, 0) != (size_t) -1)
2377 {
2378 if (!__builtin_constant_p (__n))
2379 return __wmemset_chk (__s, __c, __n, __builtin_object_size (__s, 0) / sizeof (wchar_t));
2380
2381 if (__n > __builtin_object_size (__s, 0) / sizeof (wchar_t))
2382 return __wmemset_chk_warn (__s, __c, __n,
2383 __builtin_object_size (__s, 0) / sizeof (wchar_t));
2384 }
2385 return __wmemset_alias (__s, __c, __n);
2386 }
2387
2388
2389 extern wchar_t *__wcscpy_chk (wchar_t *__restrict __dest,
2390 __const wchar_t *__restrict __src,
2391 size_t __n) throw ();
2392 extern wchar_t *__wcscpy_alias (wchar_t *__restrict __dest, __const wchar_t *__restrict __src) throw () __asm__ ("" "wcscpy")
2393
2394 ;
2395
2396 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) wchar_t *
2397 wcscpy (wchar_t *__restrict __dest, __const wchar_t *__restrict __src) throw ()
2398 {
2399 if (__builtin_object_size (__dest, 2 > 1) != (size_t) -1)
2400 return __wcscpy_chk (__dest, __src, __builtin_object_size (__dest, 2 > 1) / sizeof (wchar_t));
2401 return __wcscpy_alias (__dest, __src);
2402 }
2403
2404
2405 extern wchar_t *__wcpcpy_chk (wchar_t *__restrict __dest,
2406 __const wchar_t *__restrict __src,
2407 size_t __destlen) throw ();
2408 extern wchar_t *__wcpcpy_alias (wchar_t *__restrict __dest, __const wchar_t *__restrict __src) throw () __asm__ ("" "wcpcpy")
2409
2410 ;
2411
2412 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) wchar_t *
2413 wcpcpy (wchar_t *__restrict __dest, __const wchar_t *__restrict __src) throw ()
2414 {
2415 if (__builtin_object_size (__dest, 2 > 1) != (size_t) -1)
2416 return __wcpcpy_chk (__dest, __src, __builtin_object_size (__dest, 2 > 1) / sizeof (wchar_t));
2417 return __wcpcpy_alias (__dest, __src);
2418 }
2419
2420
2421 extern wchar_t *__wcsncpy_chk (wchar_t *__restrict __dest,
2422 __const wchar_t *__restrict __src, size_t __n,
2423 size_t __destlen) throw ();
2424 extern wchar_t *__wcsncpy_alias (wchar_t *__restrict __dest, __const wchar_t *__restrict __src, size_t __n) throw () __asm__ ("" "wcsncpy")
2425
2426
2427 ;
2428 extern wchar_t *__wcsncpy_chk_warn (wchar_t *__restrict __dest, __const wchar_t *__restrict __src, size_t __n, size_t __destlen) throw () __asm__ ("" "__wcsncpy_chk")
2429
2430
2431
2432 __attribute__((__warning__ ("wcsncpy called with length bigger than size of destination " "buffer")))
2433 ;
2434
2435 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) wchar_t *
2436 wcsncpy (wchar_t *__restrict __dest, __const wchar_t *__restrict __src, size_t __n) throw ()
2437
2438 {
2439 if (__builtin_object_size (__dest, 2 > 1) != (size_t) -1)
2440 {
2441 if (!__builtin_constant_p (__n))
2442 return __wcsncpy_chk (__dest, __src, __n,
2443 __builtin_object_size (__dest, 2 > 1) / sizeof (wchar_t));
2444 if (__n > __builtin_object_size (__dest, 2 > 1) / sizeof (wchar_t))
2445 return __wcsncpy_chk_warn (__dest, __src, __n,
2446 __builtin_object_size (__dest, 2 > 1) / sizeof (wchar_t));
2447 }
2448 return __wcsncpy_alias (__dest, __src, __n);
2449 }
2450
2451
2452 extern wchar_t *__wcpncpy_chk (wchar_t *__restrict __dest,
2453 __const wchar_t *__restrict __src, size_t __n,
2454 size_t __destlen) throw ();
2455 extern wchar_t *__wcpncpy_alias (wchar_t *__restrict __dest, __const wchar_t *__restrict __src, size_t __n) throw () __asm__ ("" "wcpncpy")
2456
2457
2458 ;
2459 extern wchar_t *__wcpncpy_chk_warn (wchar_t *__restrict __dest, __const wchar_t *__restrict __src, size_t __n, size_t __destlen) throw () __asm__ ("" "__wcpncpy_chk")
2460
2461
2462
2463 __attribute__((__warning__ ("wcpncpy called with length bigger than size of destination " "buffer")))
2464 ;
2465
2466 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) wchar_t *
2467 wcpncpy (wchar_t *__restrict __dest, __const wchar_t *__restrict __src, size_t __n) throw ()
2468
2469 {
2470 if (__builtin_object_size (__dest, 2 > 1) != (size_t) -1)
2471 {
2472 if (!__builtin_constant_p (__n))
2473 return __wcpncpy_chk (__dest, __src, __n,
2474 __builtin_object_size (__dest, 2 > 1) / sizeof (wchar_t));
2475 if (__n > __builtin_object_size (__dest, 2 > 1) / sizeof (wchar_t))
2476 return __wcpncpy_chk_warn (__dest, __src, __n,
2477 __builtin_object_size (__dest, 2 > 1) / sizeof (wchar_t));
2478 }
2479 return __wcpncpy_alias (__dest, __src, __n);
2480 }
2481
2482
2483 extern wchar_t *__wcscat_chk (wchar_t *__restrict __dest,
2484 __const wchar_t *__restrict __src,
2485 size_t __destlen) throw ();
2486 extern wchar_t *__wcscat_alias (wchar_t *__restrict __dest, __const wchar_t *__restrict __src) throw () __asm__ ("" "wcscat")
2487
2488 ;
2489
2490 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) wchar_t *
2491 wcscat (wchar_t *__restrict __dest, __const wchar_t *__restrict __src) throw ()
2492 {
2493 if (__builtin_object_size (__dest, 2 > 1) != (size_t) -1)
2494 return __wcscat_chk (__dest, __src, __builtin_object_size (__dest, 2 > 1) / sizeof (wchar_t));
2495 return __wcscat_alias (__dest, __src);
2496 }
2497
2498
2499 extern wchar_t *__wcsncat_chk (wchar_t *__restrict __dest,
2500 __const wchar_t *__restrict __src,
2501 size_t __n, size_t __destlen) throw ();
2502 extern wchar_t *__wcsncat_alias (wchar_t *__restrict __dest, __const wchar_t *__restrict __src, size_t __n) throw () __asm__ ("" "wcsncat")
2503
2504
2505 ;
2506
2507 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) wchar_t *
2508 wcsncat (wchar_t *__restrict __dest, __const wchar_t *__restrict __src, size_t __n) throw ()
2509
2510 {
2511 if (__builtin_object_size (__dest, 2 > 1) != (size_t) -1)
2512 return __wcsncat_chk (__dest, __src, __n,
2513 __builtin_object_size (__dest, 2 > 1) / sizeof (wchar_t));
2514 return __wcsncat_alias (__dest, __src, __n);
2515 }
2516
2517
2518 extern int __swprintf_chk (wchar_t *__restrict __s, size_t __n,
2519 int __flag, size_t __s_len,
2520 __const wchar_t *__restrict __format, ...)
2521 throw () ;
2522
2523 extern int __swprintf_alias (wchar_t *__restrict __s, size_t __n, __const wchar_t *__restrict __fmt, ...) throw () __asm__ ("" "swprintf")
2524
2525
2526 ;
2527
2528
2529 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) int
2530 swprintf (wchar_t *__restrict __s, size_t __n, __const wchar_t *__restrict __fmt, ...) throw ()
2531
2532 {
2533 if (__builtin_object_size (__s, 2 > 1) != (size_t) -1 || 2 > 1)
2534 return __swprintf_chk (__s, __n, 2 - 1,
2535 __builtin_object_size (__s, 2 > 1) / sizeof (wchar_t),
2536 __fmt, __builtin_va_arg_pack ());
2537 return __swprintf_alias (__s, __n, __fmt, __builtin_va_arg_pack ());
2538 }
2539 # 304 "/usr/include/bits/wchar2.h" 3 4
2540 extern int __vswprintf_chk (wchar_t *__restrict __s, size_t __n,
2541 int __flag, size_t __s_len,
2542 __const wchar_t *__restrict __format,
2543 __gnuc_va_list __arg)
2544 throw () ;
2545
2546 extern int __vswprintf_alias (wchar_t *__restrict __s, size_t __n, __const wchar_t *__restrict __fmt, __gnuc_va_list __ap) throw () __asm__ ("" "vswprintf")
2547
2548
2549 ;
2550
2551 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) int
2552 vswprintf (wchar_t *__restrict __s, size_t __n, __const wchar_t *__restrict __fmt, __gnuc_va_list __ap) throw ()
2553
2554 {
2555 if (__builtin_object_size (__s, 2 > 1) != (size_t) -1 || 2 > 1)
2556 return __vswprintf_chk (__s, __n, 2 - 1,
2557 __builtin_object_size (__s, 2 > 1) / sizeof (wchar_t), __fmt, __ap);
2558 return __vswprintf_alias (__s, __n, __fmt, __ap);
2559 }
2560
2561
2562
2563
2564 extern int __fwprintf_chk (__FILE *__restrict __stream, int __flag,
2565 __const wchar_t *__restrict __format, ...);
2566 extern int __wprintf_chk (int __flag, __const wchar_t *__restrict __format,
2567 ...);
2568 extern int __vfwprintf_chk (__FILE *__restrict __stream, int __flag,
2569 __const wchar_t *__restrict __format,
2570 __gnuc_va_list __ap);
2571 extern int __vwprintf_chk (int __flag, __const wchar_t *__restrict __format,
2572 __gnuc_va_list __ap);
2573
2574
2575 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) int
2576 wprintf (__const wchar_t *__restrict __fmt, ...)
2577 {
2578 return __wprintf_chk (2 - 1, __fmt, __builtin_va_arg_pack ());
2579 }
2580
2581 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) int
2582 fwprintf (__FILE *__restrict __stream, __const wchar_t *__restrict __fmt, ...)
2583 {
2584 return __fwprintf_chk (__stream, 2 - 1, __fmt,
2585 __builtin_va_arg_pack ());
2586 }
2587
2588
2589
2590
2591
2592
2593
2594 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) int
2595 vwprintf (__const wchar_t *__restrict __fmt, __gnuc_va_list __ap)
2596 {
2597 return __vwprintf_chk (2 - 1, __fmt, __ap);
2598 }
2599
2600 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) int
2601 vfwprintf (__FILE *__restrict __stream,
2602 __const wchar_t *__restrict __fmt, __gnuc_va_list __ap)
2603 {
2604 return __vfwprintf_chk (__stream, 2 - 1, __fmt, __ap);
2605 }
2606
2607
2608
2609 extern wchar_t *__fgetws_chk (wchar_t *__restrict __s, size_t __size, int __n,
2610 __FILE *__restrict __stream) __attribute__ ((__warn_unused_result__));
2611 extern wchar_t *__fgetws_alias (wchar_t *__restrict __s, int __n, __FILE *__restrict __stream) __asm__ ("" "fgetws")
2612
2613 __attribute__ ((__warn_unused_result__));
2614 extern wchar_t *__fgetws_chk_warn (wchar_t *__restrict __s, size_t __size, int __n, __FILE *__restrict __stream) __asm__ ("" "__fgetws_chk")
2615
2616
2617 __attribute__ ((__warn_unused_result__)) __attribute__((__warning__ ("fgetws called with bigger size than length " "of destination buffer")))
2618 ;
2619
2620 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) __attribute__ ((__warn_unused_result__)) wchar_t *
2621 fgetws (wchar_t *__restrict __s, int __n, __FILE *__restrict __stream)
2622 {
2623 if (__builtin_object_size (__s, 2 > 1) != (size_t) -1)
2624 {
2625 if (!__builtin_constant_p (__n) || __n <= 0)
2626 return __fgetws_chk (__s, __builtin_object_size (__s, 2 > 1) / sizeof (wchar_t),
2627 __n, __stream);
2628
2629 if ((size_t) __n > __builtin_object_size (__s, 2 > 1) / sizeof (wchar_t))
2630 return __fgetws_chk_warn (__s, __builtin_object_size (__s, 2 > 1) / sizeof (wchar_t),
2631 __n, __stream);
2632 }
2633 return __fgetws_alias (__s, __n, __stream);
2634 }
2635
2636
2637 extern wchar_t *__fgetws_unlocked_chk (wchar_t *__restrict __s, size_t __size,
2638 int __n, __FILE *__restrict __stream)
2639 __attribute__ ((__warn_unused_result__));
2640 extern wchar_t *__fgetws_unlocked_alias (wchar_t *__restrict __s, int __n, __FILE *__restrict __stream) __asm__ ("" "fgetws_unlocked")
2641
2642
2643 __attribute__ ((__warn_unused_result__));
2644 extern wchar_t *__fgetws_unlocked_chk_warn (wchar_t *__restrict __s, size_t __size, int __n, __FILE *__restrict __stream) __asm__ ("" "__fgetws_unlocked_chk")
2645
2646
2647
2648 __attribute__ ((__warn_unused_result__)) __attribute__((__warning__ ("fgetws_unlocked called with bigger size than length " "of destination buffer")))
2649 ;
2650
2651 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) __attribute__ ((__warn_unused_result__)) wchar_t *
2652 fgetws_unlocked (wchar_t *__restrict __s, int __n, __FILE *__restrict __stream)
2653 {
2654 if (__builtin_object_size (__s, 2 > 1) != (size_t) -1)
2655 {
2656 if (!__builtin_constant_p (__n) || __n <= 0)
2657 return __fgetws_unlocked_chk (__s, __builtin_object_size (__s, 2 > 1) / sizeof (wchar_t),
2658 __n, __stream);
2659
2660 if ((size_t) __n > __builtin_object_size (__s, 2 > 1) / sizeof (wchar_t))
2661 return __fgetws_unlocked_chk_warn (__s, __builtin_object_size (__s, 2 > 1) / sizeof (wchar_t),
2662 __n, __stream);
2663 }
2664 return __fgetws_unlocked_alias (__s, __n, __stream);
2665 }
2666
2667
2668
2669 extern size_t __wcrtomb_chk (char *__restrict __s, wchar_t __wchar,
2670 mbstate_t *__restrict __p,
2671 size_t __buflen) throw () __attribute__ ((__warn_unused_result__));
2672 extern size_t __wcrtomb_alias (char *__restrict __s, wchar_t __wchar, mbstate_t *__restrict __ps) throw () __asm__ ("" "wcrtomb")
2673
2674 __attribute__ ((__warn_unused_result__));
2675
2676 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) __attribute__ ((__warn_unused_result__)) size_t
2677 wcrtomb (char *__restrict __s, wchar_t __wchar, mbstate_t *__restrict __ps) throw ()
2678
2679 {
2680
2681
2682
2683 #define __WCHAR_MB_LEN_MAX 16
2684
2685
2686
2687 if (__builtin_object_size (__s, 2 > 1) != (size_t) -1 && 16 > __builtin_object_size (__s, 2 > 1))
2688 return __wcrtomb_chk (__s, __wchar, __ps, __builtin_object_size (__s, 2 > 1));
2689 return __wcrtomb_alias (__s, __wchar, __ps);
2690 }
2691
2692
2693 extern size_t __mbsrtowcs_chk (wchar_t *__restrict __dst,
2694 __const char **__restrict __src,
2695 size_t __len, mbstate_t *__restrict __ps,
2696 size_t __dstlen) throw ();
2697 extern size_t __mbsrtowcs_alias (wchar_t *__restrict __dst, __const char **__restrict __src, size_t __len, mbstate_t *__restrict __ps) throw () __asm__ ("" "mbsrtowcs")
2698
2699
2700
2701 ;
2702 extern size_t __mbsrtowcs_chk_warn (wchar_t *__restrict __dst, __const char **__restrict __src, size_t __len, mbstate_t *__restrict __ps, size_t __dstlen) throw () __asm__ ("" "__mbsrtowcs_chk")
2703
2704
2705
2706
2707 __attribute__((__warning__ ("mbsrtowcs called with dst buffer smaller than len " "* sizeof (wchar_t)")))
2708 ;
2709
2710 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) size_t
2711 mbsrtowcs (wchar_t *__restrict __dst, __const char **__restrict __src, size_t __len, mbstate_t *__restrict __ps) throw ()
2712
2713 {
2714 if (__builtin_object_size (__dst, 2 > 1) != (size_t) -1)
2715 {
2716 if (!__builtin_constant_p (__len))
2717 return __mbsrtowcs_chk (__dst, __src, __len, __ps,
2718 __builtin_object_size (__dst, 2 > 1) / sizeof (wchar_t));
2719
2720 if (__len > __builtin_object_size (__dst, 2 > 1) / sizeof (wchar_t))
2721 return __mbsrtowcs_chk_warn (__dst, __src, __len, __ps,
2722 __builtin_object_size (__dst, 2 > 1) / sizeof (wchar_t));
2723 }
2724 return __mbsrtowcs_alias (__dst, __src, __len, __ps);
2725 }
2726
2727
2728 extern size_t __wcsrtombs_chk (char *__restrict __dst,
2729 __const wchar_t **__restrict __src,
2730 size_t __len, mbstate_t *__restrict __ps,
2731 size_t __dstlen) throw ();
2732 extern size_t __wcsrtombs_alias (char *__restrict __dst, __const wchar_t **__restrict __src, size_t __len, mbstate_t *__restrict __ps) throw () __asm__ ("" "wcsrtombs")
2733
2734
2735
2736 ;
2737 extern size_t __wcsrtombs_chk_warn (char *__restrict __dst, __const wchar_t **__restrict __src, size_t __len, mbstate_t *__restrict __ps, size_t __dstlen) throw () __asm__ ("" "__wcsrtombs_chk")
2738
2739
2740
2741
2742 __attribute__((__warning__ ("wcsrtombs called with dst buffer smaller than len")));
2743
2744 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) size_t
2745 wcsrtombs (char *__restrict __dst, __const wchar_t **__restrict __src, size_t __len, mbstate_t *__restrict __ps) throw ()
2746
2747 {
2748 if (__builtin_object_size (__dst, 2 > 1) != (size_t) -1)
2749 {
2750 if (!__builtin_constant_p (__len))
2751 return __wcsrtombs_chk (__dst, __src, __len, __ps, __builtin_object_size (__dst, 2 > 1));
2752
2753 if (__len > __builtin_object_size (__dst, 2 > 1))
2754 return __wcsrtombs_chk_warn (__dst, __src, __len, __ps, __builtin_object_size (__dst, 2 > 1));
2755 }
2756 return __wcsrtombs_alias (__dst, __src, __len, __ps);
2757 }
2758
2759
2760
2761 extern size_t __mbsnrtowcs_chk (wchar_t *__restrict __dst,
2762 __const char **__restrict __src, size_t __nmc,
2763 size_t __len, mbstate_t *__restrict __ps,
2764 size_t __dstlen) throw ();
2765 extern size_t __mbsnrtowcs_alias (wchar_t *__restrict __dst, __const char **__restrict __src, size_t __nmc, size_t __len, mbstate_t *__restrict __ps) throw () __asm__ ("" "mbsnrtowcs")
2766
2767
2768
2769 ;
2770 extern size_t __mbsnrtowcs_chk_warn (wchar_t *__restrict __dst, __const char **__restrict __src, size_t __nmc, size_t __len, mbstate_t *__restrict __ps, size_t __dstlen) throw () __asm__ ("" "__mbsnrtowcs_chk")
2771
2772
2773
2774
2775 __attribute__((__warning__ ("mbsnrtowcs called with dst buffer smaller than len " "* sizeof (wchar_t)")))
2776 ;
2777
2778 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) size_t
2779 mbsnrtowcs (wchar_t *__restrict __dst, __const char **__restrict __src, size_t __nmc, size_t __len, mbstate_t *__restrict __ps) throw ()
2780
2781 {
2782 if (__builtin_object_size (__dst, 2 > 1) != (size_t) -1)
2783 {
2784 if (!__builtin_constant_p (__len))
2785 return __mbsnrtowcs_chk (__dst, __src, __nmc, __len, __ps,
2786 __builtin_object_size (__dst, 2 > 1) / sizeof (wchar_t));
2787
2788 if (__len > __builtin_object_size (__dst, 2 > 1) / sizeof (wchar_t))
2789 return __mbsnrtowcs_chk_warn (__dst, __src, __nmc, __len, __ps,
2790 __builtin_object_size (__dst, 2 > 1) / sizeof (wchar_t));
2791 }
2792 return __mbsnrtowcs_alias (__dst, __src, __nmc, __len, __ps);
2793 }
2794
2795
2796 extern size_t __wcsnrtombs_chk (char *__restrict __dst,
2797 __const wchar_t **__restrict __src,
2798 size_t __nwc, size_t __len,
2799 mbstate_t *__restrict __ps, size_t __dstlen)
2800 throw ();
2801 extern size_t __wcsnrtombs_alias (char *__restrict __dst, __const wchar_t **__restrict __src, size_t __nwc, size_t __len, mbstate_t *__restrict __ps) throw () __asm__ ("" "wcsnrtombs")
2802
2803
2804
2805 ;
2806 extern size_t __wcsnrtombs_chk_warn (char *__restrict __dst, __const wchar_t **__restrict __src, size_t __nwc, size_t __len, mbstate_t *__restrict __ps, size_t __dstlen) throw () __asm__ ("" "__wcsnrtombs_chk")
2807
2808
2809
2810
2811
2812 __attribute__((__warning__ ("wcsnrtombs called with dst buffer smaller than len")));
2813
2814 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) size_t
2815 wcsnrtombs (char *__restrict __dst, __const wchar_t **__restrict __src, size_t __nwc, size_t __len, mbstate_t *__restrict __ps) throw ()
2816
2817 {
2818 if (__builtin_object_size (__dst, 2 > 1) != (size_t) -1)
2819 {
2820 if (!__builtin_constant_p (__len))
2821 return __wcsnrtombs_chk (__dst, __src, __nwc, __len, __ps,
2822 __builtin_object_size (__dst, 2 > 1));
2823
2824 if (__len > __builtin_object_size (__dst, 2 > 1))
2825 return __wcsnrtombs_chk_warn (__dst, __src, __nwc, __len, __ps,
2826 __builtin_object_size (__dst, 2 > 1));
2827 }
2828 return __wcsnrtombs_alias (__dst, __src, __nwc, __len, __ps);
2829 }
2830 # 882 "/usr/include/wchar.h" 2 3 4
2831
2832
2833
2834
2835
2836
2837 }
2838
2839
2840
2841
2842
2843
2844
2845 #undef __need_mbstate_t
2846 #undef __need_wint_t
2847 # 48 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/cwchar" 2 3
2848
2849
2850
2851 #define _GLIBCXX_CWCHAR 1
2852 # 65 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/cwchar" 3
2853 namespace std __attribute__ ((__visibility__ ("default"))) {
2854
2855 using ::mbstate_t;
2856
2857 }
2858
2859
2860 #undef btowc
2861 #undef fgetwc
2862 #undef fgetws
2863 #undef fputwc
2864 #undef fputws
2865 #undef fwide
2866 #undef fwprintf
2867 #undef fwscanf
2868 #undef getwc
2869 #undef getwchar
2870 #undef mbrlen
2871 #undef mbrtowc
2872 #undef mbsinit
2873 #undef mbsrtowcs
2874 #undef putwc
2875 #undef putwchar
2876 #undef swprintf
2877 #undef swscanf
2878 #undef ungetwc
2879 #undef vfwprintf
2880
2881 #undef vfwscanf
2882
2883 #undef vswprintf
2884
2885 #undef vswscanf
2886
2887 #undef vwprintf
2888
2889 #undef vwscanf
2890
2891 #undef wcrtomb
2892 #undef wcscat
2893 #undef wcschr
2894 #undef wcscmp
2895 #undef wcscoll
2896 #undef wcscpy
2897 #undef wcscspn
2898 #undef wcsftime
2899 #undef wcslen
2900 #undef wcsncat
2901 #undef wcsncmp
2902 #undef wcsncpy
2903 #undef wcspbrk
2904 #undef wcsrchr
2905 #undef wcsrtombs
2906 #undef wcsspn
2907 #undef wcsstr
2908 #undef wcstod
2909
2910 #undef wcstof
2911
2912 #undef wcstok
2913 #undef wcstol
2914 #undef wcstoul
2915 #undef wcsxfrm
2916 #undef wctob
2917 #undef wmemchr
2918 #undef wmemcmp
2919 #undef wmemcpy
2920 #undef wmemmove
2921 #undef wmemset
2922 #undef wprintf
2923 #undef wscanf
2924
2925
2926
2927 namespace std __attribute__ ((__visibility__ ("default"))) {
2928
2929 using ::wint_t;
2930
2931 using ::btowc;
2932 using ::fgetwc;
2933 using ::fgetws;
2934 using ::fputwc;
2935 using ::fputws;
2936 using ::fwide;
2937 using ::fwprintf;
2938 using ::fwscanf;
2939 using ::getwc;
2940 using ::getwchar;
2941 using ::mbrlen;
2942 using ::mbrtowc;
2943 using ::mbsinit;
2944 using ::mbsrtowcs;
2945 using ::putwc;
2946 using ::putwchar;
2947
2948 using ::swprintf;
2949
2950 using ::swscanf;
2951 using ::ungetwc;
2952 using ::vfwprintf;
2953
2954 using ::vfwscanf;
2955
2956
2957 using ::vswprintf;
2958
2959
2960 using ::vswscanf;
2961
2962 using ::vwprintf;
2963
2964 using ::vwscanf;
2965
2966 using ::wcrtomb;
2967 using ::wcscat;
2968 using ::wcscmp;
2969 using ::wcscoll;
2970 using ::wcscpy;
2971 using ::wcscspn;
2972 using ::wcsftime;
2973 using ::wcslen;
2974 using ::wcsncat;
2975 using ::wcsncmp;
2976 using ::wcsncpy;
2977 using ::wcsrtombs;
2978 using ::wcsspn;
2979 using ::wcstod;
2980
2981 using ::wcstof;
2982
2983 using ::wcstok;
2984 using ::wcstol;
2985 using ::wcstoul;
2986 using ::wcsxfrm;
2987 using ::wctob;
2988 using ::wmemcmp;
2989 using ::wmemcpy;
2990 using ::wmemmove;
2991 using ::wmemset;
2992 using ::wprintf;
2993 using ::wscanf;
2994 using ::wcschr;
2995 using ::wcspbrk;
2996 using ::wcsrchr;
2997 using ::wcsstr;
2998 using ::wmemchr;
2999 # 234 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/cwchar" 3
3000 }
3001
3002
3003
3004 #undef wcstold
3005 #undef wcstoll
3006 #undef wcstoull
3007
3008 namespace __gnu_cxx __attribute__ ((__visibility__ ("default"))) {
3009
3010
3011
3012
3013
3014
3015 using ::wcstold;
3016 # 258 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/cwchar" 3
3017 using ::wcstoll;
3018 using ::wcstoull;
3019
3020
3021 }
3022
3023 namespace std __attribute__ ((__visibility__ ("default"))) {
3024
3025 using ::__gnu_cxx::wcstold;
3026 using ::__gnu_cxx::wcstoll;
3027 using ::__gnu_cxx::wcstoull;
3028
3029 }
3030 # 43 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/postypes.h" 2 3
3031 # 70 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/postypes.h" 3
3032 namespace std __attribute__ ((__visibility__ ("default"))) {
3033 # 88 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/postypes.h" 3
3034 typedef long streamoff;
3035 # 98 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/postypes.h" 3
3036 typedef ptrdiff_t streamsize;
3037 # 111 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/postypes.h" 3
3038 template<typename _StateT>
3039 class fpos
3040 {
3041 private:
3042 streamoff _M_off;
3043 _StateT _M_state;
3044
3045 public:
3046
3047
3048
3049
3050 fpos()
3051 : _M_off(0), _M_state() { }
3052 # 133 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/postypes.h" 3
3053 fpos(streamoff __off)
3054 : _M_off(__off), _M_state() { }
3055
3056
3057 operator streamoff() const { return _M_off; }
3058
3059
3060 void
3061 state(_StateT __st)
3062 { _M_state = __st; }
3063
3064
3065 _StateT
3066 state() const
3067 { return _M_state; }
3068
3069
3070
3071
3072
3073 fpos&
3074 operator+=(streamoff __off)
3075 {
3076 _M_off += __off;
3077 return *this;
3078 }
3079
3080
3081
3082
3083
3084 fpos&
3085 operator-=(streamoff __off)
3086 {
3087 _M_off -= __off;
3088 return *this;
3089 }
3090
3091
3092
3093
3094
3095
3096
3097 fpos
3098 operator+(streamoff __off) const
3099 {
3100 fpos __pos(*this);
3101 __pos += __off;
3102 return __pos;
3103 }
3104
3105
3106
3107
3108
3109
3110
3111 fpos
3112 operator-(streamoff __off) const
3113 {
3114 fpos __pos(*this);
3115 __pos -= __off;
3116 return __pos;
3117 }
3118
3119
3120
3121
3122
3123
3124 streamoff
3125 operator-(const fpos& __other) const
3126 { return _M_off - __other._M_off; }
3127 };
3128
3129
3130
3131
3132
3133
3134 template<typename _StateT>
3135 inline bool
3136 operator==(const fpos<_StateT>& __lhs, const fpos<_StateT>& __rhs)
3137 { return streamoff(__lhs) == streamoff(__rhs); }
3138
3139 template<typename _StateT>
3140 inline bool
3141 operator!=(const fpos<_StateT>& __lhs, const fpos<_StateT>& __rhs)
3142 { return streamoff(__lhs) != streamoff(__rhs); }
3143
3144
3145
3146
3147
3148 typedef fpos<mbstate_t> streampos;
3149
3150 typedef fpos<mbstate_t> wstreampos;
3151 # 239 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/postypes.h" 3
3152 }
3153 # 43 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/iosfwd" 2 3
3154
3155 namespace std __attribute__ ((__visibility__ ("default"))) {
3156 # 74 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/iosfwd" 3
3157 class ios_base;
3158
3159 template<typename _CharT, typename _Traits = char_traits<_CharT> >
3160 class basic_ios;
3161
3162 template<typename _CharT, typename _Traits = char_traits<_CharT> >
3163 class basic_streambuf;
3164
3165 template<typename _CharT, typename _Traits = char_traits<_CharT> >
3166 class basic_istream;
3167
3168 template<typename _CharT, typename _Traits = char_traits<_CharT> >
3169 class basic_ostream;
3170
3171 template<typename _CharT, typename _Traits = char_traits<_CharT> >
3172 class basic_iostream;
3173
3174 template<typename _CharT, typename _Traits = char_traits<_CharT>,
3175 typename _Alloc = allocator<_CharT> >
3176 class basic_stringbuf;
3177
3178 template<typename _CharT, typename _Traits = char_traits<_CharT>,
3179 typename _Alloc = allocator<_CharT> >
3180 class basic_istringstream;
3181
3182 template<typename _CharT, typename _Traits = char_traits<_CharT>,
3183 typename _Alloc = allocator<_CharT> >
3184 class basic_ostringstream;
3185
3186 template<typename _CharT, typename _Traits = char_traits<_CharT>,
3187 typename _Alloc = allocator<_CharT> >
3188 class basic_stringstream;
3189
3190 template<typename _CharT, typename _Traits = char_traits<_CharT> >
3191 class basic_filebuf;
3192
3193 template<typename _CharT, typename _Traits = char_traits<_CharT> >
3194 class basic_ifstream;
3195
3196 template<typename _CharT, typename _Traits = char_traits<_CharT> >
3197 class basic_ofstream;
3198
3199 template<typename _CharT, typename _Traits = char_traits<_CharT> >
3200 class basic_fstream;
3201
3202 template<typename _CharT, typename _Traits = char_traits<_CharT> >
3203 class istreambuf_iterator;
3204
3205 template<typename _CharT, typename _Traits = char_traits<_CharT> >
3206 class ostreambuf_iterator;
3207
3208
3209
3210
3211 typedef basic_ios<char> ios;
3212 typedef basic_streambuf<char> streambuf;
3213 typedef basic_istream<char> istream;
3214 typedef basic_ostream<char> ostream;
3215 typedef basic_iostream<char> iostream;
3216 typedef basic_stringbuf<char> stringbuf;
3217 typedef basic_istringstream<char> istringstream;
3218 typedef basic_ostringstream<char> ostringstream;
3219 typedef basic_stringstream<char> stringstream;
3220 typedef basic_filebuf<char> filebuf;
3221 typedef basic_ifstream<char> ifstream;
3222 typedef basic_ofstream<char> ofstream;
3223 typedef basic_fstream<char> fstream;
3224
3225
3226 typedef basic_ios<wchar_t> wios;
3227 typedef basic_streambuf<wchar_t> wstreambuf;
3228 typedef basic_istream<wchar_t> wistream;
3229 typedef basic_ostream<wchar_t> wostream;
3230 typedef basic_iostream<wchar_t> wiostream;
3231 typedef basic_stringbuf<wchar_t> wstringbuf;
3232 typedef basic_istringstream<wchar_t> wistringstream;
3233 typedef basic_ostringstream<wchar_t> wostringstream;
3234 typedef basic_stringstream<wchar_t> wstringstream;
3235 typedef basic_filebuf<wchar_t> wfilebuf;
3236 typedef basic_ifstream<wchar_t> wifstream;
3237 typedef basic_ofstream<wchar_t> wofstream;
3238 typedef basic_fstream<wchar_t> wfstream;
3239
3240
3241
3242 }
3243 # 40 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/ios" 2 3
3244 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/exception" 1 3
3245 # 33 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/exception" 3
3246 #define __EXCEPTION__
3247
3248
3249 # 36 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/exception" 3
3250
3251 #pragma GCC visibility push(default)
3252
3253
3254
3255 extern "C++" {
3256
3257 namespace std
3258 {
3259 # 61 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/exception" 3
3260 class exception
3261 {
3262 public:
3263 exception() throw() { }
3264 virtual ~exception() throw();
3265
3266
3267
3268 virtual const char* what() const throw();
3269 };
3270
3271
3272
3273 class bad_exception : public exception
3274 {
3275 public:
3276 bad_exception() throw() { }
3277
3278
3279
3280 virtual ~bad_exception() throw();
3281
3282
3283 virtual const char* what() const throw();
3284 };
3285
3286
3287 typedef void (*terminate_handler) ();
3288
3289
3290 typedef void (*unexpected_handler) ();
3291
3292
3293 terminate_handler set_terminate(terminate_handler) throw();
3294
3295
3296
3297 void terminate() throw() __attribute__ ((__noreturn__));
3298
3299
3300 unexpected_handler set_unexpected(unexpected_handler) throw();
3301
3302
3303
3304 void unexpected() __attribute__ ((__noreturn__));
3305 # 118 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/exception" 3
3306 bool uncaught_exception() throw() __attribute__ ((__pure__));
3307
3308
3309 }
3310
3311 namespace __gnu_cxx __attribute__ ((__visibility__ ("default"))) {
3312 # 141 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/exception" 3
3313 void __verbose_terminate_handler();
3314
3315 }
3316
3317 }
3318
3319 #pragma GCC visibility pop
3320 # 41 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/ios" 2 3
3321 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/char_traits.h" 1 3
3322 # 37 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/char_traits.h" 3
3323 #define _CHAR_TRAITS_H 1
3324
3325
3326 # 40 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/char_traits.h" 3
3327
3328 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_algobase.h" 1 3
3329 # 58 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_algobase.h" 3
3330 #define _STL_ALGOBASE_H 1
3331
3332
3333 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/cstddef" 1 3
3334 # 41 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/cstddef" 3
3335
3336 # 42 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/cstddef" 3
3337
3338
3339 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 1 3 4
3340 # 45 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/cstddef" 2 3
3341 # 62 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_algobase.h" 2 3
3342 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/functexcept.h" 1 3
3343 # 34 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/functexcept.h" 3
3344 #define _FUNCTEXCEPT_H 1
3345
3346
3347 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/exception_defines.h" 1 3
3348 # 35 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/exception_defines.h" 3
3349 #define _EXCEPTION_DEFINES_H 1
3350 # 44 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/exception_defines.h" 3
3351 #define __try try
3352 #define __catch(X) catch(X)
3353 #define __throw_exception_again throw
3354 # 38 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/functexcept.h" 2 3
3355
3356 namespace std __attribute__ ((__visibility__ ("default"))) {
3357
3358
3359 void
3360 __throw_bad_exception(void) __attribute__((__noreturn__));
3361
3362
3363 void
3364 __throw_bad_alloc(void) __attribute__((__noreturn__));
3365
3366
3367 void
3368 __throw_bad_cast(void) __attribute__((__noreturn__));
3369
3370 void
3371 __throw_bad_typeid(void) __attribute__((__noreturn__));
3372
3373
3374 void
3375 __throw_logic_error(const char*) __attribute__((__noreturn__));
3376
3377 void
3378 __throw_domain_error(const char*) __attribute__((__noreturn__));
3379
3380 void
3381 __throw_invalid_argument(const char*) __attribute__((__noreturn__));
3382
3383 void
3384 __throw_length_error(const char*) __attribute__((__noreturn__));
3385
3386 void
3387 __throw_out_of_range(const char*) __attribute__((__noreturn__));
3388
3389 void
3390 __throw_runtime_error(const char*) __attribute__((__noreturn__));
3391
3392 void
3393 __throw_range_error(const char*) __attribute__((__noreturn__));
3394
3395 void
3396 __throw_overflow_error(const char*) __attribute__((__noreturn__));
3397
3398 void
3399 __throw_underflow_error(const char*) __attribute__((__noreturn__));
3400
3401
3402 void
3403 __throw_ios_failure(const char*) __attribute__((__noreturn__));
3404
3405 void
3406 __throw_system_error(int) __attribute__((__noreturn__));
3407
3408 void
3409 __throw_future_error(int) __attribute__((__noreturn__));
3410
3411
3412 void
3413 __throw_bad_function_call() __attribute__((__noreturn__));
3414
3415 }
3416 # 63 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_algobase.h" 2 3
3417 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/cpp_type_traits.h" 1 3
3418 # 34 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/cpp_type_traits.h" 3
3419 #define _CPP_TYPE_TRAITS_H 1
3420
3421
3422 # 37 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/cpp_type_traits.h" 3
3423 # 69 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/cpp_type_traits.h" 3
3424 namespace __gnu_cxx __attribute__ ((__visibility__ ("default"))) {
3425
3426 template<typename _Iterator, typename _Container>
3427 class __normal_iterator;
3428
3429 }
3430
3431 namespace std __attribute__ ((__visibility__ ("default"))) {
3432
3433 struct __true_type { };
3434 struct __false_type { };
3435
3436 template<bool>
3437 struct __truth_type
3438 { typedef __false_type __type; };
3439
3440 template<>
3441 struct __truth_type<true>
3442 { typedef __true_type __type; };
3443
3444
3445
3446 template<class _Sp, class _Tp>
3447 struct __traitor
3448 {
3449 enum { __value = bool(_Sp::__value) || bool(_Tp::__value) };
3450 typedef typename __truth_type<__value>::__type __type;
3451 };
3452
3453
3454 template<typename, typename>
3455 struct __are_same
3456 {
3457 enum { __value = 0 };
3458 typedef __false_type __type;
3459 };
3460
3461 template<typename _Tp>
3462 struct __are_same<_Tp, _Tp>
3463 {
3464 enum { __value = 1 };
3465 typedef __true_type __type;
3466 };
3467
3468
3469 template<typename _Tp>
3470 struct __is_void
3471 {
3472 enum { __value = 0 };
3473 typedef __false_type __type;
3474 };
3475
3476 template<>
3477 struct __is_void<void>
3478 {
3479 enum { __value = 1 };
3480 typedef __true_type __type;
3481 };
3482
3483
3484
3485
3486 template<typename _Tp>
3487 struct __is_integer
3488 {
3489 enum { __value = 0 };
3490 typedef __false_type __type;
3491 };
3492
3493
3494
3495
3496 template<>
3497 struct __is_integer<bool>
3498 {
3499 enum { __value = 1 };
3500 typedef __true_type __type;
3501 };
3502
3503 template<>
3504 struct __is_integer<char>
3505 {
3506 enum { __value = 1 };
3507 typedef __true_type __type;
3508 };
3509
3510 template<>
3511 struct __is_integer<signed char>
3512 {
3513 enum { __value = 1 };
3514 typedef __true_type __type;
3515 };
3516
3517 template<>
3518 struct __is_integer<unsigned char>
3519 {
3520 enum { __value = 1 };
3521 typedef __true_type __type;
3522 };
3523
3524
3525 template<>
3526 struct __is_integer<wchar_t>
3527 {
3528 enum { __value = 1 };
3529 typedef __true_type __type;
3530 };
3531 # 194 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/cpp_type_traits.h" 3
3532 template<>
3533 struct __is_integer<short>
3534 {
3535 enum { __value = 1 };
3536 typedef __true_type __type;
3537 };
3538
3539 template<>
3540 struct __is_integer<unsigned short>
3541 {
3542 enum { __value = 1 };
3543 typedef __true_type __type;
3544 };
3545
3546 template<>
3547 struct __is_integer<int>
3548 {
3549 enum { __value = 1 };
3550 typedef __true_type __type;
3551 };
3552
3553 template<>
3554 struct __is_integer<unsigned int>
3555 {
3556 enum { __value = 1 };
3557 typedef __true_type __type;
3558 };
3559
3560 template<>
3561 struct __is_integer<long>
3562 {
3563 enum { __value = 1 };
3564 typedef __true_type __type;
3565 };
3566
3567 template<>
3568 struct __is_integer<unsigned long>
3569 {
3570 enum { __value = 1 };
3571 typedef __true_type __type;
3572 };
3573
3574 template<>
3575 struct __is_integer<long long>
3576 {
3577 enum { __value = 1 };
3578 typedef __true_type __type;
3579 };
3580
3581 template<>
3582 struct __is_integer<unsigned long long>
3583 {
3584 enum { __value = 1 };
3585 typedef __true_type __type;
3586 };
3587
3588
3589
3590
3591 template<typename _Tp>
3592 struct __is_floating
3593 {
3594 enum { __value = 0 };
3595 typedef __false_type __type;
3596 };
3597
3598
3599 template<>
3600 struct __is_floating<float>
3601 {
3602 enum { __value = 1 };
3603 typedef __true_type __type;
3604 };
3605
3606 template<>
3607 struct __is_floating<double>
3608 {
3609 enum { __value = 1 };
3610 typedef __true_type __type;
3611 };
3612
3613 template<>
3614 struct __is_floating<long double>
3615 {
3616 enum { __value = 1 };
3617 typedef __true_type __type;
3618 };
3619
3620
3621
3622
3623 template<typename _Tp>
3624 struct __is_pointer
3625 {
3626 enum { __value = 0 };
3627 typedef __false_type __type;
3628 };
3629
3630 template<typename _Tp>
3631 struct __is_pointer<_Tp*>
3632 {
3633 enum { __value = 1 };
3634 typedef __true_type __type;
3635 };
3636
3637
3638
3639
3640 template<typename _Tp>
3641 struct __is_normal_iterator
3642 {
3643 enum { __value = 0 };
3644 typedef __false_type __type;
3645 };
3646
3647 template<typename _Iterator, typename _Container>
3648 struct __is_normal_iterator< __gnu_cxx::__normal_iterator<_Iterator,
3649 _Container> >
3650 {
3651 enum { __value = 1 };
3652 typedef __true_type __type;
3653 };
3654
3655
3656
3657
3658 template<typename _Tp>
3659 struct __is_arithmetic
3660 : public __traitor<__is_integer<_Tp>, __is_floating<_Tp> >
3661 { };
3662
3663
3664
3665
3666 template<typename _Tp>
3667 struct __is_fundamental
3668 : public __traitor<__is_void<_Tp>, __is_arithmetic<_Tp> >
3669 { };
3670
3671
3672
3673
3674 template<typename _Tp>
3675 struct __is_scalar
3676 : public __traitor<__is_arithmetic<_Tp>, __is_pointer<_Tp> >
3677 { };
3678
3679
3680
3681
3682 template<typename _Tp>
3683 struct __is_char
3684 {
3685 enum { __value = 0 };
3686 typedef __false_type __type;
3687 };
3688
3689 template<>
3690 struct __is_char<char>
3691 {
3692 enum { __value = 1 };
3693 typedef __true_type __type;
3694 };
3695
3696
3697 template<>
3698 struct __is_char<wchar_t>
3699 {
3700 enum { __value = 1 };
3701 typedef __true_type __type;
3702 };
3703
3704
3705 template<typename _Tp>
3706 struct __is_byte
3707 {
3708 enum { __value = 0 };
3709 typedef __false_type __type;
3710 };
3711
3712 template<>
3713 struct __is_byte<char>
3714 {
3715 enum { __value = 1 };
3716 typedef __true_type __type;
3717 };
3718
3719 template<>
3720 struct __is_byte<signed char>
3721 {
3722 enum { __value = 1 };
3723 typedef __true_type __type;
3724 };
3725
3726 template<>
3727 struct __is_byte<unsigned char>
3728 {
3729 enum { __value = 1 };
3730 typedef __true_type __type;
3731 };
3732
3733
3734
3735
3736 template<typename _Tp>
3737 struct __is_move_iterator
3738 {
3739 enum { __value = 0 };
3740 typedef __false_type __type;
3741 };
3742 # 417 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/cpp_type_traits.h" 3
3743 template<typename _Tp>
3744 class __is_iterator_helper
3745 {
3746 typedef char __one;
3747 typedef struct { char __arr[2]; } __two;
3748
3749 template<typename _Up>
3750 struct _Wrap_type
3751 { };
3752
3753 template<typename _Up>
3754 static __one __test(_Wrap_type<typename _Up::iterator_category>*);
3755
3756 template<typename _Up>
3757 static __two __test(...);
3758
3759 public:
3760 static const bool __value = (sizeof(__test<_Tp>(0)) == 1
3761 || __is_pointer<_Tp>::__value);
3762 };
3763
3764 template<typename _Tp>
3765 struct __is_iterator
3766 {
3767 enum { __value = __is_iterator_helper<_Tp>::__value };
3768 typedef typename __truth_type<__value>::__type __type;
3769 };
3770
3771 }
3772 # 64 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_algobase.h" 2 3
3773 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/ext/type_traits.h" 1 3
3774 # 30 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/ext/type_traits.h" 3
3775 #define _EXT_TYPE_TRAITS 1
3776
3777
3778 # 33 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/ext/type_traits.h" 3
3779
3780
3781
3782
3783 namespace __gnu_cxx __attribute__ ((__visibility__ ("default"))) {
3784
3785
3786 template<bool, typename>
3787 struct __enable_if
3788 { };
3789
3790 template<typename _Tp>
3791 struct __enable_if<true, _Tp>
3792 { typedef _Tp __type; };
3793
3794
3795
3796 template<bool _Cond, typename _Iftrue, typename _Iffalse>
3797 struct __conditional_type
3798 { typedef _Iftrue __type; };
3799
3800 template<typename _Iftrue, typename _Iffalse>
3801 struct __conditional_type<false, _Iftrue, _Iffalse>
3802 { typedef _Iffalse __type; };
3803
3804
3805
3806 template<typename _Tp>
3807 struct __add_unsigned
3808 {
3809 private:
3810 typedef __enable_if<std::__is_integer<_Tp>::__value, _Tp> __if_type;
3811
3812 public:
3813 typedef typename __if_type::__type __type;
3814 };
3815
3816 template<>
3817 struct __add_unsigned<char>
3818 { typedef unsigned char __type; };
3819
3820 template<>
3821 struct __add_unsigned<signed char>
3822 { typedef unsigned char __type; };
3823
3824 template<>
3825 struct __add_unsigned<short>
3826 { typedef unsigned short __type; };
3827
3828 template<>
3829 struct __add_unsigned<int>
3830 { typedef unsigned int __type; };
3831
3832 template<>
3833 struct __add_unsigned<long>
3834 { typedef unsigned long __type; };
3835
3836 template<>
3837 struct __add_unsigned<long long>
3838 { typedef unsigned long long __type; };
3839
3840
3841 template<>
3842 struct __add_unsigned<bool>;
3843
3844 template<>
3845 struct __add_unsigned<wchar_t>;
3846
3847
3848
3849 template<typename _Tp>
3850 struct __remove_unsigned
3851 {
3852 private:
3853 typedef __enable_if<std::__is_integer<_Tp>::__value, _Tp> __if_type;
3854
3855 public:
3856 typedef typename __if_type::__type __type;
3857 };
3858
3859 template<>
3860 struct __remove_unsigned<char>
3861 { typedef signed char __type; };
3862
3863 template<>
3864 struct __remove_unsigned<unsigned char>
3865 { typedef signed char __type; };
3866
3867 template<>
3868 struct __remove_unsigned<unsigned short>
3869 { typedef short __type; };
3870
3871 template<>
3872 struct __remove_unsigned<unsigned int>
3873 { typedef int __type; };
3874
3875 template<>
3876 struct __remove_unsigned<unsigned long>
3877 { typedef long __type; };
3878
3879 template<>
3880 struct __remove_unsigned<unsigned long long>
3881 { typedef long long __type; };
3882
3883
3884 template<>
3885 struct __remove_unsigned<bool>;
3886
3887 template<>
3888 struct __remove_unsigned<wchar_t>;
3889
3890
3891
3892 template<typename _Type>
3893 inline bool
3894 __is_null_pointer(_Type* __ptr)
3895 { return __ptr == 0; }
3896
3897 template<typename _Type>
3898 inline bool
3899 __is_null_pointer(_Type)
3900 { return false; }
3901
3902
3903
3904 template<typename _Tp, bool = std::__is_integer<_Tp>::__value>
3905 struct __promote
3906 { typedef double __type; };
3907
3908 template<typename _Tp>
3909 struct __promote<_Tp, false>
3910 { typedef _Tp __type; };
3911
3912 template<typename _Tp, typename _Up>
3913 struct __promote_2
3914 {
3915 private:
3916 typedef typename __promote<_Tp>::__type __type1;
3917 typedef typename __promote<_Up>::__type __type2;
3918
3919 public:
3920 typedef __typeof__(__type1() + __type2()) __type;
3921 };
3922
3923 template<typename _Tp, typename _Up, typename _Vp>
3924 struct __promote_3
3925 {
3926 private:
3927 typedef typename __promote<_Tp>::__type __type1;
3928 typedef typename __promote<_Up>::__type __type2;
3929 typedef typename __promote<_Vp>::__type __type3;
3930
3931 public:
3932 typedef __typeof__(__type1() + __type2() + __type3()) __type;
3933 };
3934
3935 template<typename _Tp, typename _Up, typename _Vp, typename _Wp>
3936 struct __promote_4
3937 {
3938 private:
3939 typedef typename __promote<_Tp>::__type __type1;
3940 typedef typename __promote<_Up>::__type __type2;
3941 typedef typename __promote<_Vp>::__type __type3;
3942 typedef typename __promote<_Wp>::__type __type4;
3943
3944 public:
3945 typedef __typeof__(__type1() + __type2() + __type3() + __type4()) __type;
3946 };
3947
3948 }
3949 # 65 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_algobase.h" 2 3
3950 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/ext/numeric_traits.h" 1 3
3951 # 30 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/ext/numeric_traits.h" 3
3952 #define _EXT_NUMERIC_TRAITS 1
3953
3954
3955 # 33 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/ext/numeric_traits.h" 3
3956
3957
3958
3959
3960 namespace __gnu_cxx __attribute__ ((__visibility__ ("default"))) {
3961
3962
3963
3964 #define __glibcxx_signed(_Tp) ((_Tp)(-1) < 0)
3965 #define __glibcxx_digits(_Tp) (sizeof(_Tp) * __CHAR_BIT__ - __glibcxx_signed(_Tp))
3966
3967
3968 #define __glibcxx_min(_Tp) (__glibcxx_signed(_Tp) ? (_Tp)1 << __glibcxx_digits(_Tp) : (_Tp)0)
3969
3970
3971 #define __glibcxx_max(_Tp) (__glibcxx_signed(_Tp) ? (((((_Tp)1 << (__glibcxx_digits(_Tp) - 1)) - 1) << 1) + 1) : ~(_Tp)0)
3972
3973
3974
3975 template<typename _Value>
3976 struct __numeric_traits_integer
3977 {
3978
3979 static const _Value __min = (((_Value)(-1) < 0) ? (_Value)1 << (sizeof(_Value) * 8 - ((_Value)(-1) < 0)) : (_Value)0);
3980 static const _Value __max = (((_Value)(-1) < 0) ? (((((_Value)1 << ((sizeof(_Value) * 8 - ((_Value)(-1) < 0)) - 1)) - 1) << 1) + 1) : ~(_Value)0);
3981
3982
3983
3984 static const bool __is_signed = ((_Value)(-1) < 0);
3985 static const int __digits = (sizeof(_Value) * 8 - ((_Value)(-1) < 0));
3986 };
3987
3988 template<typename _Value>
3989 const _Value __numeric_traits_integer<_Value>::__min;
3990
3991 template<typename _Value>
3992 const _Value __numeric_traits_integer<_Value>::__max;
3993
3994 template<typename _Value>
3995 const bool __numeric_traits_integer<_Value>::__is_signed;
3996
3997 template<typename _Value>
3998 const int __numeric_traits_integer<_Value>::__digits;
3999
4000 #undef __glibcxx_signed
4001 #undef __glibcxx_digits
4002 #undef __glibcxx_min
4003 #undef __glibcxx_max
4004
4005 #define __glibcxx_floating(_Tp,_Fval,_Dval,_LDval) (std::__are_same<_Tp, float>::__value ? _Fval : std::__are_same<_Tp, double>::__value ? _Dval : _LDval)
4006
4007
4008
4009 #define __glibcxx_max_digits10(_Tp) (2 + __glibcxx_floating(_Tp, __FLT_MANT_DIG__, __DBL_MANT_DIG__, __LDBL_MANT_DIG__) * 3010 / 10000)
4010
4011
4012
4013 #define __glibcxx_digits10(_Tp) __glibcxx_floating(_Tp, __FLT_DIG__, __DBL_DIG__, __LDBL_DIG__)
4014
4015
4016 #define __glibcxx_max_exponent10(_Tp) __glibcxx_floating(_Tp, __FLT_MAX_10_EXP__, __DBL_MAX_10_EXP__, __LDBL_MAX_10_EXP__)
4017
4018
4019
4020 template<typename _Value>
4021 struct __numeric_traits_floating
4022 {
4023
4024 static const int __max_digits10 = (2 + (std::__are_same<_Value, float>::__value ? 24 : std::__are_same<_Value, double>::__value ? 53 : 64) * 3010 / 10000);
4025
4026
4027 static const bool __is_signed = true;
4028 static const int __digits10 = (std::__are_same<_Value, float>::__value ? 6 : std::__are_same<_Value, double>::__value ? 15 : 18);
4029 static const int __max_exponent10 = (std::__are_same<_Value, float>::__value ? 38 : std::__are_same<_Value, double>::__value ? 308 : 4932);
4030 };
4031
4032 template<typename _Value>
4033 const int __numeric_traits_floating<_Value>::__max_digits10;
4034
4035 template<typename _Value>
4036 const bool __numeric_traits_floating<_Value>::__is_signed;
4037
4038 template<typename _Value>
4039 const int __numeric_traits_floating<_Value>::__digits10;
4040
4041 template<typename _Value>
4042 const int __numeric_traits_floating<_Value>::__max_exponent10;
4043
4044 template<typename _Value>
4045 struct __numeric_traits
4046 : public __conditional_type<std::__is_integer<_Value>::__value,
4047 __numeric_traits_integer<_Value>,
4048 __numeric_traits_floating<_Value> >::__type
4049 { };
4050
4051 }
4052
4053 #undef __glibcxx_floating
4054 #undef __glibcxx_max_digits10
4055 #undef __glibcxx_digits10
4056 #undef __glibcxx_max_exponent10
4057 # 66 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_algobase.h" 2 3
4058 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_pair.h" 1 3
4059 # 58 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_pair.h" 3
4060 #define _STL_PAIR_H 1
4061
4062 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/move.h" 1 3
4063 # 31 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/move.h" 3
4064 #define _MOVE_H 1
4065
4066
4067 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/cstddef" 1 3
4068 # 41 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/cstddef" 3
4069
4070 # 42 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/cstddef" 3
4071
4072
4073 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 1 3 4
4074 # 45 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/cstddef" 2 3
4075 # 35 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/move.h" 2 3
4076 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/concept_check.h" 1 3
4077 # 31 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/concept_check.h" 3
4078 #define _CONCEPT_CHECK_H 1
4079
4080
4081 # 34 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/concept_check.h" 3
4082 # 47 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/concept_check.h" 3
4083 #define __glibcxx_function_requires(...)
4084 #define __glibcxx_class_requires(_a,_b)
4085 #define __glibcxx_class_requires2(_a,_b,_c)
4086 #define __glibcxx_class_requires3(_a,_b,_c,_d)
4087 #define __glibcxx_class_requires4(_a,_b,_c,_d,_e)
4088 # 36 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/move.h" 2 3
4089 # 91 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/move.h" 3
4090 #define _GLIBCXX_MOVE(_Tp) (_Tp)
4091 #define _GLIBCXX_FORWARD(_Tp,__val) (__val)
4092
4093
4094 namespace std __attribute__ ((__visibility__ ("default"))) {
4095 # 104 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/move.h" 3
4096 template<typename _Tp>
4097 inline void
4098 swap(_Tp& __a, _Tp& __b)
4099 {
4100
4101
4102
4103 _Tp __tmp = (__a);
4104 __a = (__b);
4105 __b = (__tmp);
4106 }
4107
4108
4109
4110 template<typename _Tp, size_t _Nm>
4111 inline void
4112 swap(_Tp (&__a)[_Nm], _Tp (&__b)[_Nm])
4113 {
4114 for (size_t __n = 0; __n < _Nm; ++__n)
4115 swap(__a[__n], __b[__n]);
4116 }
4117
4118 }
4119 # 61 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_pair.h" 2 3
4120
4121
4122
4123
4124
4125
4126 namespace std __attribute__ ((__visibility__ ("default"))) {
4127
4128
4129 template<class _T1, class _T2>
4130 struct pair
4131 {
4132 typedef _T1 first_type;
4133 typedef _T2 second_type;
4134
4135 _T1 first;
4136 _T2 second;
4137
4138
4139
4140
4141
4142 pair()
4143 : first(), second() { }
4144
4145
4146 pair(const _T1& __a, const _T2& __b)
4147 : first(__a), second(__b) { }
4148 # 113 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_pair.h" 3
4149 template<class _U1, class _U2>
4150 pair(const pair<_U1, _U2>& __p)
4151 : first(__p.first),
4152 second(__p.second) { }
4153 # 149 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_pair.h" 3
4154 };
4155
4156
4157 template<class _T1, class _T2>
4158 inline bool
4159 operator==(const pair<_T1, _T2>& __x, const pair<_T1, _T2>& __y)
4160 { return __x.first == __y.first && __x.second == __y.second; }
4161
4162
4163 template<class _T1, class _T2>
4164 inline bool
4165 operator<(const pair<_T1, _T2>& __x, const pair<_T1, _T2>& __y)
4166 { return __x.first < __y.first
4167 || (!(__y.first < __x.first) && __x.second < __y.second); }
4168
4169
4170 template<class _T1, class _T2>
4171 inline bool
4172 operator!=(const pair<_T1, _T2>& __x, const pair<_T1, _T2>& __y)
4173 { return !(__x == __y); }
4174
4175
4176 template<class _T1, class _T2>
4177 inline bool
4178 operator>(const pair<_T1, _T2>& __x, const pair<_T1, _T2>& __y)
4179 { return __y < __x; }
4180
4181
4182 template<class _T1, class _T2>
4183 inline bool
4184 operator<=(const pair<_T1, _T2>& __x, const pair<_T1, _T2>& __y)
4185 { return !(__y < __x); }
4186
4187
4188 template<class _T1, class _T2>
4189 inline bool
4190 operator>=(const pair<_T1, _T2>& __x, const pair<_T1, _T2>& __y)
4191 { return !(__x < __y); }
4192 # 211 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_pair.h" 3
4193 template<class _T1, class _T2>
4194 inline pair<_T1, _T2>
4195 make_pair(_T1 __x, _T2 __y)
4196 { return pair<_T1, _T2>(__x, __y); }
4197 # 257 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_pair.h" 3
4198 }
4199 # 67 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_algobase.h" 2 3
4200 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_iterator_base_types.h" 1 3
4201 # 61 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_iterator_base_types.h" 3
4202 #define _STL_ITERATOR_BASE_TYPES_H 1
4203
4204
4205 # 64 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_iterator_base_types.h" 3
4206
4207
4208 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/cstddef" 1 3
4209 # 41 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/cstddef" 3
4210
4211 # 42 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/cstddef" 3
4212
4213
4214 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 1 3 4
4215 # 45 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/cstddef" 2 3
4216 # 67 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_iterator_base_types.h" 2 3
4217
4218 namespace std __attribute__ ((__visibility__ ("default"))) {
4219 # 85 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_iterator_base_types.h" 3
4220 struct input_iterator_tag { };
4221
4222
4223 struct output_iterator_tag { };
4224
4225
4226 struct forward_iterator_tag : public input_iterator_tag { };
4227
4228
4229
4230 struct bidirectional_iterator_tag : public forward_iterator_tag { };
4231
4232
4233
4234 struct random_access_iterator_tag : public bidirectional_iterator_tag { };
4235 # 112 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_iterator_base_types.h" 3
4236 template<typename _Category, typename _Tp, typename _Distance = ptrdiff_t,
4237 typename _Pointer = _Tp*, typename _Reference = _Tp&>
4238 struct iterator
4239 {
4240
4241 typedef _Category iterator_category;
4242
4243 typedef _Tp value_type;
4244
4245 typedef _Distance difference_type;
4246
4247 typedef _Pointer pointer;
4248
4249 typedef _Reference reference;
4250 };
4251 # 136 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_iterator_base_types.h" 3
4252 template<typename _Iterator>
4253 struct iterator_traits
4254 {
4255 typedef typename _Iterator::iterator_category iterator_category;
4256 typedef typename _Iterator::value_type value_type;
4257 typedef typename _Iterator::difference_type difference_type;
4258 typedef typename _Iterator::pointer pointer;
4259 typedef typename _Iterator::reference reference;
4260 };
4261
4262
4263 template<typename _Tp>
4264 struct iterator_traits<_Tp*>
4265 {
4266 typedef random_access_iterator_tag iterator_category;
4267 typedef _Tp value_type;
4268 typedef ptrdiff_t difference_type;
4269 typedef _Tp* pointer;
4270 typedef _Tp& reference;
4271 };
4272
4273
4274 template<typename _Tp>
4275 struct iterator_traits<const _Tp*>
4276 {
4277 typedef random_access_iterator_tag iterator_category;
4278 typedef _Tp value_type;
4279 typedef ptrdiff_t difference_type;
4280 typedef const _Tp* pointer;
4281 typedef const _Tp& reference;
4282 };
4283
4284
4285
4286
4287
4288 template<typename _Iter>
4289 inline typename iterator_traits<_Iter>::iterator_category
4290 __iterator_category(const _Iter&)
4291 { return typename iterator_traits<_Iter>::iterator_category(); }
4292
4293
4294
4295 }
4296 # 68 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_algobase.h" 2 3
4297 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_iterator_base_funcs.h" 1 3
4298 # 61 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_iterator_base_funcs.h" 3
4299 #define _STL_ITERATOR_BASE_FUNCS_H 1
4300
4301
4302 # 64 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_iterator_base_funcs.h" 3
4303
4304
4305
4306 namespace std __attribute__ ((__visibility__ ("default"))) {
4307
4308 template<typename _InputIterator>
4309 inline typename iterator_traits<_InputIterator>::difference_type
4310 __distance(_InputIterator __first, _InputIterator __last,
4311 input_iterator_tag)
4312 {
4313
4314
4315
4316 typename iterator_traits<_InputIterator>::difference_type __n = 0;
4317 while (__first != __last)
4318 {
4319 ++__first;
4320 ++__n;
4321 }
4322 return __n;
4323 }
4324
4325 template<typename _RandomAccessIterator>
4326 inline typename iterator_traits<_RandomAccessIterator>::difference_type
4327 __distance(_RandomAccessIterator __first, _RandomAccessIterator __last,
4328 random_access_iterator_tag)
4329 {
4330
4331
4332
4333 return __last - __first;
4334 }
4335 # 109 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_iterator_base_funcs.h" 3
4336 template<typename _InputIterator>
4337 inline typename iterator_traits<_InputIterator>::difference_type
4338 distance(_InputIterator __first, _InputIterator __last)
4339 {
4340
4341 return std::__distance(__first, __last,
4342 std::__iterator_category(__first));
4343 }
4344
4345 template<typename _InputIterator, typename _Distance>
4346 inline void
4347 __advance(_InputIterator& __i, _Distance __n, input_iterator_tag)
4348 {
4349
4350
4351 while (__n--)
4352 ++__i;
4353 }
4354
4355 template<typename _BidirectionalIterator, typename _Distance>
4356 inline void
4357 __advance(_BidirectionalIterator& __i, _Distance __n,
4358 bidirectional_iterator_tag)
4359 {
4360
4361
4362
4363 if (__n > 0)
4364 while (__n--)
4365 ++__i;
4366 else
4367 while (__n++)
4368 --__i;
4369 }
4370
4371 template<typename _RandomAccessIterator, typename _Distance>
4372 inline void
4373 __advance(_RandomAccessIterator& __i, _Distance __n,
4374 random_access_iterator_tag)
4375 {
4376
4377
4378
4379 __i += __n;
4380 }
4381 # 167 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_iterator_base_funcs.h" 3
4382 template<typename _InputIterator, typename _Distance>
4383 inline void
4384 advance(_InputIterator& __i, _Distance __n)
4385 {
4386
4387 typename iterator_traits<_InputIterator>::difference_type __d = __n;
4388 std::__advance(__i, __d, std::__iterator_category(__i));
4389 }
4390
4391 }
4392 # 69 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_algobase.h" 2 3
4393 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_iterator.h" 1 3
4394 # 62 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_iterator.h" 3
4395 #define _STL_ITERATOR_H 1
4396
4397
4398
4399
4400
4401 namespace std __attribute__ ((__visibility__ ("default"))) {
4402 # 94 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_iterator.h" 3
4403 template<typename _Iterator>
4404 class reverse_iterator
4405 : public iterator<typename iterator_traits<_Iterator>::iterator_category,
4406 typename iterator_traits<_Iterator>::value_type,
4407 typename iterator_traits<_Iterator>::difference_type,
4408 typename iterator_traits<_Iterator>::pointer,
4409 typename iterator_traits<_Iterator>::reference>
4410 {
4411 protected:
4412 _Iterator current;
4413
4414 typedef iterator_traits<_Iterator> __traits_type;
4415
4416 public:
4417 typedef _Iterator iterator_type;
4418 typedef typename __traits_type::difference_type difference_type;
4419 typedef typename __traits_type::pointer pointer;
4420 typedef typename __traits_type::reference reference;
4421
4422
4423
4424
4425
4426
4427
4428 reverse_iterator() : current() { }
4429
4430
4431
4432
4433 explicit
4434 reverse_iterator(iterator_type __x) : current(__x) { }
4435
4436
4437
4438
4439 reverse_iterator(const reverse_iterator& __x)
4440 : current(__x.current) { }
4441
4442
4443
4444
4445
4446 template<typename _Iter>
4447 reverse_iterator(const reverse_iterator<_Iter>& __x)
4448 : current(__x.base()) { }
4449
4450
4451
4452
4453 iterator_type
4454 base() const
4455 { return current; }
4456
4457
4458
4459
4460
4461
4462 reference
4463 operator*() const
4464 {
4465 _Iterator __tmp = current;
4466 return *--__tmp;
4467 }
4468
4469
4470
4471
4472
4473
4474 pointer
4475 operator->() const
4476 { return &(operator*()); }
4477
4478
4479
4480
4481
4482
4483 reverse_iterator&
4484 operator++()
4485 {
4486 --current;
4487 return *this;
4488 }
4489
4490
4491
4492
4493
4494
4495 reverse_iterator
4496 operator++(int)
4497 {
4498 reverse_iterator __tmp = *this;
4499 --current;
4500 return __tmp;
4501 }
4502
4503
4504
4505
4506
4507
4508 reverse_iterator&
4509 operator--()
4510 {
4511 ++current;
4512 return *this;
4513 }
4514
4515
4516
4517
4518
4519
4520 reverse_iterator
4521 operator--(int)
4522 {
4523 reverse_iterator __tmp = *this;
4524 ++current;
4525 return __tmp;
4526 }
4527
4528
4529
4530
4531
4532
4533 reverse_iterator
4534 operator+(difference_type __n) const
4535 { return reverse_iterator(current - __n); }
4536
4537
4538
4539
4540
4541
4542 reverse_iterator&
4543 operator+=(difference_type __n)
4544 {
4545 current -= __n;
4546 return *this;
4547 }
4548
4549
4550
4551
4552
4553
4554 reverse_iterator
4555 operator-(difference_type __n) const
4556 { return reverse_iterator(current + __n); }
4557
4558
4559
4560
4561
4562
4563 reverse_iterator&
4564 operator-=(difference_type __n)
4565 {
4566 current += __n;
4567 return *this;
4568 }
4569
4570
4571
4572
4573
4574
4575 reference
4576 operator[](difference_type __n) const
4577 { return *(*this + __n); }
4578 };
4579 # 281 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_iterator.h" 3
4580 template<typename _Iterator>
4581 inline bool
4582 operator==(const reverse_iterator<_Iterator>& __x,
4583 const reverse_iterator<_Iterator>& __y)
4584 { return __x.base() == __y.base(); }
4585
4586 template<typename _Iterator>
4587 inline bool
4588 operator<(const reverse_iterator<_Iterator>& __x,
4589 const reverse_iterator<_Iterator>& __y)
4590 { return __y.base() < __x.base(); }
4591
4592 template<typename _Iterator>
4593 inline bool
4594 operator!=(const reverse_iterator<_Iterator>& __x,
4595 const reverse_iterator<_Iterator>& __y)
4596 { return !(__x == __y); }
4597
4598 template<typename _Iterator>
4599 inline bool
4600 operator>(const reverse_iterator<_Iterator>& __x,
4601 const reverse_iterator<_Iterator>& __y)
4602 { return __y < __x; }
4603
4604 template<typename _Iterator>
4605 inline bool
4606 operator<=(const reverse_iterator<_Iterator>& __x,
4607 const reverse_iterator<_Iterator>& __y)
4608 { return !(__y < __x); }
4609
4610 template<typename _Iterator>
4611 inline bool
4612 operator>=(const reverse_iterator<_Iterator>& __x,
4613 const reverse_iterator<_Iterator>& __y)
4614 { return !(__x < __y); }
4615
4616 template<typename _Iterator>
4617 inline typename reverse_iterator<_Iterator>::difference_type
4618 operator-(const reverse_iterator<_Iterator>& __x,
4619 const reverse_iterator<_Iterator>& __y)
4620 { return __y.base() - __x.base(); }
4621
4622 template<typename _Iterator>
4623 inline reverse_iterator<_Iterator>
4624 operator+(typename reverse_iterator<_Iterator>::difference_type __n,
4625 const reverse_iterator<_Iterator>& __x)
4626 { return reverse_iterator<_Iterator>(__x.base() - __n); }
4627
4628
4629
4630 template<typename _IteratorL, typename _IteratorR>
4631 inline bool
4632 operator==(const reverse_iterator<_IteratorL>& __x,
4633 const reverse_iterator<_IteratorR>& __y)
4634 { return __x.base() == __y.base(); }
4635
4636 template<typename _IteratorL, typename _IteratorR>
4637 inline bool
4638 operator<(const reverse_iterator<_IteratorL>& __x,
4639 const reverse_iterator<_IteratorR>& __y)
4640 { return __y.base() < __x.base(); }
4641
4642 template<typename _IteratorL, typename _IteratorR>
4643 inline bool
4644 operator!=(const reverse_iterator<_IteratorL>& __x,
4645 const reverse_iterator<_IteratorR>& __y)
4646 { return !(__x == __y); }
4647
4648 template<typename _IteratorL, typename _IteratorR>
4649 inline bool
4650 operator>(const reverse_iterator<_IteratorL>& __x,
4651 const reverse_iterator<_IteratorR>& __y)
4652 { return __y < __x; }
4653
4654 template<typename _IteratorL, typename _IteratorR>
4655 inline bool
4656 operator<=(const reverse_iterator<_IteratorL>& __x,
4657 const reverse_iterator<_IteratorR>& __y)
4658 { return !(__y < __x); }
4659
4660 template<typename _IteratorL, typename _IteratorR>
4661 inline bool
4662 operator>=(const reverse_iterator<_IteratorL>& __x,
4663 const reverse_iterator<_IteratorR>& __y)
4664 { return !(__x < __y); }
4665
4666 template<typename _IteratorL, typename _IteratorR>
4667
4668
4669
4670
4671
4672
4673
4674 inline typename reverse_iterator<_IteratorL>::difference_type
4675 operator-(const reverse_iterator<_IteratorL>& __x,
4676 const reverse_iterator<_IteratorR>& __y)
4677
4678 { return __y.base() - __x.base(); }
4679 # 393 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_iterator.h" 3
4680 template<typename _Container>
4681 class back_insert_iterator
4682 : public iterator<output_iterator_tag, void, void, void, void>
4683 {
4684 protected:
4685 _Container* container;
4686
4687 public:
4688
4689 typedef _Container container_type;
4690
4691
4692 explicit
4693 back_insert_iterator(_Container& __x) : container(&__x) { }
4694 # 420 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_iterator.h" 3
4695 back_insert_iterator&
4696 operator=(typename _Container::const_reference __value)
4697 {
4698 container->push_back(__value);
4699 return *this;
4700 }
4701 # 443 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_iterator.h" 3
4702 back_insert_iterator&
4703 operator*()
4704 { return *this; }
4705
4706
4707 back_insert_iterator&
4708 operator++()
4709 { return *this; }
4710
4711
4712 back_insert_iterator
4713 operator++(int)
4714 { return *this; }
4715 };
4716 # 469 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_iterator.h" 3
4717 template<typename _Container>
4718 inline back_insert_iterator<_Container>
4719 back_inserter(_Container& __x)
4720 { return back_insert_iterator<_Container>(__x); }
4721 # 484 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_iterator.h" 3
4722 template<typename _Container>
4723 class front_insert_iterator
4724 : public iterator<output_iterator_tag, void, void, void, void>
4725 {
4726 protected:
4727 _Container* container;
4728
4729 public:
4730
4731 typedef _Container container_type;
4732
4733
4734 explicit front_insert_iterator(_Container& __x) : container(&__x) { }
4735 # 510 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_iterator.h" 3
4736 front_insert_iterator&
4737 operator=(typename _Container::const_reference __value)
4738 {
4739 container->push_front(__value);
4740 return *this;
4741 }
4742 # 533 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_iterator.h" 3
4743 front_insert_iterator&
4744 operator*()
4745 { return *this; }
4746
4747
4748 front_insert_iterator&
4749 operator++()
4750 { return *this; }
4751
4752
4753 front_insert_iterator
4754 operator++(int)
4755 { return *this; }
4756 };
4757 # 559 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_iterator.h" 3
4758 template<typename _Container>
4759 inline front_insert_iterator<_Container>
4760 front_inserter(_Container& __x)
4761 { return front_insert_iterator<_Container>(__x); }
4762 # 578 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_iterator.h" 3
4763 template<typename _Container>
4764 class insert_iterator
4765 : public iterator<output_iterator_tag, void, void, void, void>
4766 {
4767 protected:
4768 _Container* container;
4769 typename _Container::iterator iter;
4770
4771 public:
4772
4773 typedef _Container container_type;
4774
4775
4776
4777
4778
4779 insert_iterator(_Container& __x, typename _Container::iterator __i)
4780 : container(&__x), iter(__i) {}
4781 # 621 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_iterator.h" 3
4782 insert_iterator&
4783 operator=(typename _Container::const_reference __value)
4784 {
4785 iter = container->insert(iter, __value);
4786 ++iter;
4787 return *this;
4788 }
4789 # 647 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_iterator.h" 3
4790 insert_iterator&
4791 operator*()
4792 { return *this; }
4793
4794
4795 insert_iterator&
4796 operator++()
4797 { return *this; }
4798
4799
4800 insert_iterator&
4801 operator++(int)
4802 { return *this; }
4803 };
4804 # 673 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_iterator.h" 3
4805 template<typename _Container, typename _Iterator>
4806 inline insert_iterator<_Container>
4807 inserter(_Container& __x, _Iterator __i)
4808 {
4809 return insert_iterator<_Container>(__x,
4810 typename _Container::iterator(__i));
4811 }
4812
4813
4814
4815 }
4816
4817 namespace __gnu_cxx __attribute__ ((__visibility__ ("default"))) {
4818 # 694 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_iterator.h" 3
4819 using std::iterator_traits;
4820 using std::iterator;
4821 template<typename _Iterator, typename _Container>
4822 class __normal_iterator
4823 {
4824 protected:
4825 _Iterator _M_current;
4826
4827 typedef iterator_traits<_Iterator> __traits_type;
4828
4829 public:
4830 typedef _Iterator iterator_type;
4831 typedef typename __traits_type::iterator_category iterator_category;
4832 typedef typename __traits_type::value_type value_type;
4833 typedef typename __traits_type::difference_type difference_type;
4834 typedef typename __traits_type::reference reference;
4835 typedef typename __traits_type::pointer pointer;
4836
4837 __normal_iterator() : _M_current(_Iterator()) { }
4838
4839 explicit
4840 __normal_iterator(const _Iterator& __i) : _M_current(__i) { }
4841
4842
4843 template<typename _Iter>
4844 __normal_iterator(const __normal_iterator<_Iter,
4845 typename __enable_if<
4846 (std::__are_same<_Iter, typename _Container::pointer>::__value),
4847 _Container>::__type>& __i)
4848 : _M_current(__i.base()) { }
4849
4850
4851 reference
4852 operator*() const
4853 { return *_M_current; }
4854
4855 pointer
4856 operator->() const
4857 { return _M_current; }
4858
4859 __normal_iterator&
4860 operator++()
4861 {
4862 ++_M_current;
4863 return *this;
4864 }
4865
4866 __normal_iterator
4867 operator++(int)
4868 { return __normal_iterator(_M_current++); }
4869
4870
4871 __normal_iterator&
4872 operator--()
4873 {
4874 --_M_current;
4875 return *this;
4876 }
4877
4878 __normal_iterator
4879 operator--(int)
4880 { return __normal_iterator(_M_current--); }
4881
4882
4883 reference
4884 operator[](const difference_type& __n) const
4885 { return _M_current[__n]; }
4886
4887 __normal_iterator&
4888 operator+=(const difference_type& __n)
4889 { _M_current += __n; return *this; }
4890
4891 __normal_iterator
4892 operator+(const difference_type& __n) const
4893 { return __normal_iterator(_M_current + __n); }
4894
4895 __normal_iterator&
4896 operator-=(const difference_type& __n)
4897 { _M_current -= __n; return *this; }
4898
4899 __normal_iterator
4900 operator-(const difference_type& __n) const
4901 { return __normal_iterator(_M_current - __n); }
4902
4903 const _Iterator&
4904 base() const
4905 { return _M_current; }
4906 };
4907 # 792 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_iterator.h" 3
4908 template<typename _IteratorL, typename _IteratorR, typename _Container>
4909 inline bool
4910 operator==(const __normal_iterator<_IteratorL, _Container>& __lhs,
4911 const __normal_iterator<_IteratorR, _Container>& __rhs)
4912 { return __lhs.base() == __rhs.base(); }
4913
4914 template<typename _Iterator, typename _Container>
4915 inline bool
4916 operator==(const __normal_iterator<_Iterator, _Container>& __lhs,
4917 const __normal_iterator<_Iterator, _Container>& __rhs)
4918 { return __lhs.base() == __rhs.base(); }
4919
4920 template<typename _IteratorL, typename _IteratorR, typename _Container>
4921 inline bool
4922 operator!=(const __normal_iterator<_IteratorL, _Container>& __lhs,
4923 const __normal_iterator<_IteratorR, _Container>& __rhs)
4924 { return __lhs.base() != __rhs.base(); }
4925
4926 template<typename _Iterator, typename _Container>
4927 inline bool
4928 operator!=(const __normal_iterator<_Iterator, _Container>& __lhs,
4929 const __normal_iterator<_Iterator, _Container>& __rhs)
4930 { return __lhs.base() != __rhs.base(); }
4931
4932
4933 template<typename _IteratorL, typename _IteratorR, typename _Container>
4934 inline bool
4935 operator<(const __normal_iterator<_IteratorL, _Container>& __lhs,
4936 const __normal_iterator<_IteratorR, _Container>& __rhs)
4937 { return __lhs.base() < __rhs.base(); }
4938
4939 template<typename _Iterator, typename _Container>
4940 inline bool
4941 operator<(const __normal_iterator<_Iterator, _Container>& __lhs,
4942 const __normal_iterator<_Iterator, _Container>& __rhs)
4943 { return __lhs.base() < __rhs.base(); }
4944
4945 template<typename _IteratorL, typename _IteratorR, typename _Container>
4946 inline bool
4947 operator>(const __normal_iterator<_IteratorL, _Container>& __lhs,
4948 const __normal_iterator<_IteratorR, _Container>& __rhs)
4949 { return __lhs.base() > __rhs.base(); }
4950
4951 template<typename _Iterator, typename _Container>
4952 inline bool
4953 operator>(const __normal_iterator<_Iterator, _Container>& __lhs,
4954 const __normal_iterator<_Iterator, _Container>& __rhs)
4955 { return __lhs.base() > __rhs.base(); }
4956
4957 template<typename _IteratorL, typename _IteratorR, typename _Container>
4958 inline bool
4959 operator<=(const __normal_iterator<_IteratorL, _Container>& __lhs,
4960 const __normal_iterator<_IteratorR, _Container>& __rhs)
4961 { return __lhs.base() <= __rhs.base(); }
4962
4963 template<typename _Iterator, typename _Container>
4964 inline bool
4965 operator<=(const __normal_iterator<_Iterator, _Container>& __lhs,
4966 const __normal_iterator<_Iterator, _Container>& __rhs)
4967 { return __lhs.base() <= __rhs.base(); }
4968
4969 template<typename _IteratorL, typename _IteratorR, typename _Container>
4970 inline bool
4971 operator>=(const __normal_iterator<_IteratorL, _Container>& __lhs,
4972 const __normal_iterator<_IteratorR, _Container>& __rhs)
4973 { return __lhs.base() >= __rhs.base(); }
4974
4975 template<typename _Iterator, typename _Container>
4976 inline bool
4977 operator>=(const __normal_iterator<_Iterator, _Container>& __lhs,
4978 const __normal_iterator<_Iterator, _Container>& __rhs)
4979 { return __lhs.base() >= __rhs.base(); }
4980
4981
4982
4983
4984
4985 template<typename _IteratorL, typename _IteratorR, typename _Container>
4986
4987
4988
4989
4990
4991
4992
4993 inline typename __normal_iterator<_IteratorL, _Container>::difference_type
4994 operator-(const __normal_iterator<_IteratorL, _Container>& __lhs,
4995 const __normal_iterator<_IteratorR, _Container>& __rhs)
4996
4997 { return __lhs.base() - __rhs.base(); }
4998
4999 template<typename _Iterator, typename _Container>
5000 inline typename __normal_iterator<_Iterator, _Container>::difference_type
5001 operator-(const __normal_iterator<_Iterator, _Container>& __lhs,
5002 const __normal_iterator<_Iterator, _Container>& __rhs)
5003 { return __lhs.base() - __rhs.base(); }
5004
5005 template<typename _Iterator, typename _Container>
5006 inline __normal_iterator<_Iterator, _Container>
5007 operator+(typename __normal_iterator<_Iterator, _Container>::difference_type
5008 __n, const __normal_iterator<_Iterator, _Container>& __i)
5009 { return __normal_iterator<_Iterator, _Container>(__i.base() + __n); }
5010
5011 }
5012 # 1073 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_iterator.h" 3
5013 #define _GLIBCXX_MAKE_MOVE_ITERATOR(_Iter) (_Iter)
5014 # 70 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_algobase.h" 2 3
5015
5016 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/debug/debug.h" 1 3
5017 # 31 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/debug/debug.h" 3
5018 #define _GLIBCXX_DEBUG_MACRO_SWITCH_H 1
5019 # 47 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/debug/debug.h" 3
5020 namespace std
5021 {
5022 namespace __debug { }
5023 }
5024
5025
5026
5027
5028 namespace __gnu_debug
5029 {
5030 using namespace std::__debug;
5031 }
5032
5033
5034
5035 #define _GLIBCXX_DEBUG_ASSERT(_Condition)
5036 #define _GLIBCXX_DEBUG_PEDASSERT(_Condition)
5037 #define _GLIBCXX_DEBUG_ONLY(_Statement) ;
5038 #define __glibcxx_requires_cond(_Cond,_Msg)
5039 #define __glibcxx_requires_valid_range(_First,_Last)
5040 #define __glibcxx_requires_sorted(_First,_Last)
5041 #define __glibcxx_requires_sorted_pred(_First,_Last,_Pred)
5042 #define __glibcxx_requires_sorted_set(_First1,_Last1,_First2)
5043 #define __glibcxx_requires_sorted_set_pred(_First1,_Last1,_First2,_Pred)
5044 #define __glibcxx_requires_partitioned_lower(_First,_Last,_Value)
5045 #define __glibcxx_requires_partitioned_upper(_First,_Last,_Value)
5046 #define __glibcxx_requires_partitioned_lower_pred(_First,_Last,_Value,_Pred)
5047 #define __glibcxx_requires_partitioned_upper_pred(_First,_Last,_Value,_Pred)
5048 #define __glibcxx_requires_heap(_First,_Last)
5049 #define __glibcxx_requires_heap_pred(_First,_Last,_Pred)
5050 #define __glibcxx_requires_nonempty()
5051 #define __glibcxx_requires_string(_String)
5052 #define __glibcxx_requires_string_len(_String,_Len)
5053 #define __glibcxx_requires_subscript(_N)
5054 # 72 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_algobase.h" 2 3
5055
5056
5057 namespace std __attribute__ ((__visibility__ ("default"))) {
5058
5059
5060
5061
5062 template<bool _BoolType>
5063 struct __iter_swap
5064 {
5065 template<typename _ForwardIterator1, typename _ForwardIterator2>
5066 static void
5067 iter_swap(_ForwardIterator1 __a, _ForwardIterator2 __b)
5068 {
5069 typedef typename iterator_traits<_ForwardIterator1>::value_type
5070 _ValueType1;
5071 _ValueType1 __tmp = (*__a);
5072 *__a = (*__b);
5073 *__b = (__tmp);
5074 }
5075 };
5076
5077 template<>
5078 struct __iter_swap<true>
5079 {
5080 template<typename _ForwardIterator1, typename _ForwardIterator2>
5081 static void
5082 iter_swap(_ForwardIterator1 __a, _ForwardIterator2 __b)
5083 {
5084 swap(*__a, *__b);
5085 }
5086 };
5087 # 115 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_algobase.h" 3
5088 template<typename _ForwardIterator1, typename _ForwardIterator2>
5089 inline void
5090 iter_swap(_ForwardIterator1 __a, _ForwardIterator2 __b)
5091 {
5092 typedef typename iterator_traits<_ForwardIterator1>::value_type
5093 _ValueType1;
5094 typedef typename iterator_traits<_ForwardIterator2>::value_type
5095 _ValueType2;
5096
5097
5098
5099
5100
5101
5102
5103
5104
5105
5106
5107 typedef typename iterator_traits<_ForwardIterator1>::reference
5108 _ReferenceType1;
5109 typedef typename iterator_traits<_ForwardIterator2>::reference
5110 _ReferenceType2;
5111 std::__iter_swap<__are_same<_ValueType1, _ValueType2>::__value
5112 && __are_same<_ValueType1&, _ReferenceType1>::__value
5113 && __are_same<_ValueType2&, _ReferenceType2>::__value>::
5114 iter_swap(__a, __b);
5115 }
5116 # 156 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_algobase.h" 3
5117 template<typename _ForwardIterator1, typename _ForwardIterator2>
5118 _ForwardIterator2
5119 swap_ranges(_ForwardIterator1 __first1, _ForwardIterator1 __last1,
5120 _ForwardIterator2 __first2)
5121 {
5122
5123
5124
5125
5126
5127 ;
5128
5129 for (; __first1 != __last1; ++__first1, ++__first2)
5130 std::iter_swap(__first1, __first2);
5131 return __first2;
5132 }
5133 # 184 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_algobase.h" 3
5134 template<typename _Tp>
5135 inline const _Tp&
5136 min(const _Tp& __a, const _Tp& __b)
5137 {
5138
5139
5140
5141 if (__b < __a)
5142 return __b;
5143 return __a;
5144 }
5145 # 207 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_algobase.h" 3
5146 template<typename _Tp>
5147 inline const _Tp&
5148 max(const _Tp& __a, const _Tp& __b)
5149 {
5150
5151
5152
5153 if (__a < __b)
5154 return __b;
5155 return __a;
5156 }
5157 # 230 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_algobase.h" 3
5158 template<typename _Tp, typename _Compare>
5159 inline const _Tp&
5160 min(const _Tp& __a, const _Tp& __b, _Compare __comp)
5161 {
5162
5163 if (__comp(__b, __a))
5164 return __b;
5165 return __a;
5166 }
5167 # 251 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_algobase.h" 3
5168 template<typename _Tp, typename _Compare>
5169 inline const _Tp&
5170 max(const _Tp& __a, const _Tp& __b, _Compare __comp)
5171 {
5172
5173 if (__comp(__a, __b))
5174 return __b;
5175 return __a;
5176 }
5177
5178
5179
5180
5181 template<typename _Iterator, bool _HasBase>
5182 struct _Iter_base
5183 {
5184 typedef _Iterator iterator_type;
5185 static iterator_type
5186 _S_base(_Iterator __it)
5187 { return __it; }
5188 };
5189
5190 template<typename _Iterator>
5191 struct _Iter_base<_Iterator, true>
5192 {
5193 typedef typename _Iterator::iterator_type iterator_type;
5194 static iterator_type
5195 _S_base(_Iterator __it)
5196 { return __it.base(); }
5197 };
5198
5199
5200
5201 template<typename _Iterator>
5202 struct _Niter_base
5203 : _Iter_base<_Iterator, __is_normal_iterator<_Iterator>::__value>
5204 { };
5205
5206 template<typename _Iterator>
5207 inline typename _Niter_base<_Iterator>::iterator_type
5208 __niter_base(_Iterator __it)
5209 { return std::_Niter_base<_Iterator>::_S_base(__it); }
5210
5211
5212 template<typename _Iterator>
5213 struct _Miter_base
5214 : _Iter_base<_Iterator, __is_move_iterator<_Iterator>::__value>
5215 { };
5216
5217 template<typename _Iterator>
5218 inline typename _Miter_base<_Iterator>::iterator_type
5219 __miter_base(_Iterator __it)
5220 { return std::_Miter_base<_Iterator>::_S_base(__it); }
5221
5222
5223
5224
5225
5226
5227
5228 template<bool, bool, typename>
5229 struct __copy_move
5230 {
5231 template<typename _II, typename _OI>
5232 static _OI
5233 __copy_m(_II __first, _II __last, _OI __result)
5234 {
5235 for (; __first != __last; ++__result, ++__first)
5236 *__result = *__first;
5237 return __result;
5238 }
5239 };
5240 # 339 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_algobase.h" 3
5241 template<>
5242 struct __copy_move<false, false, random_access_iterator_tag>
5243 {
5244 template<typename _II, typename _OI>
5245 static _OI
5246 __copy_m(_II __first, _II __last, _OI __result)
5247 {
5248 typedef typename iterator_traits<_II>::difference_type _Distance;
5249 for(_Distance __n = __last - __first; __n > 0; --__n)
5250 {
5251 *__result = *__first;
5252 ++__first;
5253 ++__result;
5254 }
5255 return __result;
5256 }
5257 };
5258 # 377 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_algobase.h" 3
5259 template<bool _IsMove>
5260 struct __copy_move<_IsMove, true, random_access_iterator_tag>
5261 {
5262 template<typename _Tp>
5263 static _Tp*
5264 __copy_m(const _Tp* __first, const _Tp* __last, _Tp* __result)
5265 {
5266 const ptrdiff_t _Num = __last - __first;
5267 if (_Num)
5268 __builtin_memmove(__result, __first, sizeof(_Tp) * _Num);
5269 return __result + _Num;
5270 }
5271 };
5272
5273 template<bool _IsMove, typename _II, typename _OI>
5274 inline _OI
5275 __copy_move_a(_II __first, _II __last, _OI __result)
5276 {
5277 typedef typename iterator_traits<_II>::value_type _ValueTypeI;
5278 typedef typename iterator_traits<_OI>::value_type _ValueTypeO;
5279 typedef typename iterator_traits<_II>::iterator_category _Category;
5280 const bool __simple = (__is_pod(_ValueTypeI)
5281 && __is_pointer<_II>::__value
5282 && __is_pointer<_OI>::__value
5283 && __are_same<_ValueTypeI, _ValueTypeO>::__value);
5284
5285 return std::__copy_move<_IsMove, __simple,
5286 _Category>::__copy_m(__first, __last, __result);
5287 }
5288
5289
5290
5291 template<typename _CharT>
5292 struct char_traits;
5293
5294 template<typename _CharT, typename _Traits>
5295 class istreambuf_iterator;
5296
5297 template<typename _CharT, typename _Traits>
5298 class ostreambuf_iterator;
5299
5300 template<bool _IsMove, typename _CharT>
5301 typename __gnu_cxx::__enable_if<__is_char<_CharT>::__value,
5302 ostreambuf_iterator<_CharT, char_traits<_CharT> > >::__type
5303 __copy_move_a2(_CharT*, _CharT*,
5304 ostreambuf_iterator<_CharT, char_traits<_CharT> >);
5305
5306 template<bool _IsMove, typename _CharT>
5307 typename __gnu_cxx::__enable_if<__is_char<_CharT>::__value,
5308 ostreambuf_iterator<_CharT, char_traits<_CharT> > >::__type
5309 __copy_move_a2(const _CharT*, const _CharT*,
5310 ostreambuf_iterator<_CharT, char_traits<_CharT> >);
5311
5312 template<bool _IsMove, typename _CharT>
5313 typename __gnu_cxx::__enable_if<__is_char<_CharT>::__value,
5314 _CharT*>::__type
5315 __copy_move_a2(istreambuf_iterator<_CharT, char_traits<_CharT> >,
5316 istreambuf_iterator<_CharT, char_traits<_CharT> >, _CharT*);
5317
5318 template<bool _IsMove, typename _II, typename _OI>
5319 inline _OI
5320 __copy_move_a2(_II __first, _II __last, _OI __result)
5321 {
5322 return _OI(std::__copy_move_a<_IsMove>(std::__niter_base(__first),
5323 std::__niter_base(__last),
5324 std::__niter_base(__result)));
5325 }
5326 # 462 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_algobase.h" 3
5327 template<typename _II, typename _OI>
5328 inline _OI
5329 copy(_II __first, _II __last, _OI __result)
5330 {
5331
5332
5333
5334
5335 ;
5336
5337 return (std::__copy_move_a2<__is_move_iterator<_II>::__value>
5338 (std::__miter_base(__first), std::__miter_base(__last),
5339 __result));
5340 }
5341 # 511 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_algobase.h" 3
5342 #define _GLIBCXX_MOVE3(_Tp,_Up,_Vp) std::copy(_Tp, _Up, _Vp)
5343
5344
5345 template<bool, bool, typename>
5346 struct __copy_move_backward
5347 {
5348 template<typename _BI1, typename _BI2>
5349 static _BI2
5350 __copy_move_b(_BI1 __first, _BI1 __last, _BI2 __result)
5351 {
5352 while (__first != __last)
5353 *--__result = *--__last;
5354 return __result;
5355 }
5356 };
5357 # 542 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_algobase.h" 3
5358 template<>
5359 struct __copy_move_backward<false, false, random_access_iterator_tag>
5360 {
5361 template<typename _BI1, typename _BI2>
5362 static _BI2
5363 __copy_move_b(_BI1 __first, _BI1 __last, _BI2 __result)
5364 {
5365 typename iterator_traits<_BI1>::difference_type __n;
5366 for (__n = __last - __first; __n > 0; --__n)
5367 *--__result = *--__last;
5368 return __result;
5369 }
5370 };
5371 # 572 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_algobase.h" 3
5372 template<bool _IsMove>
5373 struct __copy_move_backward<_IsMove, true, random_access_iterator_tag>
5374 {
5375 template<typename _Tp>
5376 static _Tp*
5377 __copy_move_b(const _Tp* __first, const _Tp* __last, _Tp* __result)
5378 {
5379 const ptrdiff_t _Num = __last - __first;
5380 if (_Num)
5381 __builtin_memmove(__result - _Num, __first, sizeof(_Tp) * _Num);
5382 return __result - _Num;
5383 }
5384 };
5385
5386 template<bool _IsMove, typename _BI1, typename _BI2>
5387 inline _BI2
5388 __copy_move_backward_a(_BI1 __first, _BI1 __last, _BI2 __result)
5389 {
5390 typedef typename iterator_traits<_BI1>::value_type _ValueType1;
5391 typedef typename iterator_traits<_BI2>::value_type _ValueType2;
5392 typedef typename iterator_traits<_BI1>::iterator_category _Category;
5393 const bool __simple = (__is_pod(_ValueType1)
5394 && __is_pointer<_BI1>::__value
5395 && __is_pointer<_BI2>::__value
5396 && __are_same<_ValueType1, _ValueType2>::__value);
5397
5398 return std::__copy_move_backward<_IsMove, __simple,
5399 _Category>::__copy_move_b(__first,
5400 __last,
5401 __result);
5402 }
5403
5404 template<bool _IsMove, typename _BI1, typename _BI2>
5405 inline _BI2
5406 __copy_move_backward_a2(_BI1 __first, _BI1 __last, _BI2 __result)
5407 {
5408 return _BI2(std::__copy_move_backward_a<_IsMove>
5409 (std::__niter_base(__first), std::__niter_base(__last),
5410 std::__niter_base(__result)));
5411 }
5412 # 631 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_algobase.h" 3
5413 template<typename _BI1, typename _BI2>
5414 inline _BI2
5415 copy_backward(_BI1 __first, _BI1 __last, _BI2 __result)
5416 {
5417
5418
5419
5420
5421
5422
5423 ;
5424
5425 return (std::__copy_move_backward_a2<__is_move_iterator<_BI1>::__value>
5426 (std::__miter_base(__first), std::__miter_base(__last),
5427 __result));
5428 }
5429 # 686 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_algobase.h" 3
5430 #define _GLIBCXX_MOVE_BACKWARD3(_Tp,_Up,_Vp) std::copy_backward(_Tp, _Up, _Vp)
5431
5432
5433 template<typename _ForwardIterator, typename _Tp>
5434 inline typename
5435 __gnu_cxx::__enable_if<!__is_scalar<_Tp>::__value, void>::__type
5436 __fill_a(_ForwardIterator __first, _ForwardIterator __last,
5437 const _Tp& __value)
5438 {
5439 for (; __first != __last; ++__first)
5440 *__first = __value;
5441 }
5442
5443 template<typename _ForwardIterator, typename _Tp>
5444 inline typename
5445 __gnu_cxx::__enable_if<__is_scalar<_Tp>::__value, void>::__type
5446 __fill_a(_ForwardIterator __first, _ForwardIterator __last,
5447 const _Tp& __value)
5448 {
5449 const _Tp __tmp = __value;
5450 for (; __first != __last; ++__first)
5451 *__first = __tmp;
5452 }
5453
5454
5455 template<typename _Tp>
5456 inline typename
5457 __gnu_cxx::__enable_if<__is_byte<_Tp>::__value, void>::__type
5458 __fill_a(_Tp* __first, _Tp* __last, const _Tp& __c)
5459 {
5460 const _Tp __tmp = __c;
5461 __builtin_memset(__first, static_cast<unsigned char>(__tmp),
5462 __last - __first);
5463 }
5464 # 733 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_algobase.h" 3
5465 template<typename _ForwardIterator, typename _Tp>
5466 inline void
5467 fill(_ForwardIterator __first, _ForwardIterator __last, const _Tp& __value)
5468 {
5469
5470
5471
5472 ;
5473
5474 std::__fill_a(std::__niter_base(__first), std::__niter_base(__last),
5475 __value);
5476 }
5477
5478 template<typename _OutputIterator, typename _Size, typename _Tp>
5479 inline typename
5480 __gnu_cxx::__enable_if<!__is_scalar<_Tp>::__value, _OutputIterator>::__type
5481 __fill_n_a(_OutputIterator __first, _Size __n, const _Tp& __value)
5482 {
5483 for (; __n > 0; --__n, ++__first)
5484 *__first = __value;
5485 return __first;
5486 }
5487
5488 template<typename _OutputIterator, typename _Size, typename _Tp>
5489 inline typename
5490 __gnu_cxx::__enable_if<__is_scalar<_Tp>::__value, _OutputIterator>::__type
5491 __fill_n_a(_OutputIterator __first, _Size __n, const _Tp& __value)
5492 {
5493 const _Tp __tmp = __value;
5494 for (; __n > 0; --__n, ++__first)
5495 *__first = __tmp;
5496 return __first;
5497 }
5498
5499 template<typename _Size, typename _Tp>
5500 inline typename
5501 __gnu_cxx::__enable_if<__is_byte<_Tp>::__value, _Tp*>::__type
5502 __fill_n_a(_Tp* __first, _Size __n, const _Tp& __c)
5503 {
5504 std::__fill_a(__first, __first + __n, __c);
5505 return __first + __n;
5506 }
5507 # 791 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_algobase.h" 3
5508 template<typename _OI, typename _Size, typename _Tp>
5509 inline _OI
5510 fill_n(_OI __first, _Size __n, const _Tp& __value)
5511 {
5512
5513
5514
5515 return _OI(std::__fill_n_a(std::__niter_base(__first), __n, __value));
5516 }
5517
5518 template<bool _BoolType>
5519 struct __equal
5520 {
5521 template<typename _II1, typename _II2>
5522 static bool
5523 equal(_II1 __first1, _II1 __last1, _II2 __first2)
5524 {
5525 for (; __first1 != __last1; ++__first1, ++__first2)
5526 if (!(*__first1 == *__first2))
5527 return false;
5528 return true;
5529 }
5530 };
5531
5532 template<>
5533 struct __equal<true>
5534 {
5535 template<typename _Tp>
5536 static bool
5537 equal(const _Tp* __first1, const _Tp* __last1, const _Tp* __first2)
5538 {
5539 return !__builtin_memcmp(__first1, __first2, sizeof(_Tp)
5540 * (__last1 - __first1));
5541 }
5542 };
5543
5544 template<typename _II1, typename _II2>
5545 inline bool
5546 __equal_aux(_II1 __first1, _II1 __last1, _II2 __first2)
5547 {
5548 typedef typename iterator_traits<_II1>::value_type _ValueType1;
5549 typedef typename iterator_traits<_II2>::value_type _ValueType2;
5550 const bool __simple = (__is_integer<_ValueType1>::__value
5551 && __is_pointer<_II1>::__value
5552 && __is_pointer<_II2>::__value
5553 && __are_same<_ValueType1, _ValueType2>::__value);
5554
5555 return std::__equal<__simple>::equal(__first1, __last1, __first2);
5556 }
5557
5558
5559 template<typename, typename>
5560 struct __lc_rai
5561 {
5562 template<typename _II1, typename _II2>
5563 static _II1
5564 __newlast1(_II1, _II1 __last1, _II2, _II2)
5565 { return __last1; }
5566
5567 template<typename _II>
5568 static bool
5569 __cnd2(_II __first, _II __last)
5570 { return __first != __last; }
5571 };
5572
5573 template<>
5574 struct __lc_rai<random_access_iterator_tag, random_access_iterator_tag>
5575 {
5576 template<typename _RAI1, typename _RAI2>
5577 static _RAI1
5578 __newlast1(_RAI1 __first1, _RAI1 __last1,
5579 _RAI2 __first2, _RAI2 __last2)
5580 {
5581 const typename iterator_traits<_RAI1>::difference_type
5582 __diff1 = __last1 - __first1;
5583 const typename iterator_traits<_RAI2>::difference_type
5584 __diff2 = __last2 - __first2;
5585 return __diff2 < __diff1 ? __first1 + __diff2 : __last1;
5586 }
5587
5588 template<typename _RAI>
5589 static bool
5590 __cnd2(_RAI, _RAI)
5591 { return true; }
5592 };
5593
5594 template<bool _BoolType>
5595 struct __lexicographical_compare
5596 {
5597 template<typename _II1, typename _II2>
5598 static bool __lc(_II1, _II1, _II2, _II2);
5599 };
5600
5601 template<bool _BoolType>
5602 template<typename _II1, typename _II2>
5603 bool
5604 __lexicographical_compare<_BoolType>::
5605 __lc(_II1 __first1, _II1 __last1, _II2 __first2, _II2 __last2)
5606 {
5607 typedef typename iterator_traits<_II1>::iterator_category _Category1;
5608 typedef typename iterator_traits<_II2>::iterator_category _Category2;
5609 typedef std::__lc_rai<_Category1, _Category2> __rai_type;
5610
5611 __last1 = __rai_type::__newlast1(__first1, __last1,
5612 __first2, __last2);
5613 for (; __first1 != __last1 && __rai_type::__cnd2(__first2, __last2);
5614 ++__first1, ++__first2)
5615 {
5616 if (*__first1 < *__first2)
5617 return true;
5618 if (*__first2 < *__first1)
5619 return false;
5620 }
5621 return __first1 == __last1 && __first2 != __last2;
5622 }
5623
5624 template<>
5625 struct __lexicographical_compare<true>
5626 {
5627 template<typename _Tp, typename _Up>
5628 static bool
5629 __lc(const _Tp* __first1, const _Tp* __last1,
5630 const _Up* __first2, const _Up* __last2)
5631 {
5632 const size_t __len1 = __last1 - __first1;
5633 const size_t __len2 = __last2 - __first2;
5634 const int __result = __builtin_memcmp(__first1, __first2,
5635 std::min(__len1, __len2));
5636 return __result != 0 ? __result < 0 : __len1 < __len2;
5637 }
5638 };
5639
5640 template<typename _II1, typename _II2>
5641 inline bool
5642 __lexicographical_compare_aux(_II1 __first1, _II1 __last1,
5643 _II2 __first2, _II2 __last2)
5644 {
5645 typedef typename iterator_traits<_II1>::value_type _ValueType1;
5646 typedef typename iterator_traits<_II2>::value_type _ValueType2;
5647 const bool __simple =
5648 (__is_byte<_ValueType1>::__value && __is_byte<_ValueType2>::__value
5649 && !__gnu_cxx::__numeric_traits<_ValueType1>::__is_signed
5650 && !__gnu_cxx::__numeric_traits<_ValueType2>::__is_signed
5651 && __is_pointer<_II1>::__value
5652 && __is_pointer<_II2>::__value);
5653
5654 return std::__lexicographical_compare<__simple>::__lc(__first1, __last1,
5655 __first2, __last2);
5656 }
5657 # 952 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_algobase.h" 3
5658 template<typename _ForwardIterator, typename _Tp>
5659 _ForwardIterator
5660 lower_bound(_ForwardIterator __first, _ForwardIterator __last,
5661 const _Tp& __val)
5662 {
5663 typedef typename iterator_traits<_ForwardIterator>::value_type
5664 _ValueType;
5665 typedef typename iterator_traits<_ForwardIterator>::difference_type
5666 _DistanceType;
5667
5668
5669
5670
5671 ;
5672
5673 _DistanceType __len = std::distance(__first, __last);
5674 _DistanceType __half;
5675 _ForwardIterator __middle;
5676
5677 while (__len > 0)
5678 {
5679 __half = __len >> 1;
5680 __middle = __first;
5681 std::advance(__middle, __half);
5682 if (*__middle < __val)
5683 {
5684 __first = __middle;
5685 ++__first;
5686 __len = __len - __half - 1;
5687 }
5688 else
5689 __len = __half;
5690 }
5691 return __first;
5692 }
5693
5694
5695
5696 template<typename _Size>
5697 inline _Size
5698 __lg(_Size __n)
5699 {
5700 _Size __k;
5701 for (__k = 0; __n != 0; __n >>= 1)
5702 ++__k;
5703 return __k - 1;
5704 }
5705
5706 inline int
5707 __lg(int __n)
5708 { return sizeof(int) * 8 - 1 - __builtin_clz(__n); }
5709
5710 inline long
5711 __lg(long __n)
5712 { return sizeof(long) * 8 - 1 - __builtin_clzl(__n); }
5713
5714 inline long long
5715 __lg(long long __n)
5716 { return sizeof(long long) * 8 - 1 - __builtin_clzll(__n); }
5717
5718 }
5719
5720 namespace std __attribute__ ((__visibility__ ("default"))) {
5721 # 1028 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_algobase.h" 3
5722 template<typename _II1, typename _II2>
5723 inline bool
5724 equal(_II1 __first1, _II1 __last1, _II2 __first2)
5725 {
5726
5727
5728
5729
5730
5731
5732 ;
5733
5734 return std::__equal_aux(std::__niter_base(__first1),
5735 std::__niter_base(__last1),
5736 std::__niter_base(__first2));
5737 }
5738 # 1060 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_algobase.h" 3
5739 template<typename _IIter1, typename _IIter2, typename _BinaryPredicate>
5740 inline bool
5741 equal(_IIter1 __first1, _IIter1 __last1,
5742 _IIter2 __first2, _BinaryPredicate __binary_pred)
5743 {
5744
5745
5746
5747 ;
5748
5749 for (; __first1 != __last1; ++__first1, ++__first2)
5750 if (!bool(__binary_pred(*__first1, *__first2)))
5751 return false;
5752 return true;
5753 }
5754 # 1091 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_algobase.h" 3
5755 template<typename _II1, typename _II2>
5756 inline bool
5757 lexicographical_compare(_II1 __first1, _II1 __last1,
5758 _II2 __first2, _II2 __last2)
5759 {
5760
5761 typedef typename iterator_traits<_II1>::value_type _ValueType1;
5762 typedef typename iterator_traits<_II2>::value_type _ValueType2;
5763
5764
5765
5766
5767 ;
5768 ;
5769
5770 return std::__lexicographical_compare_aux(std::__niter_base(__first1),
5771 std::__niter_base(__last1),
5772 std::__niter_base(__first2),
5773 std::__niter_base(__last2));
5774 }
5775 # 1125 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_algobase.h" 3
5776 template<typename _II1, typename _II2, typename _Compare>
5777 bool
5778 lexicographical_compare(_II1 __first1, _II1 __last1,
5779 _II2 __first2, _II2 __last2, _Compare __comp)
5780 {
5781 typedef typename iterator_traits<_II1>::iterator_category _Category1;
5782 typedef typename iterator_traits<_II2>::iterator_category _Category2;
5783 typedef std::__lc_rai<_Category1, _Category2> __rai_type;
5784
5785
5786
5787
5788 ;
5789 ;
5790
5791 __last1 = __rai_type::__newlast1(__first1, __last1, __first2, __last2);
5792 for (; __first1 != __last1 && __rai_type::__cnd2(__first2, __last2);
5793 ++__first1, ++__first2)
5794 {
5795 if (__comp(*__first1, *__first2))
5796 return true;
5797 if (__comp(*__first2, *__first1))
5798 return false;
5799 }
5800 return __first1 == __last1 && __first2 != __last2;
5801 }
5802 # 1165 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_algobase.h" 3
5803 template<typename _InputIterator1, typename _InputIterator2>
5804 pair<_InputIterator1, _InputIterator2>
5805 mismatch(_InputIterator1 __first1, _InputIterator1 __last1,
5806 _InputIterator2 __first2)
5807 {
5808
5809
5810
5811
5812
5813
5814 ;
5815
5816 while (__first1 != __last1 && *__first1 == *__first2)
5817 {
5818 ++__first1;
5819 ++__first2;
5820 }
5821 return pair<_InputIterator1, _InputIterator2>(__first1, __first2);
5822 }
5823 # 1202 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_algobase.h" 3
5824 template<typename _InputIterator1, typename _InputIterator2,
5825 typename _BinaryPredicate>
5826 pair<_InputIterator1, _InputIterator2>
5827 mismatch(_InputIterator1 __first1, _InputIterator1 __last1,
5828 _InputIterator2 __first2, _BinaryPredicate __binary_pred)
5829 {
5830
5831
5832
5833 ;
5834
5835 while (__first1 != __last1 && bool(__binary_pred(*__first1, *__first2)))
5836 {
5837 ++__first1;
5838 ++__first2;
5839 }
5840 return pair<_InputIterator1, _InputIterator2>(__first1, __first2);
5841 }
5842
5843 }
5844 # 42 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/char_traits.h" 2 3
5845
5846 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/cwchar" 1 3
5847 # 41 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/cwchar" 3
5848
5849 # 42 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/cwchar" 3
5850
5851
5852 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/cstddef" 1 3
5853 # 41 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/cstddef" 3
5854
5855 # 42 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/cstddef" 3
5856
5857
5858 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 1 3 4
5859 # 45 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/cstddef" 2 3
5860 # 45 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/cwchar" 2 3
5861
5862
5863 # 1 "/usr/include/wchar.h" 1 3 4
5864 # 896 "/usr/include/wchar.h" 3 4
5865 #undef __need_mbstate_t
5866 #undef __need_wint_t
5867 # 48 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/cwchar" 2 3
5868 # 44 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/char_traits.h" 2 3
5869
5870
5871
5872
5873
5874 #define _CHAR_TRAITS_EOF (-1)
5875
5876
5877 namespace __gnu_cxx __attribute__ ((__visibility__ ("default"))) {
5878 # 64 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/char_traits.h" 3
5879 template<typename _CharT>
5880 struct _Char_types
5881 {
5882 typedef unsigned long int_type;
5883 typedef std::streampos pos_type;
5884 typedef std::streamoff off_type;
5885 typedef std::mbstate_t state_type;
5886 };
5887 # 89 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/char_traits.h" 3
5888 template<typename _CharT>
5889 struct char_traits
5890 {
5891 typedef _CharT char_type;
5892 typedef typename _Char_types<_CharT>::int_type int_type;
5893 typedef typename _Char_types<_CharT>::pos_type pos_type;
5894 typedef typename _Char_types<_CharT>::off_type off_type;
5895 typedef typename _Char_types<_CharT>::state_type state_type;
5896
5897 static void
5898 assign(char_type& __c1, const char_type& __c2)
5899 { __c1 = __c2; }
5900
5901 static bool
5902 eq(const char_type& __c1, const char_type& __c2)
5903 { return __c1 == __c2; }
5904
5905 static bool
5906 lt(const char_type& __c1, const char_type& __c2)
5907 { return __c1 < __c2; }
5908
5909 static int
5910 compare(const char_type* __s1, const char_type* __s2, std::size_t __n);
5911
5912 static std::size_t
5913 length(const char_type* __s);
5914
5915 static const char_type*
5916 find(const char_type* __s, std::size_t __n, const char_type& __a);
5917
5918 static char_type*
5919 move(char_type* __s1, const char_type* __s2, std::size_t __n);
5920
5921 static char_type*
5922 copy(char_type* __s1, const char_type* __s2, std::size_t __n);
5923
5924 static char_type*
5925 assign(char_type* __s, std::size_t __n, char_type __a);
5926
5927 static char_type
5928 to_char_type(const int_type& __c)
5929 { return static_cast<char_type>(__c); }
5930
5931 static int_type
5932 to_int_type(const char_type& __c)
5933 { return static_cast<int_type>(__c); }
5934
5935 static bool
5936 eq_int_type(const int_type& __c1, const int_type& __c2)
5937 { return __c1 == __c2; }
5938
5939 static int_type
5940 eof()
5941 { return static_cast<int_type>((-1)); }
5942
5943 static int_type
5944 not_eof(const int_type& __c)
5945 { return !eq_int_type(__c, eof()) ? __c : to_int_type(char_type()); }
5946 };
5947
5948 template<typename _CharT>
5949 int
5950 char_traits<_CharT>::
5951 compare(const char_type* __s1, const char_type* __s2, std::size_t __n)
5952 {
5953 for (std::size_t __i = 0; __i < __n; ++__i)
5954 if (lt(__s1[__i], __s2[__i]))
5955 return -1;
5956 else if (lt(__s2[__i], __s1[__i]))
5957 return 1;
5958 return 0;
5959 }
5960
5961 template<typename _CharT>
5962 std::size_t
5963 char_traits<_CharT>::
5964 length(const char_type* __p)
5965 {
5966 std::size_t __i = 0;
5967 while (!eq(__p[__i], char_type()))
5968 ++__i;
5969 return __i;
5970 }
5971
5972 template<typename _CharT>
5973 const typename char_traits<_CharT>::char_type*
5974 char_traits<_CharT>::
5975 find(const char_type* __s, std::size_t __n, const char_type& __a)
5976 {
5977 for (std::size_t __i = 0; __i < __n; ++__i)
5978 if (eq(__s[__i], __a))
5979 return __s + __i;
5980 return 0;
5981 }
5982
5983 template<typename _CharT>
5984 typename char_traits<_CharT>::char_type*
5985 char_traits<_CharT>::
5986 move(char_type* __s1, const char_type* __s2, std::size_t __n)
5987 {
5988 return static_cast<_CharT*>(__builtin_memmove(__s1, __s2,
5989 __n * sizeof(char_type)));
5990 }
5991
5992 template<typename _CharT>
5993 typename char_traits<_CharT>::char_type*
5994 char_traits<_CharT>::
5995 copy(char_type* __s1, const char_type* __s2, std::size_t __n)
5996 {
5997
5998 std::copy(__s2, __s2 + __n, __s1);
5999 return __s1;
6000 }
6001
6002 template<typename _CharT>
6003 typename char_traits<_CharT>::char_type*
6004 char_traits<_CharT>::
6005 assign(char_type* __s, std::size_t __n, char_type __a)
6006 {
6007
6008 std::fill_n(__s, __n, __a);
6009 return __s;
6010 }
6011
6012 }
6013
6014 namespace std __attribute__ ((__visibility__ ("default"))) {
6015 # 230 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/char_traits.h" 3
6016 template<class _CharT>
6017 struct char_traits : public __gnu_cxx::char_traits<_CharT>
6018 { };
6019
6020
6021
6022 template<>
6023 struct char_traits<char>
6024 {
6025 typedef char char_type;
6026 typedef int int_type;
6027 typedef streampos pos_type;
6028 typedef streamoff off_type;
6029 typedef mbstate_t state_type;
6030
6031 static void
6032 assign(char_type& __c1, const char_type& __c2)
6033 { __c1 = __c2; }
6034
6035 static bool
6036 eq(const char_type& __c1, const char_type& __c2)
6037 { return __c1 == __c2; }
6038
6039 static bool
6040 lt(const char_type& __c1, const char_type& __c2)
6041 { return __c1 < __c2; }
6042
6043 static int
6044 compare(const char_type* __s1, const char_type* __s2, size_t __n)
6045 { return __builtin_memcmp(__s1, __s2, __n); }
6046
6047 static size_t
6048 length(const char_type* __s)
6049 { return __builtin_strlen(__s); }
6050
6051 static const char_type*
6052 find(const char_type* __s, size_t __n, const char_type& __a)
6053 { return static_cast<const char_type*>(__builtin_memchr(__s, __a, __n)); }
6054
6055 static char_type*
6056 move(char_type* __s1, const char_type* __s2, size_t __n)
6057 { return static_cast<char_type*>(__builtin_memmove(__s1, __s2, __n)); }
6058
6059 static char_type*
6060 copy(char_type* __s1, const char_type* __s2, size_t __n)
6061 { return static_cast<char_type*>(__builtin_memcpy(__s1, __s2, __n)); }
6062
6063 static char_type*
6064 assign(char_type* __s, size_t __n, char_type __a)
6065 { return static_cast<char_type*>(__builtin_memset(__s, __a, __n)); }
6066
6067 static char_type
6068 to_char_type(const int_type& __c)
6069 { return static_cast<char_type>(__c); }
6070
6071
6072
6073 static int_type
6074 to_int_type(const char_type& __c)
6075 { return static_cast<int_type>(static_cast<unsigned char>(__c)); }
6076
6077 static bool
6078 eq_int_type(const int_type& __c1, const int_type& __c2)
6079 { return __c1 == __c2; }
6080
6081 static int_type
6082 eof()
6083 { return static_cast<int_type>((-1)); }
6084
6085 static int_type
6086 not_eof(const int_type& __c)
6087 { return (__c == eof()) ? 0 : __c; }
6088 };
6089
6090
6091
6092
6093 template<>
6094 struct char_traits<wchar_t>
6095 {
6096 typedef wchar_t char_type;
6097 typedef wint_t int_type;
6098 typedef streamoff off_type;
6099 typedef wstreampos pos_type;
6100 typedef mbstate_t state_type;
6101
6102 static void
6103 assign(char_type& __c1, const char_type& __c2)
6104 { __c1 = __c2; }
6105
6106 static bool
6107 eq(const char_type& __c1, const char_type& __c2)
6108 { return __c1 == __c2; }
6109
6110 static bool
6111 lt(const char_type& __c1, const char_type& __c2)
6112 { return __c1 < __c2; }
6113
6114 static int
6115 compare(const char_type* __s1, const char_type* __s2, size_t __n)
6116 { return wmemcmp(__s1, __s2, __n); }
6117
6118 static size_t
6119 length(const char_type* __s)
6120 { return wcslen(__s); }
6121
6122 static const char_type*
6123 find(const char_type* __s, size_t __n, const char_type& __a)
6124 { return wmemchr(__s, __a, __n); }
6125
6126 static char_type*
6127 move(char_type* __s1, const char_type* __s2, size_t __n)
6128 { return wmemmove(__s1, __s2, __n); }
6129
6130 static char_type*
6131 copy(char_type* __s1, const char_type* __s2, size_t __n)
6132 { return wmemcpy(__s1, __s2, __n); }
6133
6134 static char_type*
6135 assign(char_type* __s, size_t __n, char_type __a)
6136 { return wmemset(__s, __a, __n); }
6137
6138 static char_type
6139 to_char_type(const int_type& __c)
6140 { return char_type(__c); }
6141
6142 static int_type
6143 to_int_type(const char_type& __c)
6144 { return int_type(__c); }
6145
6146 static bool
6147 eq_int_type(const int_type& __c1, const int_type& __c2)
6148 { return __c1 == __c2; }
6149
6150 static int_type
6151 eof()
6152 { return static_cast<int_type>((0xffffffffu)); }
6153
6154 static int_type
6155 not_eof(const int_type& __c)
6156 { return eq_int_type(__c, eof()) ? 0 : __c; }
6157 };
6158
6159
6160 }
6161 # 573 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/char_traits.h" 3
6162 #undef _CHAR_TRAITS_EOF
6163 # 42 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/ios" 2 3
6164 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/localefwd.h" 1 3
6165 # 37 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/localefwd.h" 3
6166 #define _LOCALE_FWD_H 1
6167
6168
6169 # 40 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/localefwd.h" 3
6170
6171
6172 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/x86_64-pc-linux-gnu/bits/c++locale.h" 1 3
6173 # 38 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/x86_64-pc-linux-gnu/bits/c++locale.h" 3
6174 #define _GLIBCXX_CXX_LOCALE_H 1
6175
6176
6177 # 41 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/x86_64-pc-linux-gnu/bits/c++locale.h" 3
6178
6179 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/clocale" 1 3
6180 # 41 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/clocale" 3
6181
6182 # 42 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/clocale" 3
6183
6184
6185 # 1 "/usr/include/locale.h" 1 3 4
6186 # 24 "/usr/include/locale.h" 3 4
6187 #define _LOCALE_H 1
6188
6189
6190
6191 #define __need_NULL
6192 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 1 3 4
6193 # 160 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 3 4
6194 #undef __need_ptrdiff_t
6195 # 233 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 3 4
6196 #undef __need_size_t
6197 # 342 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 3 4
6198 #undef __need_wchar_t
6199 # 395 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 3 4
6200 #undef NULL
6201
6202 #define NULL __null
6203 # 406 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 3 4
6204 #undef __need_NULL
6205
6206
6207
6208
6209 #define offsetof(TYPE,MEMBER) __builtin_offsetof (TYPE, MEMBER)
6210 # 30 "/usr/include/locale.h" 2 3 4
6211 # 1 "/usr/include/bits/locale.h" 1 3 4
6212 # 25 "/usr/include/bits/locale.h" 3 4
6213 #define _BITS_LOCALE_H 1
6214
6215 enum
6216 {
6217 __LC_CTYPE = 0,
6218 __LC_NUMERIC = 1,
6219 __LC_TIME = 2,
6220 __LC_COLLATE = 3,
6221 __LC_MONETARY = 4,
6222 __LC_MESSAGES = 5,
6223 __LC_ALL = 6,
6224 __LC_PAPER = 7,
6225 __LC_NAME = 8,
6226 __LC_ADDRESS = 9,
6227 __LC_TELEPHONE = 10,
6228 __LC_MEASUREMENT = 11,
6229 __LC_IDENTIFICATION = 12
6230 };
6231 # 31 "/usr/include/locale.h" 2 3 4
6232
6233 extern "C" {
6234
6235
6236
6237 #define LC_CTYPE __LC_CTYPE
6238 #define LC_NUMERIC __LC_NUMERIC
6239 #define LC_TIME __LC_TIME
6240 #define LC_COLLATE __LC_COLLATE
6241 #define LC_MONETARY __LC_MONETARY
6242 #define LC_MESSAGES __LC_MESSAGES
6243 #define LC_ALL __LC_ALL
6244 #define LC_PAPER __LC_PAPER
6245 #define LC_NAME __LC_NAME
6246 #define LC_ADDRESS __LC_ADDRESS
6247 #define LC_TELEPHONE __LC_TELEPHONE
6248 #define LC_MEASUREMENT __LC_MEASUREMENT
6249 #define LC_IDENTIFICATION __LC_IDENTIFICATION
6250
6251
6252
6253
6254
6255 struct lconv
6256 {
6257
6258
6259 char *decimal_point;
6260 char *thousands_sep;
6261
6262
6263
6264
6265
6266 char *grouping;
6267
6268
6269
6270
6271
6272 char *int_curr_symbol;
6273 char *currency_symbol;
6274 char *mon_decimal_point;
6275 char *mon_thousands_sep;
6276 char *mon_grouping;
6277 char *positive_sign;
6278 char *negative_sign;
6279 char int_frac_digits;
6280 char frac_digits;
6281
6282 char p_cs_precedes;
6283
6284 char p_sep_by_space;
6285
6286 char n_cs_precedes;
6287
6288 char n_sep_by_space;
6289
6290
6291
6292
6293
6294
6295 char p_sign_posn;
6296 char n_sign_posn;
6297
6298
6299 char int_p_cs_precedes;
6300
6301 char int_p_sep_by_space;
6302
6303 char int_n_cs_precedes;
6304
6305 char int_n_sep_by_space;
6306
6307
6308
6309
6310
6311
6312 char int_p_sign_posn;
6313 char int_n_sign_posn;
6314 # 121 "/usr/include/locale.h" 3 4
6315 };
6316
6317
6318
6319 extern char *setlocale (int __category, __const char *__locale) throw ();
6320
6321
6322 extern struct lconv *localeconv (void) throw ();
6323
6324
6325 # 152 "/usr/include/locale.h" 3 4
6326 extern __locale_t newlocale (int __category_mask, __const char *__locale,
6327 __locale_t __base) throw ();
6328
6329
6330
6331
6332
6333 #define LC_CTYPE_MASK (1 << __LC_CTYPE)
6334 #define LC_NUMERIC_MASK (1 << __LC_NUMERIC)
6335 #define LC_TIME_MASK (1 << __LC_TIME)
6336 #define LC_COLLATE_MASK (1 << __LC_COLLATE)
6337 #define LC_MONETARY_MASK (1 << __LC_MONETARY)
6338 #define LC_MESSAGES_MASK (1 << __LC_MESSAGES)
6339 #define LC_PAPER_MASK (1 << __LC_PAPER)
6340 #define LC_NAME_MASK (1 << __LC_NAME)
6341 #define LC_ADDRESS_MASK (1 << __LC_ADDRESS)
6342 #define LC_TELEPHONE_MASK (1 << __LC_TELEPHONE)
6343 #define LC_MEASUREMENT_MASK (1 << __LC_MEASUREMENT)
6344 #define LC_IDENTIFICATION_MASK (1 << __LC_IDENTIFICATION)
6345 #define LC_ALL_MASK (LC_CTYPE_MASK | LC_NUMERIC_MASK | LC_TIME_MASK | LC_COLLATE_MASK | LC_MONETARY_MASK | LC_MESSAGES_MASK | LC_PAPER_MASK | LC_NAME_MASK | LC_ADDRESS_MASK | LC_TELEPHONE_MASK | LC_MEASUREMENT_MASK | LC_IDENTIFICATION_MASK )
6346 # 187 "/usr/include/locale.h" 3 4
6347 extern __locale_t duplocale (__locale_t __dataset) throw ();
6348
6349
6350
6351 extern void freelocale (__locale_t __dataset) throw ();
6352
6353
6354
6355
6356
6357
6358 extern __locale_t uselocale (__locale_t __dataset) throw ();
6359
6360
6361
6362 #define LC_GLOBAL_LOCALE ((__locale_t) -1L)
6363
6364
6365
6366 }
6367 # 45 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/clocale" 2 3
6368
6369
6370 #define _GLIBCXX_CLOCALE 1
6371
6372
6373 #undef setlocale
6374 #undef localeconv
6375
6376 namespace std __attribute__ ((__visibility__ ("default"))) {
6377
6378 using ::lconv;
6379 using ::setlocale;
6380 using ::localeconv;
6381
6382 }
6383 # 43 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/x86_64-pc-linux-gnu/bits/c++locale.h" 2 3
6384 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/cstddef" 1 3
6385 # 41 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/cstddef" 3
6386
6387 # 42 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/cstddef" 3
6388
6389
6390 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 1 3 4
6391 # 45 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/cstddef" 2 3
6392 # 44 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/x86_64-pc-linux-gnu/bits/c++locale.h" 2 3
6393
6394 #define _GLIBCXX_C_LOCALE_GNU 1
6395
6396 #define _GLIBCXX_NUM_CATEGORIES 6
6397
6398
6399 namespace __gnu_cxx __attribute__ ((__visibility__ ("default"))) {
6400
6401 extern "C" __typeof(uselocale) __uselocale;
6402
6403 }
6404
6405
6406 namespace std __attribute__ ((__visibility__ ("default"))) {
6407
6408 typedef __locale_t __c_locale;
6409
6410
6411
6412
6413
6414 inline int
6415 __convert_from_v(const __c_locale& __cloc __attribute__ ((__unused__)),
6416 char* __out,
6417 const int __size __attribute__ ((__unused__)),
6418 const char* __fmt, ...)
6419 {
6420
6421 __c_locale __old = __gnu_cxx::__uselocale(__cloc);
6422 # 85 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/x86_64-pc-linux-gnu/bits/c++locale.h" 3
6423 __builtin_va_list __args;
6424 __builtin_va_start(__args, __fmt);
6425
6426
6427 const int __ret = __builtin_vsnprintf(__out, __size, __fmt, __args);
6428
6429
6430
6431
6432 __builtin_va_end(__args);
6433
6434
6435 __gnu_cxx::__uselocale(__old);
6436
6437
6438
6439
6440
6441
6442
6443 return __ret;
6444 }
6445
6446 }
6447 # 43 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/localefwd.h" 2 3
6448
6449 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/cctype" 1 3
6450 # 41 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/cctype" 3
6451
6452 # 42 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/cctype" 3
6453
6454
6455 # 1 "/usr/include/ctype.h" 1 3 4
6456 # 25 "/usr/include/ctype.h" 3 4
6457 #define _CTYPE_H 1
6458
6459
6460 # 1 "/usr/include/bits/types.h" 1 3 4
6461 # 25 "/usr/include/bits/types.h" 3 4
6462 #define _BITS_TYPES_H 1
6463
6464
6465 # 1 "/usr/include/bits/wordsize.h" 1 3 4
6466
6467
6468
6469 #define __WORDSIZE 64
6470 #define __WORDSIZE_COMPAT32 1
6471 # 29 "/usr/include/bits/types.h" 2 3 4
6472
6473
6474 typedef unsigned char __u_char;
6475 typedef unsigned short int __u_short;
6476 typedef unsigned int __u_int;
6477 typedef unsigned long int __u_long;
6478
6479
6480 typedef signed char __int8_t;
6481 typedef unsigned char __uint8_t;
6482 typedef signed short int __int16_t;
6483 typedef unsigned short int __uint16_t;
6484 typedef signed int __int32_t;
6485 typedef unsigned int __uint32_t;
6486
6487 typedef signed long int __int64_t;
6488 typedef unsigned long int __uint64_t;
6489
6490
6491
6492
6493
6494
6495
6496 typedef long int __quad_t;
6497 typedef unsigned long int __u_quad_t;
6498 # 99 "/usr/include/bits/types.h" 3 4
6499 #define __S16_TYPE short int
6500 #define __U16_TYPE unsigned short int
6501 #define __S32_TYPE int
6502 #define __U32_TYPE unsigned int
6503 #define __SLONGWORD_TYPE long int
6504 #define __ULONGWORD_TYPE unsigned long int
6505 # 118 "/usr/include/bits/types.h" 3 4
6506 #define __SQUAD_TYPE long int
6507 #define __UQUAD_TYPE unsigned long int
6508 #define __SWORD_TYPE long int
6509 #define __UWORD_TYPE unsigned long int
6510 #define __SLONG32_TYPE int
6511 #define __ULONG32_TYPE unsigned int
6512 #define __S64_TYPE long int
6513 #define __U64_TYPE unsigned long int
6514
6515 #define __STD_TYPE typedef
6516
6517
6518
6519 # 1 "/usr/include/bits/typesizes.h" 1 3 4
6520 # 25 "/usr/include/bits/typesizes.h" 3 4
6521 #define _BITS_TYPESIZES_H 1
6522
6523
6524
6525
6526 #define __DEV_T_TYPE __UQUAD_TYPE
6527 #define __UID_T_TYPE __U32_TYPE
6528 #define __GID_T_TYPE __U32_TYPE
6529 #define __INO_T_TYPE __ULONGWORD_TYPE
6530 #define __INO64_T_TYPE __UQUAD_TYPE
6531 #define __MODE_T_TYPE __U32_TYPE
6532 #define __NLINK_T_TYPE __UWORD_TYPE
6533 #define __OFF_T_TYPE __SLONGWORD_TYPE
6534 #define __OFF64_T_TYPE __SQUAD_TYPE
6535 #define __PID_T_TYPE __S32_TYPE
6536 #define __RLIM_T_TYPE __ULONGWORD_TYPE
6537 #define __RLIM64_T_TYPE __UQUAD_TYPE
6538 #define __BLKCNT_T_TYPE __SLONGWORD_TYPE
6539 #define __BLKCNT64_T_TYPE __SQUAD_TYPE
6540 #define __FSBLKCNT_T_TYPE __ULONGWORD_TYPE
6541 #define __FSBLKCNT64_T_TYPE __UQUAD_TYPE
6542 #define __FSFILCNT_T_TYPE __ULONGWORD_TYPE
6543 #define __FSFILCNT64_T_TYPE __UQUAD_TYPE
6544 #define __ID_T_TYPE __U32_TYPE
6545 #define __CLOCK_T_TYPE __SLONGWORD_TYPE
6546 #define __TIME_T_TYPE __SLONGWORD_TYPE
6547 #define __USECONDS_T_TYPE __U32_TYPE
6548 #define __SUSECONDS_T_TYPE __SLONGWORD_TYPE
6549 #define __DADDR_T_TYPE __S32_TYPE
6550 #define __SWBLK_T_TYPE __SLONGWORD_TYPE
6551 #define __KEY_T_TYPE __S32_TYPE
6552 #define __CLOCKID_T_TYPE __S32_TYPE
6553 #define __TIMER_T_TYPE void *
6554 #define __BLKSIZE_T_TYPE __SLONGWORD_TYPE
6555 #define __FSID_T_TYPE struct { int __val[2]; }
6556 #define __SSIZE_T_TYPE __SWORD_TYPE
6557
6558
6559 #define __FD_SETSIZE 1024
6560 # 132 "/usr/include/bits/types.h" 2 3 4
6561
6562
6563 typedef unsigned long int __dev_t;
6564 typedef unsigned int __uid_t;
6565 typedef unsigned int __gid_t;
6566 typedef unsigned long int __ino_t;
6567 typedef unsigned long int __ino64_t;
6568 typedef unsigned int __mode_t;
6569 typedef unsigned long int __nlink_t;
6570 typedef long int __off_t;
6571 typedef long int __off64_t;
6572 typedef int __pid_t;
6573 typedef struct { int __val[2]; } __fsid_t;
6574 typedef long int __clock_t;
6575 typedef unsigned long int __rlim_t;
6576 typedef unsigned long int __rlim64_t;
6577 typedef unsigned int __id_t;
6578 typedef long int __time_t;
6579 typedef unsigned int __useconds_t;
6580 typedef long int __suseconds_t;
6581
6582 typedef int __daddr_t;
6583 typedef long int __swblk_t;
6584 typedef int __key_t;
6585
6586
6587 typedef int __clockid_t;
6588
6589
6590 typedef void * __timer_t;
6591
6592
6593 typedef long int __blksize_t;
6594
6595
6596
6597
6598 typedef long int __blkcnt_t;
6599 typedef long int __blkcnt64_t;
6600
6601
6602 typedef unsigned long int __fsblkcnt_t;
6603 typedef unsigned long int __fsblkcnt64_t;
6604
6605
6606 typedef unsigned long int __fsfilcnt_t;
6607 typedef unsigned long int __fsfilcnt64_t;
6608
6609 typedef long int __ssize_t;
6610
6611
6612
6613 typedef __off64_t __loff_t;
6614 typedef __quad_t *__qaddr_t;
6615 typedef char *__caddr_t;
6616
6617
6618 typedef long int __intptr_t;
6619
6620
6621 typedef unsigned int __socklen_t;
6622
6623
6624 #undef __STD_TYPE
6625 # 29 "/usr/include/ctype.h" 2 3 4
6626
6627 extern "C" {
6628 # 41 "/usr/include/ctype.h" 3 4
6629 # 1 "/usr/include/endian.h" 1 3 4
6630 # 20 "/usr/include/endian.h" 3 4
6631 #define _ENDIAN_H 1
6632 # 32 "/usr/include/endian.h" 3 4
6633 #define __LITTLE_ENDIAN 1234
6634 #define __BIG_ENDIAN 4321
6635 #define __PDP_ENDIAN 3412
6636
6637
6638 # 1 "/usr/include/bits/endian.h" 1 3 4
6639
6640
6641
6642
6643
6644
6645 #define __BYTE_ORDER __LITTLE_ENDIAN
6646 # 38 "/usr/include/endian.h" 2 3 4
6647
6648
6649
6650
6651 #define __FLOAT_WORD_ORDER __BYTE_ORDER
6652
6653
6654
6655 #define LITTLE_ENDIAN __LITTLE_ENDIAN
6656 #define BIG_ENDIAN __BIG_ENDIAN
6657 #define PDP_ENDIAN __PDP_ENDIAN
6658 #define BYTE_ORDER __BYTE_ORDER
6659
6660
6661
6662 #define __LONG_LONG_PAIR(HI,LO) LO, HI
6663
6664
6665
6666
6667
6668
6669
6670 # 1 "/usr/include/bits/byteswap.h" 1 3 4
6671 # 26 "/usr/include/bits/byteswap.h" 3 4
6672 #define _BITS_BYTESWAP_H 1
6673
6674 # 1 "/usr/include/bits/wordsize.h" 1 3 4
6675
6676
6677
6678 #define __WORDSIZE 64
6679 #define __WORDSIZE_COMPAT32 1
6680 # 29 "/usr/include/bits/byteswap.h" 2 3 4
6681
6682
6683 #define __bswap_constant_16(x) ((unsigned short int) ((((x) >> 8) & 0xff) | (((x) & 0xff) << 8)))
6684
6685
6686
6687 #define __bswap_16(x) (__extension__ ({ register unsigned short int __v, __x = (unsigned short int) (x); if (__builtin_constant_p (__x)) __v = __bswap_constant_16 (__x); else __asm__ ("rorw $8, %w0" : "=r" (__v) : "0" (__x) : "cc"); __v; }))
6688 # 56 "/usr/include/bits/byteswap.h" 3 4
6689 #define __bswap_constant_32(x) ((((x) & 0xff000000) >> 24) | (((x) & 0x00ff0000) >> 8) | (((x) & 0x0000ff00) << 8) | (((x) & 0x000000ff) << 24))
6690 # 69 "/usr/include/bits/byteswap.h" 3 4
6691 #define __bswap_32(x) (__extension__ ({ register unsigned int __v, __x = (x); if (__builtin_constant_p (__x)) __v = __bswap_constant_32 (__x); else __asm__ ("bswap %0" : "=r" (__v) : "0" (__x)); __v; }))
6692 # 101 "/usr/include/bits/byteswap.h" 3 4
6693 #define __bswap_constant_64(x) ((((x) & 0xff00000000000000ull) >> 56) | (((x) & 0x00ff000000000000ull) >> 40) | (((x) & 0x0000ff0000000000ull) >> 24) | (((x) & 0x000000ff00000000ull) >> 8) | (((x) & 0x00000000ff000000ull) << 8) | (((x) & 0x0000000000ff0000ull) << 24) | (((x) & 0x000000000000ff00ull) << 40) | (((x) & 0x00000000000000ffull) << 56))
6694 # 112 "/usr/include/bits/byteswap.h" 3 4
6695 #define __bswap_64(x) (__extension__ ({ register unsigned long __v, __x = (x); if (__builtin_constant_p (__x)) __v = __bswap_constant_64 (__x); else __asm__ ("bswap %q0" : "=r" (__v) : "0" (__x)); __v; }))
6696 # 62 "/usr/include/endian.h" 2 3 4
6697
6698
6699 #define htobe16(x) __bswap_16 (x)
6700 #define htole16(x) (x)
6701 #define be16toh(x) __bswap_16 (x)
6702 #define le16toh(x) (x)
6703
6704 #define htobe32(x) __bswap_32 (x)
6705 #define htole32(x) (x)
6706 #define be32toh(x) __bswap_32 (x)
6707 #define le32toh(x) (x)
6708
6709 #define htobe64(x) __bswap_64 (x)
6710 #define htole64(x) (x)
6711 #define be64toh(x) __bswap_64 (x)
6712 #define le64toh(x) (x)
6713 # 42 "/usr/include/ctype.h" 2 3 4
6714
6715
6716
6717 #define _ISbit(bit) ((bit) < 8 ? ((1 << (bit)) << 8) : ((1 << (bit)) >> 8))
6718
6719
6720 enum
6721 {
6722 _ISupper = ((0) < 8 ? ((1 << (0)) << 8) : ((1 << (0)) >> 8)),
6723 _ISlower = ((1) < 8 ? ((1 << (1)) << 8) : ((1 << (1)) >> 8)),
6724 _ISalpha = ((2) < 8 ? ((1 << (2)) << 8) : ((1 << (2)) >> 8)),
6725 _ISdigit = ((3) < 8 ? ((1 << (3)) << 8) : ((1 << (3)) >> 8)),
6726 _ISxdigit = ((4) < 8 ? ((1 << (4)) << 8) : ((1 << (4)) >> 8)),
6727 _ISspace = ((5) < 8 ? ((1 << (5)) << 8) : ((1 << (5)) >> 8)),
6728 _ISprint = ((6) < 8 ? ((1 << (6)) << 8) : ((1 << (6)) >> 8)),
6729 _ISgraph = ((7) < 8 ? ((1 << (7)) << 8) : ((1 << (7)) >> 8)),
6730 _ISblank = ((8) < 8 ? ((1 << (8)) << 8) : ((1 << (8)) >> 8)),
6731 _IScntrl = ((9) < 8 ? ((1 << (9)) << 8) : ((1 << (9)) >> 8)),
6732 _ISpunct = ((10) < 8 ? ((1 << (10)) << 8) : ((1 << (10)) >> 8)),
6733 _ISalnum = ((11) < 8 ? ((1 << (11)) << 8) : ((1 << (11)) >> 8))
6734 };
6735 # 81 "/usr/include/ctype.h" 3 4
6736 extern __const unsigned short int **__ctype_b_loc (void)
6737 throw () __attribute__ ((__const));
6738 extern __const __int32_t **__ctype_tolower_loc (void)
6739 throw () __attribute__ ((__const));
6740 extern __const __int32_t **__ctype_toupper_loc (void)
6741 throw () __attribute__ ((__const));
6742
6743 #define __isctype(c,type) ((*__ctype_b_loc ())[(int) (c)] & (unsigned short int) type)
6744
6745
6746 #define __isascii(c) (((c) & ~0x7f) == 0)
6747 #define __toascii(c) ((c) & 0x7f)
6748
6749 #define __exctype(name) extern int name (int) __THROW
6750
6751
6752
6753
6754
6755
6756
6757 extern int isalnum (int) throw ();
6758 extern int isalpha (int) throw ();
6759 extern int iscntrl (int) throw ();
6760 extern int isdigit (int) throw ();
6761 extern int islower (int) throw ();
6762 extern int isgraph (int) throw ();
6763 extern int isprint (int) throw ();
6764 extern int ispunct (int) throw ();
6765 extern int isspace (int) throw ();
6766 extern int isupper (int) throw ();
6767 extern int isxdigit (int) throw ();
6768
6769
6770
6771 extern int tolower (int __c) throw ();
6772
6773
6774 extern int toupper (int __c) throw ();
6775
6776
6777
6778
6779
6780
6781
6782
6783 extern int isblank (int) throw ();
6784
6785
6786
6787
6788
6789
6790 extern int isctype (int __c, int __mask) throw ();
6791
6792
6793
6794
6795
6796
6797 extern int isascii (int __c) throw ();
6798
6799
6800
6801 extern int toascii (int __c) throw ();
6802
6803
6804
6805 extern int _toupper (int) throw ();
6806 extern int _tolower (int) throw ();
6807
6808
6809
6810 #define __tobody(c,f,a,args) (__extension__ ({ int __res; if (sizeof (c) > 1) { if (__builtin_constant_p (c)) { int __c = (c); __res = __c < -128 || __c > 255 ? __c : (a)[__c]; } else __res = f args; } else __res = (a)[(int) (c)]; __res; }))
6811 # 237 "/usr/include/ctype.h" 3 4
6812 #define __isctype_l(c,type,locale) ((locale)->__ctype_b[(int) (c)] & (unsigned short int) type)
6813
6814
6815 #define __exctype_l(name) extern int name (int, __locale_t) __THROW
6816
6817
6818
6819
6820
6821
6822 extern int isalnum_l (int, __locale_t) throw ();
6823 extern int isalpha_l (int, __locale_t) throw ();
6824 extern int iscntrl_l (int, __locale_t) throw ();
6825 extern int isdigit_l (int, __locale_t) throw ();
6826 extern int islower_l (int, __locale_t) throw ();
6827 extern int isgraph_l (int, __locale_t) throw ();
6828 extern int isprint_l (int, __locale_t) throw ();
6829 extern int ispunct_l (int, __locale_t) throw ();
6830 extern int isspace_l (int, __locale_t) throw ();
6831 extern int isupper_l (int, __locale_t) throw ();
6832 extern int isxdigit_l (int, __locale_t) throw ();
6833
6834 extern int isblank_l (int, __locale_t) throw ();
6835
6836
6837
6838 extern int __tolower_l (int __c, __locale_t __l) throw ();
6839 extern int tolower_l (int __c, __locale_t __l) throw ();
6840
6841
6842 extern int __toupper_l (int __c, __locale_t __l) throw ();
6843 extern int toupper_l (int __c, __locale_t __l) throw ();
6844 # 323 "/usr/include/ctype.h" 3 4
6845 }
6846 # 45 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/cctype" 2 3
6847
6848
6849 #define _GLIBCXX_CCTYPE 1
6850
6851
6852 #undef isalnum
6853 #undef isalpha
6854 #undef iscntrl
6855 #undef isdigit
6856 #undef isgraph
6857 #undef islower
6858 #undef isprint
6859 #undef ispunct
6860 #undef isspace
6861 #undef isupper
6862 #undef isxdigit
6863 #undef tolower
6864 #undef toupper
6865
6866 namespace std __attribute__ ((__visibility__ ("default"))) {
6867
6868 using ::isalnum;
6869 using ::isalpha;
6870 using ::iscntrl;
6871 using ::isdigit;
6872 using ::isgraph;
6873 using ::islower;
6874 using ::isprint;
6875 using ::ispunct;
6876 using ::isspace;
6877 using ::isupper;
6878 using ::isxdigit;
6879 using ::tolower;
6880 using ::toupper;
6881
6882 }
6883 # 45 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/localefwd.h" 2 3
6884
6885 namespace std __attribute__ ((__visibility__ ("default"))) {
6886 # 55 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/localefwd.h" 3
6887 class locale;
6888
6889 template<typename _Facet>
6890 bool
6891 has_facet(const locale&) throw();
6892
6893 template<typename _Facet>
6894 const _Facet&
6895 use_facet(const locale&);
6896
6897
6898 template<typename _CharT>
6899 bool
6900 isspace(_CharT, const locale&);
6901
6902 template<typename _CharT>
6903 bool
6904 isprint(_CharT, const locale&);
6905
6906 template<typename _CharT>
6907 bool
6908 iscntrl(_CharT, const locale&);
6909
6910 template<typename _CharT>
6911 bool
6912 isupper(_CharT, const locale&);
6913
6914 template<typename _CharT>
6915 bool
6916 islower(_CharT, const locale&);
6917
6918 template<typename _CharT>
6919 bool
6920 isalpha(_CharT, const locale&);
6921
6922 template<typename _CharT>
6923 bool
6924 isdigit(_CharT, const locale&);
6925
6926 template<typename _CharT>
6927 bool
6928 ispunct(_CharT, const locale&);
6929
6930 template<typename _CharT>
6931 bool
6932 isxdigit(_CharT, const locale&);
6933
6934 template<typename _CharT>
6935 bool
6936 isalnum(_CharT, const locale&);
6937
6938 template<typename _CharT>
6939 bool
6940 isgraph(_CharT, const locale&);
6941
6942 template<typename _CharT>
6943 _CharT
6944 toupper(_CharT, const locale&);
6945
6946 template<typename _CharT>
6947 _CharT
6948 tolower(_CharT, const locale&);
6949
6950
6951 class ctype_base;
6952 template<typename _CharT>
6953 class ctype;
6954 template<> class ctype<char>;
6955
6956 template<> class ctype<wchar_t>;
6957
6958 template<typename _CharT>
6959 class ctype_byname;
6960
6961
6962 class codecvt_base;
6963 template<typename _InternT, typename _ExternT, typename _StateT>
6964 class codecvt;
6965 template<> class codecvt<char, char, mbstate_t>;
6966
6967 template<> class codecvt<wchar_t, char, mbstate_t>;
6968
6969 template<typename _InternT, typename _ExternT, typename _StateT>
6970 class codecvt_byname;
6971
6972
6973
6974 template<typename _CharT, typename _InIter = istreambuf_iterator<_CharT> >
6975 class num_get;
6976 template<typename _CharT, typename _OutIter = ostreambuf_iterator<_CharT> >
6977 class num_put;
6978
6979 template<typename _CharT> class numpunct;
6980 template<typename _CharT> class numpunct_byname;
6981
6982
6983 template<typename _CharT>
6984 class collate;
6985 template<typename _CharT> class
6986 collate_byname;
6987
6988
6989 class time_base;
6990 template<typename _CharT, typename _InIter = istreambuf_iterator<_CharT> >
6991 class time_get;
6992 template<typename _CharT, typename _InIter = istreambuf_iterator<_CharT> >
6993 class time_get_byname;
6994 template<typename _CharT, typename _OutIter = ostreambuf_iterator<_CharT> >
6995 class time_put;
6996 template<typename _CharT, typename _OutIter = ostreambuf_iterator<_CharT> >
6997 class time_put_byname;
6998
6999
7000 class money_base;
7001
7002 template<typename _CharT, typename _InIter = istreambuf_iterator<_CharT> >
7003 class money_get;
7004 template<typename _CharT, typename _OutIter = ostreambuf_iterator<_CharT> >
7005 class money_put;
7006
7007 template<typename _CharT, bool _Intl = false>
7008 class moneypunct;
7009 template<typename _CharT, bool _Intl = false>
7010 class moneypunct_byname;
7011
7012
7013 class messages_base;
7014 template<typename _CharT>
7015 class messages;
7016 template<typename _CharT>
7017 class messages_byname;
7018
7019 }
7020 # 43 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/ios" 2 3
7021 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/ios_base.h" 1 3
7022 # 37 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/ios_base.h" 3
7023 #define _IOS_BASE_H 1
7024
7025
7026 # 40 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/ios_base.h" 3
7027
7028 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/ext/atomicity.h" 1 3
7029 # 31 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/ext/atomicity.h" 3
7030 #define _GLIBCXX_ATOMICITY_H 1
7031
7032
7033 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/x86_64-pc-linux-gnu/bits/gthr.h" 1 3
7034 # 27 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/x86_64-pc-linux-gnu/bits/gthr.h" 3
7035 #define _GLIBCXX_GCC_GTHR_H
7036
7037
7038 #pragma GCC visibility push(default)
7039 # 159 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/x86_64-pc-linux-gnu/bits/gthr.h" 3
7040 #define _GLIBCXX_GTHREAD_USE_WEAK 1
7041
7042
7043 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/x86_64-pc-linux-gnu/bits/gthr-default.h" 1 3
7044 # 28 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/x86_64-pc-linux-gnu/bits/gthr-default.h" 3
7045 #define _GLIBCXX_GCC_GTHR_POSIX_H
7046
7047
7048
7049
7050 #define __GTHREADS 1
7051 #define __GTHREADS_CXX0X 1
7052
7053
7054
7055
7056
7057
7058 # 1 "/usr/include/pthread.h" 1 3 4
7059 # 21 "/usr/include/pthread.h" 3 4
7060 #define _PTHREAD_H 1
7061
7062
7063
7064 # 1 "/usr/include/sched.h" 1 3 4
7065 # 22 "/usr/include/sched.h" 3 4
7066 #define _SCHED_H 1
7067
7068
7069
7070
7071
7072
7073 #define __need_size_t
7074 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 1 3 4
7075 # 160 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 3 4
7076 #undef __need_ptrdiff_t
7077 # 233 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 3 4
7078 #undef __need_size_t
7079 # 342 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 3 4
7080 #undef __need_wchar_t
7081 # 395 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 3 4
7082 #undef NULL
7083
7084 #define NULL __null
7085 # 406 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 3 4
7086 #undef __need_NULL
7087
7088
7089
7090
7091 #define offsetof(TYPE,MEMBER) __builtin_offsetof (TYPE, MEMBER)
7092 # 31 "/usr/include/sched.h" 2 3 4
7093
7094 #define __need_time_t
7095 #define __need_timespec
7096 # 1 "/usr/include/time.h" 1 3 4
7097 # 67 "/usr/include/time.h" 3 4
7098 #undef __need_clock_t
7099
7100
7101 #define __time_t_defined 1
7102
7103
7104
7105
7106
7107 typedef __time_t time_t;
7108
7109
7110
7111
7112
7113
7114 #undef __need_time_t
7115 # 95 "/usr/include/time.h" 3 4
7116 #undef __clockid_time_t
7117 # 107 "/usr/include/time.h" 3 4
7118 #undef __need_timer_t
7119
7120
7121
7122
7123
7124
7125 #define __timespec_defined 1
7126
7127
7128
7129
7130
7131 struct timespec
7132 {
7133 __time_t tv_sec;
7134 long int tv_nsec;
7135 };
7136
7137
7138 #undef __need_timespec
7139 # 35 "/usr/include/sched.h" 2 3 4
7140
7141
7142 typedef __pid_t pid_t;
7143 #define __pid_t_defined
7144
7145
7146
7147
7148 # 1 "/usr/include/bits/sched.h" 1 3 4
7149 # 30 "/usr/include/bits/sched.h" 3 4
7150 #define SCHED_OTHER 0
7151 #define SCHED_FIFO 1
7152 #define SCHED_RR 2
7153
7154 #define SCHED_BATCH 3
7155 #define SCHED_IDLE 5
7156
7157 #define SCHED_RESET_ON_FORK 0x40000000
7158
7159
7160
7161
7162 #define CSIGNAL 0x000000ff
7163 #define CLONE_VM 0x00000100
7164 #define CLONE_FS 0x00000200
7165 #define CLONE_FILES 0x00000400
7166 #define CLONE_SIGHAND 0x00000800
7167 #define CLONE_PTRACE 0x00002000
7168 #define CLONE_VFORK 0x00004000
7169
7170 #define CLONE_PARENT 0x00008000
7171
7172 #define CLONE_THREAD 0x00010000
7173 #define CLONE_NEWNS 0x00020000
7174 #define CLONE_SYSVSEM 0x00040000
7175 #define CLONE_SETTLS 0x00080000
7176 #define CLONE_PARENT_SETTID 0x00100000
7177
7178 #define CLONE_CHILD_CLEARTID 0x00200000
7179
7180 #define CLONE_DETACHED 0x00400000
7181 #define CLONE_UNTRACED 0x00800000
7182
7183 #define CLONE_CHILD_SETTID 0x01000000
7184
7185 #define CLONE_NEWUTS 0x04000000
7186 #define CLONE_NEWIPC 0x08000000
7187 #define CLONE_NEWUSER 0x10000000
7188 #define CLONE_NEWPID 0x20000000
7189 #define CLONE_NEWNET 0x40000000
7190 #define CLONE_IO 0x80000000
7191
7192
7193
7194 struct sched_param
7195 {
7196 int __sched_priority;
7197 };
7198
7199 extern "C" {
7200
7201
7202
7203 extern int clone (int (*__fn) (void *__arg), void *__child_stack,
7204 int __flags, void *__arg, ...) throw ();
7205
7206
7207 extern int unshare (int __flags) throw ();
7208
7209
7210 extern int sched_getcpu (void) throw ();
7211
7212
7213 extern int setns (int __fd, int __nstype) throw ();
7214
7215
7216
7217 }
7218
7219
7220
7221
7222
7223 #define __defined_schedparam 1
7224
7225 struct __sched_param
7226 {
7227 int __sched_priority;
7228 };
7229 #undef __need_schedparam
7230
7231
7232
7233
7234 #define __cpu_set_t_defined
7235
7236 #define __CPU_SETSIZE 1024
7237 #define __NCPUBITS (8 * sizeof (__cpu_mask))
7238
7239
7240 typedef unsigned long int __cpu_mask;
7241
7242
7243 #define __CPUELT(cpu) ((cpu) / __NCPUBITS)
7244 #define __CPUMASK(cpu) ((__cpu_mask) 1 << ((cpu) % __NCPUBITS))
7245
7246
7247 typedef struct
7248 {
7249 __cpu_mask __bits[1024 / (8 * sizeof (__cpu_mask))];
7250 } cpu_set_t;
7251
7252
7253
7254 #define __CPU_ZERO_S(setsize,cpusetp) do __builtin_memset (cpusetp, '\0', setsize); while (0)
7255 # 146 "/usr/include/bits/sched.h" 3 4
7256 #define __CPU_SET_S(cpu,setsize,cpusetp) (__extension__ ({ size_t __cpu = (cpu); __cpu < 8 * (setsize) ? (((__cpu_mask *) ((cpusetp)->__bits))[__CPUELT (__cpu)] |= __CPUMASK (__cpu)) : 0; }))
7257
7258
7259
7260
7261
7262
7263 #define __CPU_CLR_S(cpu,setsize,cpusetp) (__extension__ ({ size_t __cpu = (cpu); __cpu < 8 * (setsize) ? (((__cpu_mask *) ((cpusetp)->__bits))[__CPUELT (__cpu)] &= ~__CPUMASK (__cpu)) : 0; }))
7264
7265
7266
7267
7268
7269
7270 #define __CPU_ISSET_S(cpu,setsize,cpusetp) (__extension__ ({ size_t __cpu = (cpu); __cpu < 8 * (setsize) ? ((((__const __cpu_mask *) ((cpusetp)->__bits))[__CPUELT (__cpu)] & __CPUMASK (__cpu))) != 0 : 0; }))
7271
7272
7273
7274
7275
7276
7277
7278 #define __CPU_COUNT_S(setsize,cpusetp) __sched_cpucount (setsize, cpusetp)
7279
7280
7281
7282 #define __CPU_EQUAL_S(setsize,cpusetp1,cpusetp2) (__builtin_memcmp (cpusetp1, cpusetp2, setsize) == 0)
7283 # 187 "/usr/include/bits/sched.h" 3 4
7284 #define __CPU_OP_S(setsize,destset,srcset1,srcset2,op) (__extension__ ({ cpu_set_t *__dest = (destset); __const __cpu_mask *__arr1 = (srcset1)->__bits; __const __cpu_mask *__arr2 = (srcset2)->__bits; size_t __imax = (setsize) / sizeof (__cpu_mask); size_t __i; for (__i = 0; __i < __imax; ++__i) ((__cpu_mask *) __dest->__bits)[__i] = __arr1[__i] op __arr2[__i]; __dest; }))
7285 # 198 "/usr/include/bits/sched.h" 3 4
7286 #define __CPU_ALLOC_SIZE(count) ((((count) + __NCPUBITS - 1) / __NCPUBITS) * sizeof (__cpu_mask))
7287
7288 #define __CPU_ALLOC(count) __sched_cpualloc (count)
7289 #define __CPU_FREE(cpuset) __sched_cpufree (cpuset)
7290
7291 extern "C" {
7292
7293 extern int __sched_cpucount (size_t __setsize, const cpu_set_t *__setp)
7294 throw ();
7295 extern cpu_set_t *__sched_cpualloc (size_t __count) throw () __attribute__ ((__warn_unused_result__));
7296 extern void __sched_cpufree (cpu_set_t *__set) throw ();
7297
7298 }
7299 # 44 "/usr/include/sched.h" 2 3 4
7300
7301 #define sched_priority __sched_priority
7302
7303
7304 extern "C" {
7305
7306
7307 extern int sched_setparam (__pid_t __pid, __const struct sched_param *__param)
7308 throw ();
7309
7310
7311 extern int sched_getparam (__pid_t __pid, struct sched_param *__param) throw ();
7312
7313
7314 extern int sched_setscheduler (__pid_t __pid, int __policy,
7315 __const struct sched_param *__param) throw ();
7316
7317
7318 extern int sched_getscheduler (__pid_t __pid) throw ();
7319
7320
7321 extern int sched_yield (void) throw ();
7322
7323
7324 extern int sched_get_priority_max (int __algorithm) throw ();
7325
7326
7327 extern int sched_get_priority_min (int __algorithm) throw ();
7328
7329
7330 extern int sched_rr_get_interval (__pid_t __pid, struct timespec *__t) throw ();
7331
7332
7333
7334
7335 #define CPU_SETSIZE __CPU_SETSIZE
7336 #define CPU_SET(cpu,cpusetp) __CPU_SET_S (cpu, sizeof (cpu_set_t), cpusetp)
7337 #define CPU_CLR(cpu,cpusetp) __CPU_CLR_S (cpu, sizeof (cpu_set_t), cpusetp)
7338 #define CPU_ISSET(cpu,cpusetp) __CPU_ISSET_S (cpu, sizeof (cpu_set_t), cpusetp)
7339
7340 #define CPU_ZERO(cpusetp) __CPU_ZERO_S (sizeof (cpu_set_t), cpusetp)
7341 #define CPU_COUNT(cpusetp) __CPU_COUNT_S (sizeof (cpu_set_t), cpusetp)
7342
7343 #define CPU_SET_S(cpu,setsize,cpusetp) __CPU_SET_S (cpu, setsize, cpusetp)
7344 #define CPU_CLR_S(cpu,setsize,cpusetp) __CPU_CLR_S (cpu, setsize, cpusetp)
7345 #define CPU_ISSET_S(cpu,setsize,cpusetp) __CPU_ISSET_S (cpu, setsize, cpusetp)
7346
7347 #define CPU_ZERO_S(setsize,cpusetp) __CPU_ZERO_S (setsize, cpusetp)
7348 #define CPU_COUNT_S(setsize,cpusetp) __CPU_COUNT_S (setsize, cpusetp)
7349
7350 #define CPU_EQUAL(cpusetp1,cpusetp2) __CPU_EQUAL_S (sizeof (cpu_set_t), cpusetp1, cpusetp2)
7351
7352 #define CPU_EQUAL_S(setsize,cpusetp1,cpusetp2) __CPU_EQUAL_S (setsize, cpusetp1, cpusetp2)
7353
7354
7355 #define CPU_AND(destset,srcset1,srcset2) __CPU_OP_S (sizeof (cpu_set_t), destset, srcset1, srcset2, &)
7356
7357 #define CPU_OR(destset,srcset1,srcset2) __CPU_OP_S (sizeof (cpu_set_t), destset, srcset1, srcset2, |)
7358
7359 #define CPU_XOR(destset,srcset1,srcset2) __CPU_OP_S (sizeof (cpu_set_t), destset, srcset1, srcset2, ^)
7360
7361 #define CPU_AND_S(setsize,destset,srcset1,srcset2) __CPU_OP_S (setsize, destset, srcset1, srcset2, &)
7362
7363 #define CPU_OR_S(setsize,destset,srcset1,srcset2) __CPU_OP_S (setsize, destset, srcset1, srcset2, |)
7364
7365 #define CPU_XOR_S(setsize,destset,srcset1,srcset2) __CPU_OP_S (setsize, destset, srcset1, srcset2, ^)
7366
7367
7368 #define CPU_ALLOC_SIZE(count) __CPU_ALLOC_SIZE (count)
7369 #define CPU_ALLOC(count) __CPU_ALLOC (count)
7370 #define CPU_FREE(cpuset) __CPU_FREE (cpuset)
7371
7372
7373
7374 extern int sched_setaffinity (__pid_t __pid, size_t __cpusetsize,
7375 __const cpu_set_t *__cpuset) throw ();
7376
7377
7378 extern int sched_getaffinity (__pid_t __pid, size_t __cpusetsize,
7379 cpu_set_t *__cpuset) throw ();
7380
7381
7382 }
7383 # 26 "/usr/include/pthread.h" 2 3 4
7384 # 1 "/usr/include/time.h" 1 3 4
7385 # 27 "/usr/include/time.h" 3 4
7386 #define _TIME_H 1
7387
7388
7389 extern "C" {
7390
7391
7392
7393
7394
7395 #define __need_size_t
7396 #define __need_NULL
7397 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 1 3 4
7398 # 160 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 3 4
7399 #undef __need_ptrdiff_t
7400 # 233 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 3 4
7401 #undef __need_size_t
7402 # 342 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 3 4
7403 #undef __need_wchar_t
7404 # 395 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 3 4
7405 #undef NULL
7406
7407 #define NULL __null
7408 # 406 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 3 4
7409 #undef __need_NULL
7410
7411
7412
7413
7414 #define offsetof(TYPE,MEMBER) __builtin_offsetof (TYPE, MEMBER)
7415 # 39 "/usr/include/time.h" 2 3 4
7416
7417
7418
7419 # 1 "/usr/include/bits/time.h" 1 3 4
7420 # 26 "/usr/include/bits/time.h" 3 4
7421 #define _STRUCT_TIMEVAL 1
7422
7423
7424
7425
7426 struct timeval
7427 {
7428 __time_t tv_sec;
7429 __suseconds_t tv_usec;
7430 };
7431
7432
7433
7434
7435
7436 #define _BITS_TIME_H 1
7437
7438
7439
7440
7441
7442
7443
7444 #define CLOCKS_PER_SEC 1000000l
7445 # 61 "/usr/include/bits/time.h" 3 4
7446 #define CLOCK_REALTIME 0
7447
7448 #define CLOCK_MONOTONIC 1
7449
7450 #define CLOCK_PROCESS_CPUTIME_ID 2
7451
7452 #define CLOCK_THREAD_CPUTIME_ID 3
7453
7454 #define CLOCK_MONOTONIC_RAW 4
7455
7456 #define CLOCK_REALTIME_COARSE 5
7457
7458 #define CLOCK_MONOTONIC_COARSE 6
7459
7460 #define CLOCK_BOOTTIME 7
7461
7462 #define CLOCK_REALTIME_ALARM 8
7463
7464 #define CLOCK_BOOTTIME_ALARM 9
7465
7466
7467 #define TIMER_ABSTIME 1
7468
7469
7470
7471 # 1 "/usr/include/bits/timex.h" 1 3 4
7472 # 20 "/usr/include/bits/timex.h" 3 4
7473 #define _BITS_TIMEX_H 1
7474
7475
7476
7477 struct timex
7478 {
7479 unsigned int modes;
7480 long int offset;
7481 long int freq;
7482 long int maxerror;
7483 long int esterror;
7484 int status;
7485 long int constant;
7486 long int precision;
7487 long int tolerance;
7488 struct timeval time;
7489 long int tick;
7490
7491 long int ppsfreq;
7492 long int jitter;
7493 int shift;
7494 long int stabil;
7495 long int jitcnt;
7496 long int calcnt;
7497 long int errcnt;
7498 long int stbcnt;
7499
7500 int tai;
7501
7502
7503 int :32; int :32; int :32; int :32;
7504 int :32; int :32; int :32; int :32;
7505 int :32; int :32; int :32;
7506 };
7507
7508
7509 #define ADJ_OFFSET 0x0001
7510 #define ADJ_FREQUENCY 0x0002
7511 #define ADJ_MAXERROR 0x0004
7512 #define ADJ_ESTERROR 0x0008
7513 #define ADJ_STATUS 0x0010
7514 #define ADJ_TIMECONST 0x0020
7515 #define ADJ_TAI 0x0080
7516 #define ADJ_MICRO 0x1000
7517 #define ADJ_NANO 0x2000
7518 #define ADJ_TICK 0x4000
7519 #define ADJ_OFFSET_SINGLESHOT 0x8001
7520 #define ADJ_OFFSET_SS_READ 0xa001
7521
7522
7523 #define MOD_OFFSET ADJ_OFFSET
7524 #define MOD_FREQUENCY ADJ_FREQUENCY
7525 #define MOD_MAXERROR ADJ_MAXERROR
7526 #define MOD_ESTERROR ADJ_ESTERROR
7527 #define MOD_STATUS ADJ_STATUS
7528 #define MOD_TIMECONST ADJ_TIMECONST
7529 #define MOD_CLKB ADJ_TICK
7530 #define MOD_CLKA ADJ_OFFSET_SINGLESHOT
7531 #define MOD_TAI ADJ_TAI
7532 #define MOD_MICRO ADJ_MICRO
7533 #define MOD_NANO ADJ_NANO
7534
7535
7536
7537 #define STA_PLL 0x0001
7538 #define STA_PPSFREQ 0x0002
7539 #define STA_PPSTIME 0x0004
7540 #define STA_FLL 0x0008
7541
7542 #define STA_INS 0x0010
7543 #define STA_DEL 0x0020
7544 #define STA_UNSYNC 0x0040
7545 #define STA_FREQHOLD 0x0080
7546
7547 #define STA_PPSSIGNAL 0x0100
7548 #define STA_PPSJITTER 0x0200
7549 #define STA_PPSWANDER 0x0400
7550 #define STA_PPSERROR 0x0800
7551
7552 #define STA_CLOCKERR 0x1000
7553 #define STA_NANO 0x2000
7554 #define STA_MODE 0x4000
7555 #define STA_CLK 0x8000
7556
7557
7558 #define STA_RONLY (STA_PPSSIGNAL | STA_PPSJITTER | STA_PPSWANDER | STA_PPSERROR | STA_CLOCKERR | STA_NANO | STA_MODE | STA_CLK)
7559 # 87 "/usr/include/bits/time.h" 2 3 4
7560
7561 extern "C" {
7562
7563
7564 extern int clock_adjtime (__clockid_t __clock_id, struct timex *__utx) throw ();
7565
7566 }
7567
7568
7569
7570
7571
7572 #undef __need_timeval
7573 # 43 "/usr/include/time.h" 2 3 4
7574 # 54 "/usr/include/time.h" 3 4
7575 #define __clock_t_defined 1
7576
7577
7578
7579
7580
7581 typedef __clock_t clock_t;
7582
7583
7584
7585
7586
7587
7588 #undef __need_clock_t
7589 # 83 "/usr/include/time.h" 3 4
7590 #undef __need_time_t
7591
7592
7593
7594 #define __clockid_t_defined 1
7595
7596
7597
7598
7599 typedef __clockid_t clockid_t;
7600
7601
7602 #undef __clockid_time_t
7603
7604
7605
7606 #define __timer_t_defined 1
7607
7608
7609
7610
7611 typedef __timer_t timer_t;
7612
7613
7614 #undef __need_timer_t
7615 # 127 "/usr/include/time.h" 3 4
7616 #undef __need_timespec
7617
7618
7619
7620
7621
7622 struct tm
7623 {
7624 int tm_sec;
7625 int tm_min;
7626 int tm_hour;
7627 int tm_mday;
7628 int tm_mon;
7629 int tm_year;
7630 int tm_wday;
7631 int tm_yday;
7632 int tm_isdst;
7633
7634
7635 long int tm_gmtoff;
7636 __const char *tm_zone;
7637
7638
7639
7640
7641 };
7642
7643
7644
7645
7646
7647
7648
7649
7650 struct itimerspec
7651 {
7652 struct timespec it_interval;
7653 struct timespec it_value;
7654 };
7655
7656
7657 struct sigevent;
7658 # 180 "/usr/include/time.h" 3 4
7659
7660
7661
7662 extern clock_t clock (void) throw ();
7663
7664
7665 extern time_t time (time_t *__timer) throw ();
7666
7667
7668 extern double difftime (time_t __time1, time_t __time0)
7669 throw () __attribute__ ((__const__));
7670
7671
7672 extern time_t mktime (struct tm *__tp) throw ();
7673
7674
7675
7676
7677
7678 extern size_t strftime (char *__restrict __s, size_t __maxsize,
7679 __const char *__restrict __format,
7680 __const struct tm *__restrict __tp) throw ();
7681
7682
7683
7684
7685
7686 extern char *strptime (__const char *__restrict __s,
7687 __const char *__restrict __fmt, struct tm *__tp)
7688 throw ();
7689
7690
7691
7692
7693
7694
7695
7696 extern size_t strftime_l (char *__restrict __s, size_t __maxsize,
7697 __const char *__restrict __format,
7698 __const struct tm *__restrict __tp,
7699 __locale_t __loc) throw ();
7700
7701
7702
7703 extern char *strptime_l (__const char *__restrict __s,
7704 __const char *__restrict __fmt, struct tm *__tp,
7705 __locale_t __loc) throw ();
7706
7707
7708
7709
7710
7711
7712 extern struct tm *gmtime (__const time_t *__timer) throw ();
7713
7714
7715
7716 extern struct tm *localtime (__const time_t *__timer) throw ();
7717
7718
7719
7720
7721
7722 extern struct tm *gmtime_r (__const time_t *__restrict __timer,
7723 struct tm *__restrict __tp) throw ();
7724
7725
7726
7727 extern struct tm *localtime_r (__const time_t *__restrict __timer,
7728 struct tm *__restrict __tp) throw ();
7729
7730
7731
7732
7733
7734 extern char *asctime (__const struct tm *__tp) throw ();
7735
7736
7737 extern char *ctime (__const time_t *__timer) throw ();
7738
7739
7740
7741
7742
7743
7744
7745 extern char *asctime_r (__const struct tm *__restrict __tp,
7746 char *__restrict __buf) throw ();
7747
7748
7749 extern char *ctime_r (__const time_t *__restrict __timer,
7750 char *__restrict __buf) throw ();
7751
7752
7753
7754
7755 extern char *__tzname[2];
7756 extern int __daylight;
7757 extern long int __timezone;
7758
7759
7760
7761
7762 extern char *tzname[2];
7763
7764
7765
7766 extern void tzset (void) throw ();
7767
7768
7769
7770 extern int daylight;
7771 extern long int timezone;
7772
7773
7774
7775
7776
7777 extern int stime (__const time_t *__when) throw ();
7778
7779
7780
7781
7782
7783 #define __isleap(year) ((year) % 4 == 0 && ((year) % 100 != 0 || (year) % 400 == 0))
7784 # 313 "/usr/include/time.h" 3 4
7785 extern time_t timegm (struct tm *__tp) throw ();
7786
7787
7788 extern time_t timelocal (struct tm *__tp) throw ();
7789
7790
7791 extern int dysize (int __year) throw () __attribute__ ((__const__));
7792 # 328 "/usr/include/time.h" 3 4
7793 extern int nanosleep (__const struct timespec *__requested_time,
7794 struct timespec *__remaining);
7795
7796
7797
7798 extern int clock_getres (clockid_t __clock_id, struct timespec *__res) throw ();
7799
7800
7801 extern int clock_gettime (clockid_t __clock_id, struct timespec *__tp) throw ();
7802
7803
7804 extern int clock_settime (clockid_t __clock_id, __const struct timespec *__tp)
7805 throw ();
7806
7807
7808
7809
7810
7811
7812 extern int clock_nanosleep (clockid_t __clock_id, int __flags,
7813 __const struct timespec *__req,
7814 struct timespec *__rem);
7815
7816
7817 extern int clock_getcpuclockid (pid_t __pid, clockid_t *__clock_id) throw ();
7818
7819
7820
7821
7822 extern int timer_create (clockid_t __clock_id,
7823 struct sigevent *__restrict __evp,
7824 timer_t *__restrict __timerid) throw ();
7825
7826
7827 extern int timer_delete (timer_t __timerid) throw ();
7828
7829
7830 extern int timer_settime (timer_t __timerid, int __flags,
7831 __const struct itimerspec *__restrict __value,
7832 struct itimerspec *__restrict __ovalue) throw ();
7833
7834
7835 extern int timer_gettime (timer_t __timerid, struct itimerspec *__value)
7836 throw ();
7837
7838
7839 extern int timer_getoverrun (timer_t __timerid) throw ();
7840 # 390 "/usr/include/time.h" 3 4
7841 extern int getdate_err;
7842 # 399 "/usr/include/time.h" 3 4
7843 extern struct tm *getdate (__const char *__string);
7844 # 413 "/usr/include/time.h" 3 4
7845 extern int getdate_r (__const char *__restrict __string,
7846 struct tm *__restrict __resbufp);
7847
7848
7849 }
7850 # 27 "/usr/include/pthread.h" 2 3 4
7851
7852 # 1 "/usr/include/bits/pthreadtypes.h" 1 3 4
7853 # 21 "/usr/include/bits/pthreadtypes.h" 3 4
7854 #define _BITS_PTHREADTYPES_H 1
7855
7856 # 1 "/usr/include/bits/wordsize.h" 1 3 4
7857
7858
7859
7860 #define __WORDSIZE 64
7861 #define __WORDSIZE_COMPAT32 1
7862 # 24 "/usr/include/bits/pthreadtypes.h" 2 3 4
7863
7864
7865 #define __SIZEOF_PTHREAD_ATTR_T 56
7866 #define __SIZEOF_PTHREAD_MUTEX_T 40
7867 #define __SIZEOF_PTHREAD_MUTEXATTR_T 4
7868 #define __SIZEOF_PTHREAD_COND_T 48
7869 #define __SIZEOF_PTHREAD_CONDATTR_T 4
7870 #define __SIZEOF_PTHREAD_RWLOCK_T 56
7871 #define __SIZEOF_PTHREAD_RWLOCKATTR_T 8
7872 #define __SIZEOF_PTHREAD_BARRIER_T 32
7873 #define __SIZEOF_PTHREAD_BARRIERATTR_T 4
7874 # 50 "/usr/include/bits/pthreadtypes.h" 3 4
7875 typedef unsigned long int pthread_t;
7876
7877
7878 typedef union
7879 {
7880 char __size[56];
7881 long int __align;
7882 } pthread_attr_t;
7883
7884
7885
7886 typedef struct __pthread_internal_list
7887 {
7888 struct __pthread_internal_list *__prev;
7889 struct __pthread_internal_list *__next;
7890 } __pthread_list_t;
7891 # 76 "/usr/include/bits/pthreadtypes.h" 3 4
7892 typedef union
7893 {
7894 struct __pthread_mutex_s
7895 {
7896 int __lock;
7897 unsigned int __count;
7898 int __owner;
7899
7900 unsigned int __nusers;
7901
7902
7903
7904 int __kind;
7905
7906 int __spins;
7907 __pthread_list_t __list;
7908 #define __PTHREAD_MUTEX_HAVE_PREV 1
7909 # 101 "/usr/include/bits/pthreadtypes.h" 3 4
7910 } __data;
7911 char __size[40];
7912 long int __align;
7913 } pthread_mutex_t;
7914
7915 typedef union
7916 {
7917 char __size[4];
7918 int __align;
7919 } pthread_mutexattr_t;
7920
7921
7922
7923
7924 typedef union
7925 {
7926 struct
7927 {
7928 int __lock;
7929 unsigned int __futex;
7930 __extension__ unsigned long long int __total_seq;
7931 __extension__ unsigned long long int __wakeup_seq;
7932 __extension__ unsigned long long int __woken_seq;
7933 void *__mutex;
7934 unsigned int __nwaiters;
7935 unsigned int __broadcast_seq;
7936 } __data;
7937 char __size[48];
7938 __extension__ long long int __align;
7939 } pthread_cond_t;
7940
7941 typedef union
7942 {
7943 char __size[4];
7944 int __align;
7945 } pthread_condattr_t;
7946
7947
7948
7949 typedef unsigned int pthread_key_t;
7950
7951
7952
7953 typedef int pthread_once_t;
7954
7955
7956
7957
7958
7959 typedef union
7960 {
7961
7962 struct
7963 {
7964 int __lock;
7965 unsigned int __nr_readers;
7966 unsigned int __readers_wakeup;
7967 unsigned int __writer_wakeup;
7968 unsigned int __nr_readers_queued;
7969 unsigned int __nr_writers_queued;
7970 int __writer;
7971 int __shared;
7972 unsigned long int __pad1;
7973 unsigned long int __pad2;
7974
7975
7976 unsigned int __flags;
7977 } __data;
7978 # 187 "/usr/include/bits/pthreadtypes.h" 3 4
7979 char __size[56];
7980 long int __align;
7981 } pthread_rwlock_t;
7982
7983 typedef union
7984 {
7985 char __size[8];
7986 long int __align;
7987 } pthread_rwlockattr_t;
7988
7989
7990
7991
7992
7993 typedef volatile int pthread_spinlock_t;
7994
7995
7996
7997
7998 typedef union
7999 {
8000 char __size[32];
8001 long int __align;
8002 } pthread_barrier_t;
8003
8004 typedef union
8005 {
8006 char __size[4];
8007 int __align;
8008 } pthread_barrierattr_t;
8009 # 29 "/usr/include/pthread.h" 2 3 4
8010 # 1 "/usr/include/bits/setjmp.h" 1 3 4
8011 # 21 "/usr/include/bits/setjmp.h" 3 4
8012 #define _BITS_SETJMP_H 1
8013
8014
8015
8016
8017
8018 # 1 "/usr/include/bits/wordsize.h" 1 3 4
8019
8020
8021
8022 #define __WORDSIZE 64
8023 #define __WORDSIZE_COMPAT32 1
8024 # 28 "/usr/include/bits/setjmp.h" 2 3 4
8025
8026
8027
8028
8029 typedef long int __jmp_buf[8];
8030 # 30 "/usr/include/pthread.h" 2 3 4
8031 # 1 "/usr/include/bits/wordsize.h" 1 3 4
8032
8033
8034
8035 #define __WORDSIZE 64
8036 #define __WORDSIZE_COMPAT32 1
8037 # 31 "/usr/include/pthread.h" 2 3 4
8038
8039
8040
8041 enum
8042 {
8043 PTHREAD_CREATE_JOINABLE,
8044 #define PTHREAD_CREATE_JOINABLE PTHREAD_CREATE_JOINABLE
8045 PTHREAD_CREATE_DETACHED
8046 #define PTHREAD_CREATE_DETACHED PTHREAD_CREATE_DETACHED
8047 };
8048
8049
8050
8051 enum
8052 {
8053 PTHREAD_MUTEX_TIMED_NP,
8054 PTHREAD_MUTEX_RECURSIVE_NP,
8055 PTHREAD_MUTEX_ERRORCHECK_NP,
8056 PTHREAD_MUTEX_ADAPTIVE_NP
8057
8058 ,
8059 PTHREAD_MUTEX_NORMAL = PTHREAD_MUTEX_TIMED_NP,
8060 PTHREAD_MUTEX_RECURSIVE = PTHREAD_MUTEX_RECURSIVE_NP,
8061 PTHREAD_MUTEX_ERRORCHECK = PTHREAD_MUTEX_ERRORCHECK_NP,
8062 PTHREAD_MUTEX_DEFAULT = PTHREAD_MUTEX_NORMAL
8063
8064
8065
8066 , PTHREAD_MUTEX_FAST_NP = PTHREAD_MUTEX_TIMED_NP
8067
8068 };
8069
8070
8071
8072
8073 enum
8074 {
8075 PTHREAD_MUTEX_STALLED,
8076 PTHREAD_MUTEX_STALLED_NP = PTHREAD_MUTEX_STALLED,
8077 PTHREAD_MUTEX_ROBUST,
8078 PTHREAD_MUTEX_ROBUST_NP = PTHREAD_MUTEX_ROBUST
8079 };
8080
8081
8082
8083
8084
8085 enum
8086 {
8087 PTHREAD_PRIO_NONE,
8088 PTHREAD_PRIO_INHERIT,
8089 PTHREAD_PRIO_PROTECT
8090 };
8091
8092
8093
8094
8095
8096 #define PTHREAD_MUTEX_INITIALIZER { { 0, 0, 0, 0, 0, 0, { 0, 0 } } }
8097
8098
8099 #define PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP { { 0, 0, 0, 0, PTHREAD_MUTEX_RECURSIVE_NP, 0, { 0, 0 } } }
8100
8101 #define PTHREAD_ERRORCHECK_MUTEX_INITIALIZER_NP { { 0, 0, 0, 0, PTHREAD_MUTEX_ERRORCHECK_NP, 0, { 0, 0 } } }
8102
8103 #define PTHREAD_ADAPTIVE_MUTEX_INITIALIZER_NP { { 0, 0, 0, 0, PTHREAD_MUTEX_ADAPTIVE_NP, 0, { 0, 0 } } }
8104 # 115 "/usr/include/pthread.h" 3 4
8105 enum
8106 {
8107 PTHREAD_RWLOCK_PREFER_READER_NP,
8108 PTHREAD_RWLOCK_PREFER_WRITER_NP,
8109 PTHREAD_RWLOCK_PREFER_WRITER_NONRECURSIVE_NP,
8110 PTHREAD_RWLOCK_DEFAULT_NP = PTHREAD_RWLOCK_PREFER_READER_NP
8111 };
8112
8113
8114 #define PTHREAD_RWLOCK_INITIALIZER { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } }
8115
8116
8117
8118 #define PTHREAD_RWLOCK_WRITER_NONRECURSIVE_INITIALIZER_NP { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, PTHREAD_RWLOCK_PREFER_WRITER_NONRECURSIVE_NP } }
8119 # 147 "/usr/include/pthread.h" 3 4
8120 enum
8121 {
8122 PTHREAD_INHERIT_SCHED,
8123 #define PTHREAD_INHERIT_SCHED PTHREAD_INHERIT_SCHED
8124 PTHREAD_EXPLICIT_SCHED
8125 #define PTHREAD_EXPLICIT_SCHED PTHREAD_EXPLICIT_SCHED
8126 };
8127
8128
8129
8130 enum
8131 {
8132 PTHREAD_SCOPE_SYSTEM,
8133 #define PTHREAD_SCOPE_SYSTEM PTHREAD_SCOPE_SYSTEM
8134 PTHREAD_SCOPE_PROCESS
8135 #define PTHREAD_SCOPE_PROCESS PTHREAD_SCOPE_PROCESS
8136 };
8137
8138
8139
8140 enum
8141 {
8142 PTHREAD_PROCESS_PRIVATE,
8143 #define PTHREAD_PROCESS_PRIVATE PTHREAD_PROCESS_PRIVATE
8144 PTHREAD_PROCESS_SHARED
8145 #define PTHREAD_PROCESS_SHARED PTHREAD_PROCESS_SHARED
8146 };
8147
8148
8149
8150
8151 #define PTHREAD_COND_INITIALIZER { { 0, 0, 0, 0, 0, (void *) 0, 0, 0 } }
8152
8153
8154
8155 struct _pthread_cleanup_buffer
8156 {
8157 void (*__routine) (void *);
8158 void *__arg;
8159 int __canceltype;
8160 struct _pthread_cleanup_buffer *__prev;
8161 };
8162
8163
8164 enum
8165 {
8166 PTHREAD_CANCEL_ENABLE,
8167 #define PTHREAD_CANCEL_ENABLE PTHREAD_CANCEL_ENABLE
8168 PTHREAD_CANCEL_DISABLE
8169 #define PTHREAD_CANCEL_DISABLE PTHREAD_CANCEL_DISABLE
8170 };
8171 enum
8172 {
8173 PTHREAD_CANCEL_DEFERRED,
8174 #define PTHREAD_CANCEL_DEFERRED PTHREAD_CANCEL_DEFERRED
8175 PTHREAD_CANCEL_ASYNCHRONOUS
8176 #define PTHREAD_CANCEL_ASYNCHRONOUS PTHREAD_CANCEL_ASYNCHRONOUS
8177 };
8178 #define PTHREAD_CANCELED ((void *) -1)
8179
8180
8181
8182 #define PTHREAD_ONCE_INIT 0
8183
8184
8185
8186
8187
8188
8189 #define PTHREAD_BARRIER_SERIAL_THREAD -1
8190
8191
8192
8193 extern "C" {
8194
8195
8196
8197
8198 extern int pthread_create (pthread_t *__restrict __newthread,
8199 __const pthread_attr_t *__restrict __attr,
8200 void *(*__start_routine) (void *),
8201 void *__restrict __arg) throw () __attribute__ ((__nonnull__ (1, 3)));
8202
8203
8204
8205
8206
8207 extern void pthread_exit (void *__retval) __attribute__ ((__noreturn__));
8208
8209
8210
8211
8212
8213
8214
8215 extern int pthread_join (pthread_t __th, void **__thread_return);
8216
8217
8218
8219
8220 extern int pthread_tryjoin_np (pthread_t __th, void **__thread_return) throw ();
8221
8222
8223
8224
8225
8226
8227
8228 extern int pthread_timedjoin_np (pthread_t __th, void **__thread_return,
8229 __const struct timespec *__abstime);
8230
8231
8232
8233
8234
8235
8236 extern int pthread_detach (pthread_t __th) throw ();
8237
8238
8239
8240 extern pthread_t pthread_self (void) throw () __attribute__ ((__const__));
8241
8242
8243 extern int pthread_equal (pthread_t __thread1, pthread_t __thread2) throw ();
8244
8245
8246
8247
8248
8249
8250
8251 extern int pthread_attr_init (pthread_attr_t *__attr) throw () __attribute__ ((__nonnull__ (1)));
8252
8253
8254 extern int pthread_attr_destroy (pthread_attr_t *__attr)
8255 throw () __attribute__ ((__nonnull__ (1)));
8256
8257
8258 extern int pthread_attr_getdetachstate (__const pthread_attr_t *__attr,
8259 int *__detachstate)
8260 throw () __attribute__ ((__nonnull__ (1, 2)));
8261
8262
8263 extern int pthread_attr_setdetachstate (pthread_attr_t *__attr,
8264 int __detachstate)
8265 throw () __attribute__ ((__nonnull__ (1)));
8266
8267
8268
8269 extern int pthread_attr_getguardsize (__const pthread_attr_t *__attr,
8270 size_t *__guardsize)
8271 throw () __attribute__ ((__nonnull__ (1, 2)));
8272
8273
8274 extern int pthread_attr_setguardsize (pthread_attr_t *__attr,
8275 size_t __guardsize)
8276 throw () __attribute__ ((__nonnull__ (1)));
8277
8278
8279
8280 extern int pthread_attr_getschedparam (__const pthread_attr_t *__restrict
8281 __attr,
8282 struct sched_param *__restrict __param)
8283 throw () __attribute__ ((__nonnull__ (1, 2)));
8284
8285
8286 extern int pthread_attr_setschedparam (pthread_attr_t *__restrict __attr,
8287 __const struct sched_param *__restrict
8288 __param) throw () __attribute__ ((__nonnull__ (1, 2)));
8289
8290
8291 extern int pthread_attr_getschedpolicy (__const pthread_attr_t *__restrict
8292 __attr, int *__restrict __policy)
8293 throw () __attribute__ ((__nonnull__ (1, 2)));
8294
8295
8296 extern int pthread_attr_setschedpolicy (pthread_attr_t *__attr, int __policy)
8297 throw () __attribute__ ((__nonnull__ (1)));
8298
8299
8300 extern int pthread_attr_getinheritsched (__const pthread_attr_t *__restrict
8301 __attr, int *__restrict __inherit)
8302 throw () __attribute__ ((__nonnull__ (1, 2)));
8303
8304
8305 extern int pthread_attr_setinheritsched (pthread_attr_t *__attr,
8306 int __inherit)
8307 throw () __attribute__ ((__nonnull__ (1)));
8308
8309
8310
8311 extern int pthread_attr_getscope (__const pthread_attr_t *__restrict __attr,
8312 int *__restrict __scope)
8313 throw () __attribute__ ((__nonnull__ (1, 2)));
8314
8315
8316 extern int pthread_attr_setscope (pthread_attr_t *__attr, int __scope)
8317 throw () __attribute__ ((__nonnull__ (1)));
8318
8319
8320 extern int pthread_attr_getstackaddr (__const pthread_attr_t *__restrict
8321 __attr, void **__restrict __stackaddr)
8322 throw () __attribute__ ((__nonnull__ (1, 2))) __attribute__ ((__deprecated__));
8323
8324
8325
8326
8327
8328 extern int pthread_attr_setstackaddr (pthread_attr_t *__attr,
8329 void *__stackaddr)
8330 throw () __attribute__ ((__nonnull__ (1))) __attribute__ ((__deprecated__));
8331
8332
8333 extern int pthread_attr_getstacksize (__const pthread_attr_t *__restrict
8334 __attr, size_t *__restrict __stacksize)
8335 throw () __attribute__ ((__nonnull__ (1, 2)));
8336
8337
8338
8339
8340 extern int pthread_attr_setstacksize (pthread_attr_t *__attr,
8341 size_t __stacksize)
8342 throw () __attribute__ ((__nonnull__ (1)));
8343
8344
8345
8346 extern int pthread_attr_getstack (__const pthread_attr_t *__restrict __attr,
8347 void **__restrict __stackaddr,
8348 size_t *__restrict __stacksize)
8349 throw () __attribute__ ((__nonnull__ (1, 2, 3)));
8350
8351
8352
8353
8354 extern int pthread_attr_setstack (pthread_attr_t *__attr, void *__stackaddr,
8355 size_t __stacksize) throw () __attribute__ ((__nonnull__ (1)));
8356
8357
8358
8359
8360
8361 extern int pthread_attr_setaffinity_np (pthread_attr_t *__attr,
8362 size_t __cpusetsize,
8363 __const cpu_set_t *__cpuset)
8364 throw () __attribute__ ((__nonnull__ (1, 3)));
8365
8366
8367
8368 extern int pthread_attr_getaffinity_np (__const pthread_attr_t *__attr,
8369 size_t __cpusetsize,
8370 cpu_set_t *__cpuset)
8371 throw () __attribute__ ((__nonnull__ (1, 3)));
8372
8373
8374
8375
8376
8377 extern int pthread_getattr_np (pthread_t __th, pthread_attr_t *__attr)
8378 throw () __attribute__ ((__nonnull__ (2)));
8379
8380
8381
8382
8383
8384
8385
8386 extern int pthread_setschedparam (pthread_t __target_thread, int __policy,
8387 __const struct sched_param *__param)
8388 throw () __attribute__ ((__nonnull__ (3)));
8389
8390
8391 extern int pthread_getschedparam (pthread_t __target_thread,
8392 int *__restrict __policy,
8393 struct sched_param *__restrict __param)
8394 throw () __attribute__ ((__nonnull__ (2, 3)));
8395
8396
8397 extern int pthread_setschedprio (pthread_t __target_thread, int __prio)
8398 throw ();
8399
8400
8401
8402
8403 extern int pthread_getname_np (pthread_t __target_thread, char *__buf,
8404 size_t __buflen)
8405 throw () __attribute__ ((__nonnull__ (2)));
8406
8407
8408 extern int pthread_setname_np (pthread_t __target_thread, __const char *__name)
8409 throw () __attribute__ ((__nonnull__ (2)));
8410
8411
8412
8413
8414
8415 extern int pthread_getconcurrency (void) throw ();
8416
8417
8418 extern int pthread_setconcurrency (int __level) throw ();
8419
8420
8421
8422
8423
8424
8425
8426 extern int pthread_yield (void) throw ();
8427
8428
8429
8430
8431 extern int pthread_setaffinity_np (pthread_t __th, size_t __cpusetsize,
8432 __const cpu_set_t *__cpuset)
8433 throw () __attribute__ ((__nonnull__ (3)));
8434
8435
8436 extern int pthread_getaffinity_np (pthread_t __th, size_t __cpusetsize,
8437 cpu_set_t *__cpuset)
8438 throw () __attribute__ ((__nonnull__ (3)));
8439 # 478 "/usr/include/pthread.h" 3 4
8440 extern int pthread_once (pthread_once_t *__once_control,
8441 void (*__init_routine) (void)) __attribute__ ((__nonnull__ (1, 2)));
8442 # 490 "/usr/include/pthread.h" 3 4
8443 extern int pthread_setcancelstate (int __state, int *__oldstate);
8444
8445
8446
8447 extern int pthread_setcanceltype (int __type, int *__oldtype);
8448
8449
8450 extern int pthread_cancel (pthread_t __th);
8451
8452
8453
8454
8455 extern void pthread_testcancel (void);
8456
8457
8458
8459
8460 typedef struct
8461 {
8462 struct
8463 {
8464 __jmp_buf __cancel_jmp_buf;
8465 int __mask_was_saved;
8466 } __cancel_jmp_buf[1];
8467 void *__pad[4];
8468 } __pthread_unwind_buf_t __attribute__ ((__aligned__));
8469
8470
8471
8472 #define __cleanup_fct_attribute
8473
8474
8475
8476
8477 struct __pthread_cleanup_frame
8478 {
8479 void (*__cancel_routine) (void *);
8480 void *__cancel_arg;
8481 int __do_it;
8482 int __cancel_type;
8483 };
8484
8485
8486
8487
8488 class __pthread_cleanup_class
8489 {
8490 void (*__cancel_routine) (void *);
8491 void *__cancel_arg;
8492 int __do_it;
8493 int __cancel_type;
8494
8495 public:
8496 __pthread_cleanup_class (void (*__fct) (void *), void *__arg)
8497 : __cancel_routine (__fct), __cancel_arg (__arg), __do_it (1) { }
8498 ~__pthread_cleanup_class () { if (__do_it) __cancel_routine (__cancel_arg); }
8499 void __setdoit (int __newval) { __do_it = __newval; }
8500 void __defer () { pthread_setcanceltype (PTHREAD_CANCEL_DEFERRED,
8501 &__cancel_type); }
8502 void __restore () const { pthread_setcanceltype (__cancel_type, 0); }
8503 };
8504 # 559 "/usr/include/pthread.h" 3 4
8505 #define pthread_cleanup_push(routine,arg) do { __pthread_cleanup_class __clframe (routine, arg)
8506
8507
8508
8509
8510
8511 #define pthread_cleanup_pop(execute) __clframe.__setdoit (execute); } while (0)
8512
8513
8514
8515
8516
8517
8518
8519 #define pthread_cleanup_push_defer_np(routine,arg) do { __pthread_cleanup_class __clframe (routine, arg); __clframe.__defer ()
8520
8521
8522
8523
8524
8525
8526
8527 #define pthread_cleanup_pop_restore_np(execute) __clframe.__restore (); __clframe.__setdoit (execute); } while (0)
8528 # 726 "/usr/include/pthread.h" 3 4
8529 struct __jmp_buf_tag;
8530 extern int __sigsetjmp (struct __jmp_buf_tag *__env, int __savemask) throw ();
8531
8532
8533
8534
8535
8536 extern int pthread_mutex_init (pthread_mutex_t *__mutex,
8537 __const pthread_mutexattr_t *__mutexattr)
8538 throw () __attribute__ ((__nonnull__ (1)));
8539
8540
8541 extern int pthread_mutex_destroy (pthread_mutex_t *__mutex)
8542 throw () __attribute__ ((__nonnull__ (1)));
8543
8544
8545 extern int pthread_mutex_trylock (pthread_mutex_t *__mutex)
8546 throw () __attribute__ ((__nonnull__ (1)));
8547
8548
8549 extern int pthread_mutex_lock (pthread_mutex_t *__mutex)
8550 throw () __attribute__ ((__nonnull__ (1)));
8551
8552
8553
8554 extern int pthread_mutex_timedlock (pthread_mutex_t *__restrict __mutex,
8555 __const struct timespec *__restrict
8556 __abstime) throw () __attribute__ ((__nonnull__ (1, 2)));
8557
8558
8559
8560 extern int pthread_mutex_unlock (pthread_mutex_t *__mutex)
8561 throw () __attribute__ ((__nonnull__ (1)));
8562
8563
8564
8565 extern int pthread_mutex_getprioceiling (__const pthread_mutex_t *
8566 __restrict __mutex,
8567 int *__restrict __prioceiling)
8568 throw () __attribute__ ((__nonnull__ (1, 2)));
8569
8570
8571
8572 extern int pthread_mutex_setprioceiling (pthread_mutex_t *__restrict __mutex,
8573 int __prioceiling,
8574 int *__restrict __old_ceiling)
8575 throw () __attribute__ ((__nonnull__ (1, 3)));
8576
8577
8578
8579
8580 extern int pthread_mutex_consistent (pthread_mutex_t *__mutex)
8581 throw () __attribute__ ((__nonnull__ (1)));
8582
8583 extern int pthread_mutex_consistent_np (pthread_mutex_t *__mutex)
8584 throw () __attribute__ ((__nonnull__ (1)));
8585 # 790 "/usr/include/pthread.h" 3 4
8586 extern int pthread_mutexattr_init (pthread_mutexattr_t *__attr)
8587 throw () __attribute__ ((__nonnull__ (1)));
8588
8589
8590 extern int pthread_mutexattr_destroy (pthread_mutexattr_t *__attr)
8591 throw () __attribute__ ((__nonnull__ (1)));
8592
8593
8594 extern int pthread_mutexattr_getpshared (__const pthread_mutexattr_t *
8595 __restrict __attr,
8596 int *__restrict __pshared)
8597 throw () __attribute__ ((__nonnull__ (1, 2)));
8598
8599
8600 extern int pthread_mutexattr_setpshared (pthread_mutexattr_t *__attr,
8601 int __pshared)
8602 throw () __attribute__ ((__nonnull__ (1)));
8603
8604
8605
8606 extern int pthread_mutexattr_gettype (__const pthread_mutexattr_t *__restrict
8607 __attr, int *__restrict __kind)
8608 throw () __attribute__ ((__nonnull__ (1, 2)));
8609
8610
8611
8612
8613 extern int pthread_mutexattr_settype (pthread_mutexattr_t *__attr, int __kind)
8614 throw () __attribute__ ((__nonnull__ (1)));
8615
8616
8617
8618 extern int pthread_mutexattr_getprotocol (__const pthread_mutexattr_t *
8619 __restrict __attr,
8620 int *__restrict __protocol)
8621 throw () __attribute__ ((__nonnull__ (1, 2)));
8622
8623
8624
8625 extern int pthread_mutexattr_setprotocol (pthread_mutexattr_t *__attr,
8626 int __protocol)
8627 throw () __attribute__ ((__nonnull__ (1)));
8628
8629
8630 extern int pthread_mutexattr_getprioceiling (__const pthread_mutexattr_t *
8631 __restrict __attr,
8632 int *__restrict __prioceiling)
8633 throw () __attribute__ ((__nonnull__ (1, 2)));
8634
8635
8636 extern int pthread_mutexattr_setprioceiling (pthread_mutexattr_t *__attr,
8637 int __prioceiling)
8638 throw () __attribute__ ((__nonnull__ (1)));
8639
8640
8641
8642 extern int pthread_mutexattr_getrobust (__const pthread_mutexattr_t *__attr,
8643 int *__robustness)
8644 throw () __attribute__ ((__nonnull__ (1, 2)));
8645
8646 extern int pthread_mutexattr_getrobust_np (__const pthread_mutexattr_t *__attr,
8647 int *__robustness)
8648 throw () __attribute__ ((__nonnull__ (1, 2)));
8649
8650
8651
8652 extern int pthread_mutexattr_setrobust (pthread_mutexattr_t *__attr,
8653 int __robustness)
8654 throw () __attribute__ ((__nonnull__ (1)));
8655
8656 extern int pthread_mutexattr_setrobust_np (pthread_mutexattr_t *__attr,
8657 int __robustness)
8658 throw () __attribute__ ((__nonnull__ (1)));
8659 # 872 "/usr/include/pthread.h" 3 4
8660 extern int pthread_rwlock_init (pthread_rwlock_t *__restrict __rwlock,
8661 __const pthread_rwlockattr_t *__restrict
8662 __attr) throw () __attribute__ ((__nonnull__ (1)));
8663
8664
8665 extern int pthread_rwlock_destroy (pthread_rwlock_t *__rwlock)
8666 throw () __attribute__ ((__nonnull__ (1)));
8667
8668
8669 extern int pthread_rwlock_rdlock (pthread_rwlock_t *__rwlock)
8670 throw () __attribute__ ((__nonnull__ (1)));
8671
8672
8673 extern int pthread_rwlock_tryrdlock (pthread_rwlock_t *__rwlock)
8674 throw () __attribute__ ((__nonnull__ (1)));
8675
8676
8677
8678 extern int pthread_rwlock_timedrdlock (pthread_rwlock_t *__restrict __rwlock,
8679 __const struct timespec *__restrict
8680 __abstime) throw () __attribute__ ((__nonnull__ (1, 2)));
8681
8682
8683
8684 extern int pthread_rwlock_wrlock (pthread_rwlock_t *__rwlock)
8685 throw () __attribute__ ((__nonnull__ (1)));
8686
8687
8688 extern int pthread_rwlock_trywrlock (pthread_rwlock_t *__rwlock)
8689 throw () __attribute__ ((__nonnull__ (1)));
8690
8691
8692
8693 extern int pthread_rwlock_timedwrlock (pthread_rwlock_t *__restrict __rwlock,
8694 __const struct timespec *__restrict
8695 __abstime) throw () __attribute__ ((__nonnull__ (1, 2)));
8696
8697
8698
8699 extern int pthread_rwlock_unlock (pthread_rwlock_t *__rwlock)
8700 throw () __attribute__ ((__nonnull__ (1)));
8701
8702
8703
8704
8705
8706 extern int pthread_rwlockattr_init (pthread_rwlockattr_t *__attr)
8707 throw () __attribute__ ((__nonnull__ (1)));
8708
8709
8710 extern int pthread_rwlockattr_destroy (pthread_rwlockattr_t *__attr)
8711 throw () __attribute__ ((__nonnull__ (1)));
8712
8713
8714 extern int pthread_rwlockattr_getpshared (__const pthread_rwlockattr_t *
8715 __restrict __attr,
8716 int *__restrict __pshared)
8717 throw () __attribute__ ((__nonnull__ (1, 2)));
8718
8719
8720 extern int pthread_rwlockattr_setpshared (pthread_rwlockattr_t *__attr,
8721 int __pshared)
8722 throw () __attribute__ ((__nonnull__ (1)));
8723
8724
8725 extern int pthread_rwlockattr_getkind_np (__const pthread_rwlockattr_t *
8726 __restrict __attr,
8727 int *__restrict __pref)
8728 throw () __attribute__ ((__nonnull__ (1, 2)));
8729
8730
8731 extern int pthread_rwlockattr_setkind_np (pthread_rwlockattr_t *__attr,
8732 int __pref) throw () __attribute__ ((__nonnull__ (1)));
8733
8734
8735
8736
8737
8738
8739
8740 extern int pthread_cond_init (pthread_cond_t *__restrict __cond,
8741 __const pthread_condattr_t *__restrict
8742 __cond_attr) throw () __attribute__ ((__nonnull__ (1)));
8743
8744
8745 extern int pthread_cond_destroy (pthread_cond_t *__cond)
8746 throw () __attribute__ ((__nonnull__ (1)));
8747
8748
8749 extern int pthread_cond_signal (pthread_cond_t *__cond)
8750 throw () __attribute__ ((__nonnull__ (1)));
8751
8752
8753 extern int pthread_cond_broadcast (pthread_cond_t *__cond)
8754 throw () __attribute__ ((__nonnull__ (1)));
8755
8756
8757
8758
8759
8760
8761 extern int pthread_cond_wait (pthread_cond_t *__restrict __cond,
8762 pthread_mutex_t *__restrict __mutex)
8763 __attribute__ ((__nonnull__ (1, 2)));
8764 # 984 "/usr/include/pthread.h" 3 4
8765 extern int pthread_cond_timedwait (pthread_cond_t *__restrict __cond,
8766 pthread_mutex_t *__restrict __mutex,
8767 __const struct timespec *__restrict
8768 __abstime) __attribute__ ((__nonnull__ (1, 2, 3)));
8769
8770
8771
8772
8773 extern int pthread_condattr_init (pthread_condattr_t *__attr)
8774 throw () __attribute__ ((__nonnull__ (1)));
8775
8776
8777 extern int pthread_condattr_destroy (pthread_condattr_t *__attr)
8778 throw () __attribute__ ((__nonnull__ (1)));
8779
8780
8781 extern int pthread_condattr_getpshared (__const pthread_condattr_t *
8782 __restrict __attr,
8783 int *__restrict __pshared)
8784 throw () __attribute__ ((__nonnull__ (1, 2)));
8785
8786
8787 extern int pthread_condattr_setpshared (pthread_condattr_t *__attr,
8788 int __pshared) throw () __attribute__ ((__nonnull__ (1)));
8789
8790
8791
8792 extern int pthread_condattr_getclock (__const pthread_condattr_t *
8793 __restrict __attr,
8794 __clockid_t *__restrict __clock_id)
8795 throw () __attribute__ ((__nonnull__ (1, 2)));
8796
8797
8798 extern int pthread_condattr_setclock (pthread_condattr_t *__attr,
8799 __clockid_t __clock_id)
8800 throw () __attribute__ ((__nonnull__ (1)));
8801 # 1028 "/usr/include/pthread.h" 3 4
8802 extern int pthread_spin_init (pthread_spinlock_t *__lock, int __pshared)
8803 throw () __attribute__ ((__nonnull__ (1)));
8804
8805
8806 extern int pthread_spin_destroy (pthread_spinlock_t *__lock)
8807 throw () __attribute__ ((__nonnull__ (1)));
8808
8809
8810 extern int pthread_spin_lock (pthread_spinlock_t *__lock)
8811 throw () __attribute__ ((__nonnull__ (1)));
8812
8813
8814 extern int pthread_spin_trylock (pthread_spinlock_t *__lock)
8815 throw () __attribute__ ((__nonnull__ (1)));
8816
8817
8818 extern int pthread_spin_unlock (pthread_spinlock_t *__lock)
8819 throw () __attribute__ ((__nonnull__ (1)));
8820
8821
8822
8823
8824
8825
8826 extern int pthread_barrier_init (pthread_barrier_t *__restrict __barrier,
8827 __const pthread_barrierattr_t *__restrict
8828 __attr, unsigned int __count)
8829 throw () __attribute__ ((__nonnull__ (1)));
8830
8831
8832 extern int pthread_barrier_destroy (pthread_barrier_t *__barrier)
8833 throw () __attribute__ ((__nonnull__ (1)));
8834
8835
8836 extern int pthread_barrier_wait (pthread_barrier_t *__barrier)
8837 throw () __attribute__ ((__nonnull__ (1)));
8838
8839
8840
8841 extern int pthread_barrierattr_init (pthread_barrierattr_t *__attr)
8842 throw () __attribute__ ((__nonnull__ (1)));
8843
8844
8845 extern int pthread_barrierattr_destroy (pthread_barrierattr_t *__attr)
8846 throw () __attribute__ ((__nonnull__ (1)));
8847
8848
8849 extern int pthread_barrierattr_getpshared (__const pthread_barrierattr_t *
8850 __restrict __attr,
8851 int *__restrict __pshared)
8852 throw () __attribute__ ((__nonnull__ (1, 2)));
8853
8854
8855 extern int pthread_barrierattr_setpshared (pthread_barrierattr_t *__attr,
8856 int __pshared)
8857 throw () __attribute__ ((__nonnull__ (1)));
8858 # 1095 "/usr/include/pthread.h" 3 4
8859 extern int pthread_key_create (pthread_key_t *__key,
8860 void (*__destr_function) (void *))
8861 throw () __attribute__ ((__nonnull__ (1)));
8862
8863
8864 extern int pthread_key_delete (pthread_key_t __key) throw ();
8865
8866
8867 extern void *pthread_getspecific (pthread_key_t __key) throw ();
8868
8869
8870 extern int pthread_setspecific (pthread_key_t __key,
8871 __const void *__pointer) throw () ;
8872
8873
8874
8875
8876 extern int pthread_getcpuclockid (pthread_t __thread_id,
8877 __clockid_t *__clock_id)
8878 throw () __attribute__ ((__nonnull__ (2)));
8879 # 1129 "/usr/include/pthread.h" 3 4
8880 extern int pthread_atfork (void (*__prepare) (void),
8881 void (*__parent) (void),
8882 void (*__child) (void)) throw ();
8883
8884
8885
8886
8887 extern __inline __attribute__ ((__gnu_inline__)) int
8888 pthread_equal (pthread_t __thread1, pthread_t __thread2) throw ()
8889 {
8890 return __thread1 == __thread2;
8891 }
8892
8893
8894 }
8895 # 42 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/x86_64-pc-linux-gnu/bits/gthr-default.h" 2 3
8896 # 1 "/usr/include/unistd.h" 1 3 4
8897 # 24 "/usr/include/unistd.h" 3 4
8898 #define _UNISTD_H 1
8899
8900
8901
8902 extern "C" {
8903
8904
8905
8906
8907
8908
8909 #define _POSIX_VERSION 200809L
8910 # 54 "/usr/include/unistd.h" 3 4
8911 #define __POSIX2_THIS_VERSION 200809L
8912 # 68 "/usr/include/unistd.h" 3 4
8913 #define _POSIX2_VERSION __POSIX2_THIS_VERSION
8914
8915
8916
8917 #define _POSIX2_C_BIND __POSIX2_THIS_VERSION
8918
8919
8920
8921 #define _POSIX2_C_DEV __POSIX2_THIS_VERSION
8922
8923
8924
8925 #define _POSIX2_SW_DEV __POSIX2_THIS_VERSION
8926
8927
8928
8929 #define _POSIX2_LOCALEDEF __POSIX2_THIS_VERSION
8930
8931
8932
8933 #define _XOPEN_VERSION 700
8934 # 98 "/usr/include/unistd.h" 3 4
8935 #define _XOPEN_XCU_VERSION 4
8936
8937
8938 #define _XOPEN_XPG2 1
8939 #define _XOPEN_XPG3 1
8940 #define _XOPEN_XPG4 1
8941
8942
8943 #define _XOPEN_UNIX 1
8944
8945
8946 #define _XOPEN_CRYPT 1
8947
8948
8949
8950 #define _XOPEN_ENH_I18N 1
8951
8952
8953 #define _XOPEN_LEGACY 1
8954 # 203 "/usr/include/unistd.h" 3 4
8955 # 1 "/usr/include/bits/posix_opt.h" 1 3 4
8956 # 21 "/usr/include/bits/posix_opt.h" 3 4
8957 #define _BITS_POSIX_OPT_H 1
8958
8959
8960 #define _POSIX_JOB_CONTROL 1
8961
8962
8963 #define _POSIX_SAVED_IDS 1
8964
8965
8966 #define _POSIX_PRIORITY_SCHEDULING 200809L
8967
8968
8969 #define _POSIX_SYNCHRONIZED_IO 200809L
8970
8971
8972 #define _POSIX_FSYNC 200809L
8973
8974
8975 #define _POSIX_MAPPED_FILES 200809L
8976
8977
8978 #define _POSIX_MEMLOCK 200809L
8979
8980
8981 #define _POSIX_MEMLOCK_RANGE 200809L
8982
8983
8984 #define _POSIX_MEMORY_PROTECTION 200809L
8985
8986
8987 #define _POSIX_CHOWN_RESTRICTED 0
8988
8989
8990
8991 #define _POSIX_VDISABLE '\0'
8992
8993
8994 #define _POSIX_NO_TRUNC 1
8995
8996
8997 #define _XOPEN_REALTIME 1
8998
8999
9000 #define _XOPEN_REALTIME_THREADS 1
9001
9002
9003 #define _XOPEN_SHM 1
9004
9005
9006 #define _POSIX_THREADS 200809L
9007
9008
9009 #define _POSIX_REENTRANT_FUNCTIONS 1
9010 #define _POSIX_THREAD_SAFE_FUNCTIONS 200809L
9011
9012
9013 #define _POSIX_THREAD_PRIORITY_SCHEDULING 200809L
9014
9015
9016 #define _POSIX_THREAD_ATTR_STACKSIZE 200809L
9017
9018
9019 #define _POSIX_THREAD_ATTR_STACKADDR 200809L
9020
9021
9022 #define _POSIX_THREAD_PRIO_INHERIT 200809L
9023
9024
9025
9026 #define _POSIX_THREAD_PRIO_PROTECT 200809L
9027
9028
9029
9030 #define _POSIX_THREAD_ROBUST_PRIO_INHERIT 200809L
9031
9032
9033 #define _POSIX_THREAD_ROBUST_PRIO_PROTECT -1
9034
9035
9036
9037 #define _POSIX_SEMAPHORES 200809L
9038
9039
9040 #define _POSIX_REALTIME_SIGNALS 200809L
9041
9042
9043 #define _POSIX_ASYNCHRONOUS_IO 200809L
9044 #define _POSIX_ASYNC_IO 1
9045
9046 #define _LFS_ASYNCHRONOUS_IO 1
9047
9048 #define _POSIX_PRIORITIZED_IO 200809L
9049
9050
9051 #define _LFS64_ASYNCHRONOUS_IO 1
9052
9053
9054 #define _LFS_LARGEFILE 1
9055 #define _LFS64_LARGEFILE 1
9056 #define _LFS64_STDIO 1
9057
9058
9059 #define _POSIX_SHARED_MEMORY_OBJECTS 200809L
9060
9061
9062 #define _POSIX_CPUTIME 0
9063
9064
9065 #define _POSIX_THREAD_CPUTIME 0
9066
9067
9068 #define _POSIX_REGEXP 1
9069
9070
9071 #define _POSIX_READER_WRITER_LOCKS 200809L
9072
9073
9074 #define _POSIX_SHELL 1
9075
9076
9077 #define _POSIX_TIMEOUTS 200809L
9078
9079
9080 #define _POSIX_SPIN_LOCKS 200809L
9081
9082
9083 #define _POSIX_SPAWN 200809L
9084
9085
9086 #define _POSIX_TIMERS 200809L
9087
9088
9089 #define _POSIX_BARRIERS 200809L
9090
9091
9092 #define _POSIX_MESSAGE_PASSING 200809L
9093
9094
9095 #define _POSIX_THREAD_PROCESS_SHARED 200809L
9096
9097
9098 #define _POSIX_MONOTONIC_CLOCK 0
9099
9100
9101 #define _POSIX_CLOCK_SELECTION 200809L
9102
9103
9104 #define _POSIX_ADVISORY_INFO 200809L
9105
9106
9107 #define _POSIX_IPV6 200809L
9108
9109
9110 #define _POSIX_RAW_SOCKETS 200809L
9111
9112
9113 #define _POSIX2_CHAR_TERM 200809L
9114
9115
9116 #define _POSIX_SPORADIC_SERVER -1
9117 #define _POSIX_THREAD_SPORADIC_SERVER -1
9118
9119
9120 #define _POSIX_TRACE -1
9121 #define _POSIX_TRACE_EVENT_FILTER -1
9122 #define _POSIX_TRACE_INHERIT -1
9123 #define _POSIX_TRACE_LOG -1
9124
9125
9126 #define _POSIX_TYPED_MEMORY_OBJECTS -1
9127 # 204 "/usr/include/unistd.h" 2 3 4
9128
9129
9130
9131 # 1 "/usr/include/bits/environments.h" 1 3 4
9132 # 23 "/usr/include/bits/environments.h" 3 4
9133 # 1 "/usr/include/bits/wordsize.h" 1 3 4
9134
9135
9136
9137 #define __WORDSIZE 64
9138 #define __WORDSIZE_COMPAT32 1
9139 # 24 "/usr/include/bits/environments.h" 2 3 4
9140 # 57 "/usr/include/bits/environments.h" 3 4
9141 #define _POSIX_V7_LPBIG_OFFBIG -1
9142 #define _POSIX_V6_LPBIG_OFFBIG -1
9143 #define _XBS5_LPBIG_OFFBIG -1
9144
9145
9146 #define _POSIX_V7_LP64_OFF64 1
9147 #define _POSIX_V6_LP64_OFF64 1
9148 #define _XBS5_LP64_OFF64 1
9149 # 92 "/usr/include/bits/environments.h" 3 4
9150 #define __ILP32_OFF32_CFLAGS "-m32"
9151 #define __ILP32_OFFBIG_CFLAGS "-m32 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64"
9152 #define __ILP32_OFF32_LDFLAGS "-m32"
9153 #define __ILP32_OFFBIG_LDFLAGS "-m32"
9154 #define __LP64_OFF64_CFLAGS "-m64"
9155 #define __LP64_OFF64_LDFLAGS "-m64"
9156 # 208 "/usr/include/unistd.h" 2 3 4
9157
9158
9159
9160 #define STDIN_FILENO 0
9161 #define STDOUT_FILENO 1
9162 #define STDERR_FILENO 2
9163
9164
9165
9166
9167
9168
9169
9170 typedef __ssize_t ssize_t;
9171 #define __ssize_t_defined
9172
9173
9174 #define __need_size_t
9175 #define __need_NULL
9176 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 1 3 4
9177 # 160 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 3 4
9178 #undef __need_ptrdiff_t
9179 # 233 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 3 4
9180 #undef __need_size_t
9181 # 342 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 3 4
9182 #undef __need_wchar_t
9183 # 395 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 3 4
9184 #undef NULL
9185
9186 #define NULL __null
9187 # 406 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 3 4
9188 #undef __need_NULL
9189
9190
9191
9192
9193 #define offsetof(TYPE,MEMBER) __builtin_offsetof (TYPE, MEMBER)
9194 # 228 "/usr/include/unistd.h" 2 3 4
9195
9196
9197
9198
9199
9200 typedef __gid_t gid_t;
9201 #define __gid_t_defined
9202
9203
9204
9205 typedef __uid_t uid_t;
9206 #define __uid_t_defined
9207
9208
9209
9210
9211 typedef __off_t off_t;
9212
9213
9214
9215 #define __off_t_defined
9216
9217
9218 typedef __off64_t off64_t;
9219 #define __off64_t_defined
9220
9221
9222
9223 typedef __useconds_t useconds_t;
9224 #define __useconds_t_defined
9225 # 268 "/usr/include/unistd.h" 3 4
9226 typedef __intptr_t intptr_t;
9227 #define __intptr_t_defined
9228
9229
9230
9231
9232
9233 typedef __socklen_t socklen_t;
9234 #define __socklen_t_defined
9235
9236
9237
9238
9239
9240 #define R_OK 4
9241 #define W_OK 2
9242 #define X_OK 1
9243 #define F_OK 0
9244
9245
9246 extern int access (__const char *__name, int __type) throw () __attribute__ ((__nonnull__ (1)));
9247
9248
9249
9250
9251 extern int euidaccess (__const char *__name, int __type)
9252 throw () __attribute__ ((__nonnull__ (1)));
9253
9254
9255 extern int eaccess (__const char *__name, int __type)
9256 throw () __attribute__ ((__nonnull__ (1)));
9257
9258
9259
9260
9261
9262
9263 extern int faccessat (int __fd, __const char *__file, int __type, int __flag)
9264 throw () __attribute__ ((__nonnull__ (2))) __attribute__ ((__warn_unused_result__));
9265
9266
9267
9268
9269
9270 #define SEEK_SET 0
9271 #define SEEK_CUR 1
9272 #define SEEK_END 2
9273
9274
9275
9276
9277 #define L_SET SEEK_SET
9278 #define L_INCR SEEK_CUR
9279 #define L_XTND SEEK_END
9280 # 331 "/usr/include/unistd.h" 3 4
9281 extern __off_t lseek (int __fd, __off_t __offset, int __whence) throw ();
9282 # 342 "/usr/include/unistd.h" 3 4
9283 extern __off64_t lseek64 (int __fd, __off64_t __offset, int __whence)
9284 throw ();
9285
9286
9287
9288
9289
9290
9291 extern int close (int __fd);
9292
9293
9294
9295
9296
9297
9298 extern ssize_t read (int __fd, void *__buf, size_t __nbytes) __attribute__ ((__warn_unused_result__));
9299
9300
9301
9302
9303
9304 extern ssize_t write (int __fd, __const void *__buf, size_t __n) __attribute__ ((__warn_unused_result__));
9305 # 373 "/usr/include/unistd.h" 3 4
9306 extern ssize_t pread (int __fd, void *__buf, size_t __nbytes,
9307 __off_t __offset) __attribute__ ((__warn_unused_result__));
9308
9309
9310
9311
9312
9313
9314 extern ssize_t pwrite (int __fd, __const void *__buf, size_t __n,
9315 __off_t __offset) __attribute__ ((__warn_unused_result__));
9316 # 401 "/usr/include/unistd.h" 3 4
9317 extern ssize_t pread64 (int __fd, void *__buf, size_t __nbytes,
9318 __off64_t __offset) __attribute__ ((__warn_unused_result__));
9319
9320
9321 extern ssize_t pwrite64 (int __fd, __const void *__buf, size_t __n,
9322 __off64_t __offset) __attribute__ ((__warn_unused_result__));
9323
9324
9325
9326
9327
9328
9329
9330 extern int pipe (int __pipedes[2]) throw () __attribute__ ((__warn_unused_result__));
9331
9332
9333
9334
9335 extern int pipe2 (int __pipedes[2], int __flags) throw () __attribute__ ((__warn_unused_result__));
9336 # 429 "/usr/include/unistd.h" 3 4
9337 extern unsigned int alarm (unsigned int __seconds) throw ();
9338 # 441 "/usr/include/unistd.h" 3 4
9339 extern unsigned int sleep (unsigned int __seconds);
9340
9341
9342
9343
9344
9345
9346
9347 extern __useconds_t ualarm (__useconds_t __value, __useconds_t __interval)
9348 throw ();
9349
9350
9351
9352
9353
9354
9355 extern int usleep (__useconds_t __useconds);
9356 # 466 "/usr/include/unistd.h" 3 4
9357 extern int pause (void);
9358
9359
9360
9361 extern int chown (__const char *__file, __uid_t __owner, __gid_t __group)
9362 throw () __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
9363
9364
9365
9366 extern int fchown (int __fd, __uid_t __owner, __gid_t __group) throw () __attribute__ ((__warn_unused_result__));
9367
9368
9369
9370
9371 extern int lchown (__const char *__file, __uid_t __owner, __gid_t __group)
9372 throw () __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
9373
9374
9375
9376
9377
9378
9379 extern int fchownat (int __fd, __const char *__file, __uid_t __owner,
9380 __gid_t __group, int __flag)
9381 throw () __attribute__ ((__nonnull__ (2))) __attribute__ ((__warn_unused_result__));
9382
9383
9384
9385 extern int chdir (__const char *__path) throw () __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
9386
9387
9388
9389 extern int fchdir (int __fd) throw () __attribute__ ((__warn_unused_result__));
9390 # 508 "/usr/include/unistd.h" 3 4
9391 extern char *getcwd (char *__buf, size_t __size) throw () __attribute__ ((__warn_unused_result__));
9392
9393
9394
9395
9396
9397 extern char *get_current_dir_name (void) throw ();
9398
9399
9400
9401
9402
9403
9404
9405 extern char *getwd (char *__buf)
9406 throw () __attribute__ ((__nonnull__ (1))) __attribute__ ((__deprecated__)) __attribute__ ((__warn_unused_result__));
9407
9408
9409
9410
9411 extern int dup (int __fd) throw () __attribute__ ((__warn_unused_result__));
9412
9413
9414 extern int dup2 (int __fd, int __fd2) throw ();
9415
9416
9417
9418
9419 extern int dup3 (int __fd, int __fd2, int __flags) throw ();
9420
9421
9422
9423 extern char **__environ;
9424
9425 extern char **environ;
9426
9427
9428
9429
9430
9431 extern int execve (__const char *__path, char *__const __argv[],
9432 char *__const __envp[]) throw () __attribute__ ((__nonnull__ (1, 2)));
9433
9434
9435
9436
9437 extern int fexecve (int __fd, char *__const __argv[], char *__const __envp[])
9438 throw () __attribute__ ((__nonnull__ (2)));
9439
9440
9441
9442
9443 extern int execv (__const char *__path, char *__const __argv[])
9444 throw () __attribute__ ((__nonnull__ (1, 2)));
9445
9446
9447
9448 extern int execle (__const char *__path, __const char *__arg, ...)
9449 throw () __attribute__ ((__nonnull__ (1, 2)));
9450
9451
9452
9453 extern int execl (__const char *__path, __const char *__arg, ...)
9454 throw () __attribute__ ((__nonnull__ (1, 2)));
9455
9456
9457
9458 extern int execvp (__const char *__file, char *__const __argv[])
9459 throw () __attribute__ ((__nonnull__ (1, 2)));
9460
9461
9462
9463
9464 extern int execlp (__const char *__file, __const char *__arg, ...)
9465 throw () __attribute__ ((__nonnull__ (1, 2)));
9466
9467
9468
9469
9470 extern int execvpe (__const char *__file, char *__const __argv[],
9471 char *__const __envp[])
9472 throw () __attribute__ ((__nonnull__ (1, 2)));
9473
9474
9475
9476
9477
9478 extern int nice (int __inc) throw () __attribute__ ((__warn_unused_result__));
9479
9480
9481
9482
9483 extern void _exit (int __status) __attribute__ ((__noreturn__));
9484
9485
9486
9487
9488
9489 # 1 "/usr/include/bits/confname.h" 1 3 4
9490 # 26 "/usr/include/bits/confname.h" 3 4
9491 enum
9492 {
9493 _PC_LINK_MAX,
9494 #define _PC_LINK_MAX _PC_LINK_MAX
9495 _PC_MAX_CANON,
9496 #define _PC_MAX_CANON _PC_MAX_CANON
9497 _PC_MAX_INPUT,
9498 #define _PC_MAX_INPUT _PC_MAX_INPUT
9499 _PC_NAME_MAX,
9500 #define _PC_NAME_MAX _PC_NAME_MAX
9501 _PC_PATH_MAX,
9502 #define _PC_PATH_MAX _PC_PATH_MAX
9503 _PC_PIPE_BUF,
9504 #define _PC_PIPE_BUF _PC_PIPE_BUF
9505 _PC_CHOWN_RESTRICTED,
9506 #define _PC_CHOWN_RESTRICTED _PC_CHOWN_RESTRICTED
9507 _PC_NO_TRUNC,
9508 #define _PC_NO_TRUNC _PC_NO_TRUNC
9509 _PC_VDISABLE,
9510 #define _PC_VDISABLE _PC_VDISABLE
9511 _PC_SYNC_IO,
9512 #define _PC_SYNC_IO _PC_SYNC_IO
9513 _PC_ASYNC_IO,
9514 #define _PC_ASYNC_IO _PC_ASYNC_IO
9515 _PC_PRIO_IO,
9516 #define _PC_PRIO_IO _PC_PRIO_IO
9517 _PC_SOCK_MAXBUF,
9518 #define _PC_SOCK_MAXBUF _PC_SOCK_MAXBUF
9519 _PC_FILESIZEBITS,
9520 #define _PC_FILESIZEBITS _PC_FILESIZEBITS
9521 _PC_REC_INCR_XFER_SIZE,
9522 #define _PC_REC_INCR_XFER_SIZE _PC_REC_INCR_XFER_SIZE
9523 _PC_REC_MAX_XFER_SIZE,
9524 #define _PC_REC_MAX_XFER_SIZE _PC_REC_MAX_XFER_SIZE
9525 _PC_REC_MIN_XFER_SIZE,
9526 #define _PC_REC_MIN_XFER_SIZE _PC_REC_MIN_XFER_SIZE
9527 _PC_REC_XFER_ALIGN,
9528 #define _PC_REC_XFER_ALIGN _PC_REC_XFER_ALIGN
9529 _PC_ALLOC_SIZE_MIN,
9530 #define _PC_ALLOC_SIZE_MIN _PC_ALLOC_SIZE_MIN
9531 _PC_SYMLINK_MAX,
9532 #define _PC_SYMLINK_MAX _PC_SYMLINK_MAX
9533 _PC_2_SYMLINKS
9534 #define _PC_2_SYMLINKS _PC_2_SYMLINKS
9535 };
9536
9537
9538 enum
9539 {
9540 _SC_ARG_MAX,
9541 #define _SC_ARG_MAX _SC_ARG_MAX
9542 _SC_CHILD_MAX,
9543 #define _SC_CHILD_MAX _SC_CHILD_MAX
9544 _SC_CLK_TCK,
9545 #define _SC_CLK_TCK _SC_CLK_TCK
9546 _SC_NGROUPS_MAX,
9547 #define _SC_NGROUPS_MAX _SC_NGROUPS_MAX
9548 _SC_OPEN_MAX,
9549 #define _SC_OPEN_MAX _SC_OPEN_MAX
9550 _SC_STREAM_MAX,
9551 #define _SC_STREAM_MAX _SC_STREAM_MAX
9552 _SC_TZNAME_MAX,
9553 #define _SC_TZNAME_MAX _SC_TZNAME_MAX
9554 _SC_JOB_CONTROL,
9555 #define _SC_JOB_CONTROL _SC_JOB_CONTROL
9556 _SC_SAVED_IDS,
9557 #define _SC_SAVED_IDS _SC_SAVED_IDS
9558 _SC_REALTIME_SIGNALS,
9559 #define _SC_REALTIME_SIGNALS _SC_REALTIME_SIGNALS
9560 _SC_PRIORITY_SCHEDULING,
9561 #define _SC_PRIORITY_SCHEDULING _SC_PRIORITY_SCHEDULING
9562 _SC_TIMERS,
9563 #define _SC_TIMERS _SC_TIMERS
9564 _SC_ASYNCHRONOUS_IO,
9565 #define _SC_ASYNCHRONOUS_IO _SC_ASYNCHRONOUS_IO
9566 _SC_PRIORITIZED_IO,
9567 #define _SC_PRIORITIZED_IO _SC_PRIORITIZED_IO
9568 _SC_SYNCHRONIZED_IO,
9569 #define _SC_SYNCHRONIZED_IO _SC_SYNCHRONIZED_IO
9570 _SC_FSYNC,
9571 #define _SC_FSYNC _SC_FSYNC
9572 _SC_MAPPED_FILES,
9573 #define _SC_MAPPED_FILES _SC_MAPPED_FILES
9574 _SC_MEMLOCK,
9575 #define _SC_MEMLOCK _SC_MEMLOCK
9576 _SC_MEMLOCK_RANGE,
9577 #define _SC_MEMLOCK_RANGE _SC_MEMLOCK_RANGE
9578 _SC_MEMORY_PROTECTION,
9579 #define _SC_MEMORY_PROTECTION _SC_MEMORY_PROTECTION
9580 _SC_MESSAGE_PASSING,
9581 #define _SC_MESSAGE_PASSING _SC_MESSAGE_PASSING
9582 _SC_SEMAPHORES,
9583 #define _SC_SEMAPHORES _SC_SEMAPHORES
9584 _SC_SHARED_MEMORY_OBJECTS,
9585 #define _SC_SHARED_MEMORY_OBJECTS _SC_SHARED_MEMORY_OBJECTS
9586 _SC_AIO_LISTIO_MAX,
9587 #define _SC_AIO_LISTIO_MAX _SC_AIO_LISTIO_MAX
9588 _SC_AIO_MAX,
9589 #define _SC_AIO_MAX _SC_AIO_MAX
9590 _SC_AIO_PRIO_DELTA_MAX,
9591 #define _SC_AIO_PRIO_DELTA_MAX _SC_AIO_PRIO_DELTA_MAX
9592 _SC_DELAYTIMER_MAX,
9593 #define _SC_DELAYTIMER_MAX _SC_DELAYTIMER_MAX
9594 _SC_MQ_OPEN_MAX,
9595 #define _SC_MQ_OPEN_MAX _SC_MQ_OPEN_MAX
9596 _SC_MQ_PRIO_MAX,
9597 #define _SC_MQ_PRIO_MAX _SC_MQ_PRIO_MAX
9598 _SC_VERSION,
9599 #define _SC_VERSION _SC_VERSION
9600 _SC_PAGESIZE,
9601 #define _SC_PAGESIZE _SC_PAGESIZE
9602 #define _SC_PAGE_SIZE _SC_PAGESIZE
9603 _SC_RTSIG_MAX,
9604 #define _SC_RTSIG_MAX _SC_RTSIG_MAX
9605 _SC_SEM_NSEMS_MAX,
9606 #define _SC_SEM_NSEMS_MAX _SC_SEM_NSEMS_MAX
9607 _SC_SEM_VALUE_MAX,
9608 #define _SC_SEM_VALUE_MAX _SC_SEM_VALUE_MAX
9609 _SC_SIGQUEUE_MAX,
9610 #define _SC_SIGQUEUE_MAX _SC_SIGQUEUE_MAX
9611 _SC_TIMER_MAX,
9612 #define _SC_TIMER_MAX _SC_TIMER_MAX
9613
9614
9615
9616 _SC_BC_BASE_MAX,
9617 #define _SC_BC_BASE_MAX _SC_BC_BASE_MAX
9618 _SC_BC_DIM_MAX,
9619 #define _SC_BC_DIM_MAX _SC_BC_DIM_MAX
9620 _SC_BC_SCALE_MAX,
9621 #define _SC_BC_SCALE_MAX _SC_BC_SCALE_MAX
9622 _SC_BC_STRING_MAX,
9623 #define _SC_BC_STRING_MAX _SC_BC_STRING_MAX
9624 _SC_COLL_WEIGHTS_MAX,
9625 #define _SC_COLL_WEIGHTS_MAX _SC_COLL_WEIGHTS_MAX
9626 _SC_EQUIV_CLASS_MAX,
9627 #define _SC_EQUIV_CLASS_MAX _SC_EQUIV_CLASS_MAX
9628 _SC_EXPR_NEST_MAX,
9629 #define _SC_EXPR_NEST_MAX _SC_EXPR_NEST_MAX
9630 _SC_LINE_MAX,
9631 #define _SC_LINE_MAX _SC_LINE_MAX
9632 _SC_RE_DUP_MAX,
9633 #define _SC_RE_DUP_MAX _SC_RE_DUP_MAX
9634 _SC_CHARCLASS_NAME_MAX,
9635 #define _SC_CHARCLASS_NAME_MAX _SC_CHARCLASS_NAME_MAX
9636
9637 _SC_2_VERSION,
9638 #define _SC_2_VERSION _SC_2_VERSION
9639 _SC_2_C_BIND,
9640 #define _SC_2_C_BIND _SC_2_C_BIND
9641 _SC_2_C_DEV,
9642 #define _SC_2_C_DEV _SC_2_C_DEV
9643 _SC_2_FORT_DEV,
9644 #define _SC_2_FORT_DEV _SC_2_FORT_DEV
9645 _SC_2_FORT_RUN,
9646 #define _SC_2_FORT_RUN _SC_2_FORT_RUN
9647 _SC_2_SW_DEV,
9648 #define _SC_2_SW_DEV _SC_2_SW_DEV
9649 _SC_2_LOCALEDEF,
9650 #define _SC_2_LOCALEDEF _SC_2_LOCALEDEF
9651
9652 _SC_PII,
9653 #define _SC_PII _SC_PII
9654 _SC_PII_XTI,
9655 #define _SC_PII_XTI _SC_PII_XTI
9656 _SC_PII_SOCKET,
9657 #define _SC_PII_SOCKET _SC_PII_SOCKET
9658 _SC_PII_INTERNET,
9659 #define _SC_PII_INTERNET _SC_PII_INTERNET
9660 _SC_PII_OSI,
9661 #define _SC_PII_OSI _SC_PII_OSI
9662 _SC_POLL,
9663 #define _SC_POLL _SC_POLL
9664 _SC_SELECT,
9665 #define _SC_SELECT _SC_SELECT
9666 _SC_UIO_MAXIOV,
9667 #define _SC_UIO_MAXIOV _SC_UIO_MAXIOV
9668 _SC_IOV_MAX = _SC_UIO_MAXIOV,
9669 #define _SC_IOV_MAX _SC_IOV_MAX
9670 _SC_PII_INTERNET_STREAM,
9671 #define _SC_PII_INTERNET_STREAM _SC_PII_INTERNET_STREAM
9672 _SC_PII_INTERNET_DGRAM,
9673 #define _SC_PII_INTERNET_DGRAM _SC_PII_INTERNET_DGRAM
9674 _SC_PII_OSI_COTS,
9675 #define _SC_PII_OSI_COTS _SC_PII_OSI_COTS
9676 _SC_PII_OSI_CLTS,
9677 #define _SC_PII_OSI_CLTS _SC_PII_OSI_CLTS
9678 _SC_PII_OSI_M,
9679 #define _SC_PII_OSI_M _SC_PII_OSI_M
9680 _SC_T_IOV_MAX,
9681 #define _SC_T_IOV_MAX _SC_T_IOV_MAX
9682
9683
9684 _SC_THREADS,
9685 #define _SC_THREADS _SC_THREADS
9686 _SC_THREAD_SAFE_FUNCTIONS,
9687 #define _SC_THREAD_SAFE_FUNCTIONS _SC_THREAD_SAFE_FUNCTIONS
9688 _SC_GETGR_R_SIZE_MAX,
9689 #define _SC_GETGR_R_SIZE_MAX _SC_GETGR_R_SIZE_MAX
9690 _SC_GETPW_R_SIZE_MAX,
9691 #define _SC_GETPW_R_SIZE_MAX _SC_GETPW_R_SIZE_MAX
9692 _SC_LOGIN_NAME_MAX,
9693 #define _SC_LOGIN_NAME_MAX _SC_LOGIN_NAME_MAX
9694 _SC_TTY_NAME_MAX,
9695 #define _SC_TTY_NAME_MAX _SC_TTY_NAME_MAX
9696 _SC_THREAD_DESTRUCTOR_ITERATIONS,
9697 #define _SC_THREAD_DESTRUCTOR_ITERATIONS _SC_THREAD_DESTRUCTOR_ITERATIONS
9698 _SC_THREAD_KEYS_MAX,
9699 #define _SC_THREAD_KEYS_MAX _SC_THREAD_KEYS_MAX
9700 _SC_THREAD_STACK_MIN,
9701 #define _SC_THREAD_STACK_MIN _SC_THREAD_STACK_MIN
9702 _SC_THREAD_THREADS_MAX,
9703 #define _SC_THREAD_THREADS_MAX _SC_THREAD_THREADS_MAX
9704 _SC_THREAD_ATTR_STACKADDR,
9705 #define _SC_THREAD_ATTR_STACKADDR _SC_THREAD_ATTR_STACKADDR
9706 _SC_THREAD_ATTR_STACKSIZE,
9707 #define _SC_THREAD_ATTR_STACKSIZE _SC_THREAD_ATTR_STACKSIZE
9708 _SC_THREAD_PRIORITY_SCHEDULING,
9709 #define _SC_THREAD_PRIORITY_SCHEDULING _SC_THREAD_PRIORITY_SCHEDULING
9710 _SC_THREAD_PRIO_INHERIT,
9711 #define _SC_THREAD_PRIO_INHERIT _SC_THREAD_PRIO_INHERIT
9712 _SC_THREAD_PRIO_PROTECT,
9713 #define _SC_THREAD_PRIO_PROTECT _SC_THREAD_PRIO_PROTECT
9714 _SC_THREAD_PROCESS_SHARED,
9715 #define _SC_THREAD_PROCESS_SHARED _SC_THREAD_PROCESS_SHARED
9716
9717 _SC_NPROCESSORS_CONF,
9718 #define _SC_NPROCESSORS_CONF _SC_NPROCESSORS_CONF
9719 _SC_NPROCESSORS_ONLN,
9720 #define _SC_NPROCESSORS_ONLN _SC_NPROCESSORS_ONLN
9721 _SC_PHYS_PAGES,
9722 #define _SC_PHYS_PAGES _SC_PHYS_PAGES
9723 _SC_AVPHYS_PAGES,
9724 #define _SC_AVPHYS_PAGES _SC_AVPHYS_PAGES
9725 _SC_ATEXIT_MAX,
9726 #define _SC_ATEXIT_MAX _SC_ATEXIT_MAX
9727 _SC_PASS_MAX,
9728 #define _SC_PASS_MAX _SC_PASS_MAX
9729
9730 _SC_XOPEN_VERSION,
9731 #define _SC_XOPEN_VERSION _SC_XOPEN_VERSION
9732 _SC_XOPEN_XCU_VERSION,
9733 #define _SC_XOPEN_XCU_VERSION _SC_XOPEN_XCU_VERSION
9734 _SC_XOPEN_UNIX,
9735 #define _SC_XOPEN_UNIX _SC_XOPEN_UNIX
9736 _SC_XOPEN_CRYPT,
9737 #define _SC_XOPEN_CRYPT _SC_XOPEN_CRYPT
9738 _SC_XOPEN_ENH_I18N,
9739 #define _SC_XOPEN_ENH_I18N _SC_XOPEN_ENH_I18N
9740 _SC_XOPEN_SHM,
9741 #define _SC_XOPEN_SHM _SC_XOPEN_SHM
9742
9743 _SC_2_CHAR_TERM,
9744 #define _SC_2_CHAR_TERM _SC_2_CHAR_TERM
9745 _SC_2_C_VERSION,
9746 #define _SC_2_C_VERSION _SC_2_C_VERSION
9747 _SC_2_UPE,
9748 #define _SC_2_UPE _SC_2_UPE
9749
9750 _SC_XOPEN_XPG2,
9751 #define _SC_XOPEN_XPG2 _SC_XOPEN_XPG2
9752 _SC_XOPEN_XPG3,
9753 #define _SC_XOPEN_XPG3 _SC_XOPEN_XPG3
9754 _SC_XOPEN_XPG4,
9755 #define _SC_XOPEN_XPG4 _SC_XOPEN_XPG4
9756
9757 _SC_CHAR_BIT,
9758 #define _SC_CHAR_BIT _SC_CHAR_BIT
9759 _SC_CHAR_MAX,
9760 #define _SC_CHAR_MAX _SC_CHAR_MAX
9761 _SC_CHAR_MIN,
9762 #define _SC_CHAR_MIN _SC_CHAR_MIN
9763 _SC_INT_MAX,
9764 #define _SC_INT_MAX _SC_INT_MAX
9765 _SC_INT_MIN,
9766 #define _SC_INT_MIN _SC_INT_MIN
9767 _SC_LONG_BIT,
9768 #define _SC_LONG_BIT _SC_LONG_BIT
9769 _SC_WORD_BIT,
9770 #define _SC_WORD_BIT _SC_WORD_BIT
9771 _SC_MB_LEN_MAX,
9772 #define _SC_MB_LEN_MAX _SC_MB_LEN_MAX
9773 _SC_NZERO,
9774 #define _SC_NZERO _SC_NZERO
9775 _SC_SSIZE_MAX,
9776 #define _SC_SSIZE_MAX _SC_SSIZE_MAX
9777 _SC_SCHAR_MAX,
9778 #define _SC_SCHAR_MAX _SC_SCHAR_MAX
9779 _SC_SCHAR_MIN,
9780 #define _SC_SCHAR_MIN _SC_SCHAR_MIN
9781 _SC_SHRT_MAX,
9782 #define _SC_SHRT_MAX _SC_SHRT_MAX
9783 _SC_SHRT_MIN,
9784 #define _SC_SHRT_MIN _SC_SHRT_MIN
9785 _SC_UCHAR_MAX,
9786 #define _SC_UCHAR_MAX _SC_UCHAR_MAX
9787 _SC_UINT_MAX,
9788 #define _SC_UINT_MAX _SC_UINT_MAX
9789 _SC_ULONG_MAX,
9790 #define _SC_ULONG_MAX _SC_ULONG_MAX
9791 _SC_USHRT_MAX,
9792 #define _SC_USHRT_MAX _SC_USHRT_MAX
9793
9794 _SC_NL_ARGMAX,
9795 #define _SC_NL_ARGMAX _SC_NL_ARGMAX
9796 _SC_NL_LANGMAX,
9797 #define _SC_NL_LANGMAX _SC_NL_LANGMAX
9798 _SC_NL_MSGMAX,
9799 #define _SC_NL_MSGMAX _SC_NL_MSGMAX
9800 _SC_NL_NMAX,
9801 #define _SC_NL_NMAX _SC_NL_NMAX
9802 _SC_NL_SETMAX,
9803 #define _SC_NL_SETMAX _SC_NL_SETMAX
9804 _SC_NL_TEXTMAX,
9805 #define _SC_NL_TEXTMAX _SC_NL_TEXTMAX
9806
9807 _SC_XBS5_ILP32_OFF32,
9808 #define _SC_XBS5_ILP32_OFF32 _SC_XBS5_ILP32_OFF32
9809 _SC_XBS5_ILP32_OFFBIG,
9810 #define _SC_XBS5_ILP32_OFFBIG _SC_XBS5_ILP32_OFFBIG
9811 _SC_XBS5_LP64_OFF64,
9812 #define _SC_XBS5_LP64_OFF64 _SC_XBS5_LP64_OFF64
9813 _SC_XBS5_LPBIG_OFFBIG,
9814 #define _SC_XBS5_LPBIG_OFFBIG _SC_XBS5_LPBIG_OFFBIG
9815
9816 _SC_XOPEN_LEGACY,
9817 #define _SC_XOPEN_LEGACY _SC_XOPEN_LEGACY
9818 _SC_XOPEN_REALTIME,
9819 #define _SC_XOPEN_REALTIME _SC_XOPEN_REALTIME
9820 _SC_XOPEN_REALTIME_THREADS,
9821 #define _SC_XOPEN_REALTIME_THREADS _SC_XOPEN_REALTIME_THREADS
9822
9823 _SC_ADVISORY_INFO,
9824 #define _SC_ADVISORY_INFO _SC_ADVISORY_INFO
9825 _SC_BARRIERS,
9826 #define _SC_BARRIERS _SC_BARRIERS
9827 _SC_BASE,
9828 #define _SC_BASE _SC_BASE
9829 _SC_C_LANG_SUPPORT,
9830 #define _SC_C_LANG_SUPPORT _SC_C_LANG_SUPPORT
9831 _SC_C_LANG_SUPPORT_R,
9832 #define _SC_C_LANG_SUPPORT_R _SC_C_LANG_SUPPORT_R
9833 _SC_CLOCK_SELECTION,
9834 #define _SC_CLOCK_SELECTION _SC_CLOCK_SELECTION
9835 _SC_CPUTIME,
9836 #define _SC_CPUTIME _SC_CPUTIME
9837 _SC_THREAD_CPUTIME,
9838 #define _SC_THREAD_CPUTIME _SC_THREAD_CPUTIME
9839 _SC_DEVICE_IO,
9840 #define _SC_DEVICE_IO _SC_DEVICE_IO
9841 _SC_DEVICE_SPECIFIC,
9842 #define _SC_DEVICE_SPECIFIC _SC_DEVICE_SPECIFIC
9843 _SC_DEVICE_SPECIFIC_R,
9844 #define _SC_DEVICE_SPECIFIC_R _SC_DEVICE_SPECIFIC_R
9845 _SC_FD_MGMT,
9846 #define _SC_FD_MGMT _SC_FD_MGMT
9847 _SC_FIFO,
9848 #define _SC_FIFO _SC_FIFO
9849 _SC_PIPE,
9850 #define _SC_PIPE _SC_PIPE
9851 _SC_FILE_ATTRIBUTES,
9852 #define _SC_FILE_ATTRIBUTES _SC_FILE_ATTRIBUTES
9853 _SC_FILE_LOCKING,
9854 #define _SC_FILE_LOCKING _SC_FILE_LOCKING
9855 _SC_FILE_SYSTEM,
9856 #define _SC_FILE_SYSTEM _SC_FILE_SYSTEM
9857 _SC_MONOTONIC_CLOCK,
9858 #define _SC_MONOTONIC_CLOCK _SC_MONOTONIC_CLOCK
9859 _SC_MULTI_PROCESS,
9860 #define _SC_MULTI_PROCESS _SC_MULTI_PROCESS
9861 _SC_SINGLE_PROCESS,
9862 #define _SC_SINGLE_PROCESS _SC_SINGLE_PROCESS
9863 _SC_NETWORKING,
9864 #define _SC_NETWORKING _SC_NETWORKING
9865 _SC_READER_WRITER_LOCKS,
9866 #define _SC_READER_WRITER_LOCKS _SC_READER_WRITER_LOCKS
9867 _SC_SPIN_LOCKS,
9868 #define _SC_SPIN_LOCKS _SC_SPIN_LOCKS
9869 _SC_REGEXP,
9870 #define _SC_REGEXP _SC_REGEXP
9871 _SC_REGEX_VERSION,
9872 #define _SC_REGEX_VERSION _SC_REGEX_VERSION
9873 _SC_SHELL,
9874 #define _SC_SHELL _SC_SHELL
9875 _SC_SIGNALS,
9876 #define _SC_SIGNALS _SC_SIGNALS
9877 _SC_SPAWN,
9878 #define _SC_SPAWN _SC_SPAWN
9879 _SC_SPORADIC_SERVER,
9880 #define _SC_SPORADIC_SERVER _SC_SPORADIC_SERVER
9881 _SC_THREAD_SPORADIC_SERVER,
9882 #define _SC_THREAD_SPORADIC_SERVER _SC_THREAD_SPORADIC_SERVER
9883 _SC_SYSTEM_DATABASE,
9884 #define _SC_SYSTEM_DATABASE _SC_SYSTEM_DATABASE
9885 _SC_SYSTEM_DATABASE_R,
9886 #define _SC_SYSTEM_DATABASE_R _SC_SYSTEM_DATABASE_R
9887 _SC_TIMEOUTS,
9888 #define _SC_TIMEOUTS _SC_TIMEOUTS
9889 _SC_TYPED_MEMORY_OBJECTS,
9890 #define _SC_TYPED_MEMORY_OBJECTS _SC_TYPED_MEMORY_OBJECTS
9891 _SC_USER_GROUPS,
9892 #define _SC_USER_GROUPS _SC_USER_GROUPS
9893 _SC_USER_GROUPS_R,
9894 #define _SC_USER_GROUPS_R _SC_USER_GROUPS_R
9895 _SC_2_PBS,
9896 #define _SC_2_PBS _SC_2_PBS
9897 _SC_2_PBS_ACCOUNTING,
9898 #define _SC_2_PBS_ACCOUNTING _SC_2_PBS_ACCOUNTING
9899 _SC_2_PBS_LOCATE,
9900 #define _SC_2_PBS_LOCATE _SC_2_PBS_LOCATE
9901 _SC_2_PBS_MESSAGE,
9902 #define _SC_2_PBS_MESSAGE _SC_2_PBS_MESSAGE
9903 _SC_2_PBS_TRACK,
9904 #define _SC_2_PBS_TRACK _SC_2_PBS_TRACK
9905 _SC_SYMLOOP_MAX,
9906 #define _SC_SYMLOOP_MAX _SC_SYMLOOP_MAX
9907 _SC_STREAMS,
9908 #define _SC_STREAMS _SC_STREAMS
9909 _SC_2_PBS_CHECKPOINT,
9910 #define _SC_2_PBS_CHECKPOINT _SC_2_PBS_CHECKPOINT
9911
9912 _SC_V6_ILP32_OFF32,
9913 #define _SC_V6_ILP32_OFF32 _SC_V6_ILP32_OFF32
9914 _SC_V6_ILP32_OFFBIG,
9915 #define _SC_V6_ILP32_OFFBIG _SC_V6_ILP32_OFFBIG
9916 _SC_V6_LP64_OFF64,
9917 #define _SC_V6_LP64_OFF64 _SC_V6_LP64_OFF64
9918 _SC_V6_LPBIG_OFFBIG,
9919 #define _SC_V6_LPBIG_OFFBIG _SC_V6_LPBIG_OFFBIG
9920
9921 _SC_HOST_NAME_MAX,
9922 #define _SC_HOST_NAME_MAX _SC_HOST_NAME_MAX
9923 _SC_TRACE,
9924 #define _SC_TRACE _SC_TRACE
9925 _SC_TRACE_EVENT_FILTER,
9926 #define _SC_TRACE_EVENT_FILTER _SC_TRACE_EVENT_FILTER
9927 _SC_TRACE_INHERIT,
9928 #define _SC_TRACE_INHERIT _SC_TRACE_INHERIT
9929 _SC_TRACE_LOG,
9930 #define _SC_TRACE_LOG _SC_TRACE_LOG
9931
9932 _SC_LEVEL1_ICACHE_SIZE,
9933 #define _SC_LEVEL1_ICACHE_SIZE _SC_LEVEL1_ICACHE_SIZE
9934 _SC_LEVEL1_ICACHE_ASSOC,
9935 #define _SC_LEVEL1_ICACHE_ASSOC _SC_LEVEL1_ICACHE_ASSOC
9936 _SC_LEVEL1_ICACHE_LINESIZE,
9937 #define _SC_LEVEL1_ICACHE_LINESIZE _SC_LEVEL1_ICACHE_LINESIZE
9938 _SC_LEVEL1_DCACHE_SIZE,
9939 #define _SC_LEVEL1_DCACHE_SIZE _SC_LEVEL1_DCACHE_SIZE
9940 _SC_LEVEL1_DCACHE_ASSOC,
9941 #define _SC_LEVEL1_DCACHE_ASSOC _SC_LEVEL1_DCACHE_ASSOC
9942 _SC_LEVEL1_DCACHE_LINESIZE,
9943 #define _SC_LEVEL1_DCACHE_LINESIZE _SC_LEVEL1_DCACHE_LINESIZE
9944 _SC_LEVEL2_CACHE_SIZE,
9945 #define _SC_LEVEL2_CACHE_SIZE _SC_LEVEL2_CACHE_SIZE
9946 _SC_LEVEL2_CACHE_ASSOC,
9947 #define _SC_LEVEL2_CACHE_ASSOC _SC_LEVEL2_CACHE_ASSOC
9948 _SC_LEVEL2_CACHE_LINESIZE,
9949 #define _SC_LEVEL2_CACHE_LINESIZE _SC_LEVEL2_CACHE_LINESIZE
9950 _SC_LEVEL3_CACHE_SIZE,
9951 #define _SC_LEVEL3_CACHE_SIZE _SC_LEVEL3_CACHE_SIZE
9952 _SC_LEVEL3_CACHE_ASSOC,
9953 #define _SC_LEVEL3_CACHE_ASSOC _SC_LEVEL3_CACHE_ASSOC
9954 _SC_LEVEL3_CACHE_LINESIZE,
9955 #define _SC_LEVEL3_CACHE_LINESIZE _SC_LEVEL3_CACHE_LINESIZE
9956 _SC_LEVEL4_CACHE_SIZE,
9957 #define _SC_LEVEL4_CACHE_SIZE _SC_LEVEL4_CACHE_SIZE
9958 _SC_LEVEL4_CACHE_ASSOC,
9959 #define _SC_LEVEL4_CACHE_ASSOC _SC_LEVEL4_CACHE_ASSOC
9960 _SC_LEVEL4_CACHE_LINESIZE,
9961 #define _SC_LEVEL4_CACHE_LINESIZE _SC_LEVEL4_CACHE_LINESIZE
9962
9963
9964 _SC_IPV6 = _SC_LEVEL1_ICACHE_SIZE + 50,
9965 #define _SC_IPV6 _SC_IPV6
9966 _SC_RAW_SOCKETS,
9967 #define _SC_RAW_SOCKETS _SC_RAW_SOCKETS
9968
9969 _SC_V7_ILP32_OFF32,
9970 #define _SC_V7_ILP32_OFF32 _SC_V7_ILP32_OFF32
9971 _SC_V7_ILP32_OFFBIG,
9972 #define _SC_V7_ILP32_OFFBIG _SC_V7_ILP32_OFFBIG
9973 _SC_V7_LP64_OFF64,
9974 #define _SC_V7_LP64_OFF64 _SC_V7_LP64_OFF64
9975 _SC_V7_LPBIG_OFFBIG,
9976 #define _SC_V7_LPBIG_OFFBIG _SC_V7_LPBIG_OFFBIG
9977
9978 _SC_SS_REPL_MAX,
9979 #define _SC_SS_REPL_MAX _SC_SS_REPL_MAX
9980
9981 _SC_TRACE_EVENT_NAME_MAX,
9982 #define _SC_TRACE_EVENT_NAME_MAX _SC_TRACE_EVENT_NAME_MAX
9983 _SC_TRACE_NAME_MAX,
9984 #define _SC_TRACE_NAME_MAX _SC_TRACE_NAME_MAX
9985 _SC_TRACE_SYS_MAX,
9986 #define _SC_TRACE_SYS_MAX _SC_TRACE_SYS_MAX
9987 _SC_TRACE_USER_EVENT_MAX,
9988 #define _SC_TRACE_USER_EVENT_MAX _SC_TRACE_USER_EVENT_MAX
9989
9990 _SC_XOPEN_STREAMS,
9991 #define _SC_XOPEN_STREAMS _SC_XOPEN_STREAMS
9992
9993 _SC_THREAD_ROBUST_PRIO_INHERIT,
9994 #define _SC_THREAD_ROBUST_PRIO_INHERIT _SC_THREAD_ROBUST_PRIO_INHERIT
9995 _SC_THREAD_ROBUST_PRIO_PROTECT
9996 #define _SC_THREAD_ROBUST_PRIO_PROTECT _SC_THREAD_ROBUST_PRIO_PROTECT
9997 };
9998
9999
10000 enum
10001 {
10002 _CS_PATH,
10003 #define _CS_PATH _CS_PATH
10004
10005 _CS_V6_WIDTH_RESTRICTED_ENVS,
10006 #define _CS_V6_WIDTH_RESTRICTED_ENVS _CS_V6_WIDTH_RESTRICTED_ENVS
10007 #define _CS_POSIX_V6_WIDTH_RESTRICTED_ENVS _CS_V6_WIDTH_RESTRICTED_ENVS
10008
10009 _CS_GNU_LIBC_VERSION,
10010 #define _CS_GNU_LIBC_VERSION _CS_GNU_LIBC_VERSION
10011 _CS_GNU_LIBPTHREAD_VERSION,
10012 #define _CS_GNU_LIBPTHREAD_VERSION _CS_GNU_LIBPTHREAD_VERSION
10013
10014 _CS_V5_WIDTH_RESTRICTED_ENVS,
10015 #define _CS_V5_WIDTH_RESTRICTED_ENVS _CS_V5_WIDTH_RESTRICTED_ENVS
10016 #define _CS_POSIX_V5_WIDTH_RESTRICTED_ENVS _CS_V5_WIDTH_RESTRICTED_ENVS
10017
10018 _CS_V7_WIDTH_RESTRICTED_ENVS,
10019 #define _CS_V7_WIDTH_RESTRICTED_ENVS _CS_V7_WIDTH_RESTRICTED_ENVS
10020 #define _CS_POSIX_V7_WIDTH_RESTRICTED_ENVS _CS_V7_WIDTH_RESTRICTED_ENVS
10021
10022 _CS_LFS_CFLAGS = 1000,
10023 #define _CS_LFS_CFLAGS _CS_LFS_CFLAGS
10024 _CS_LFS_LDFLAGS,
10025 #define _CS_LFS_LDFLAGS _CS_LFS_LDFLAGS
10026 _CS_LFS_LIBS,
10027 #define _CS_LFS_LIBS _CS_LFS_LIBS
10028 _CS_LFS_LINTFLAGS,
10029 #define _CS_LFS_LINTFLAGS _CS_LFS_LINTFLAGS
10030 _CS_LFS64_CFLAGS,
10031 #define _CS_LFS64_CFLAGS _CS_LFS64_CFLAGS
10032 _CS_LFS64_LDFLAGS,
10033 #define _CS_LFS64_LDFLAGS _CS_LFS64_LDFLAGS
10034 _CS_LFS64_LIBS,
10035 #define _CS_LFS64_LIBS _CS_LFS64_LIBS
10036 _CS_LFS64_LINTFLAGS,
10037 #define _CS_LFS64_LINTFLAGS _CS_LFS64_LINTFLAGS
10038
10039 _CS_XBS5_ILP32_OFF32_CFLAGS = 1100,
10040 #define _CS_XBS5_ILP32_OFF32_CFLAGS _CS_XBS5_ILP32_OFF32_CFLAGS
10041 _CS_XBS5_ILP32_OFF32_LDFLAGS,
10042 #define _CS_XBS5_ILP32_OFF32_LDFLAGS _CS_XBS5_ILP32_OFF32_LDFLAGS
10043 _CS_XBS5_ILP32_OFF32_LIBS,
10044 #define _CS_XBS5_ILP32_OFF32_LIBS _CS_XBS5_ILP32_OFF32_LIBS
10045 _CS_XBS5_ILP32_OFF32_LINTFLAGS,
10046 #define _CS_XBS5_ILP32_OFF32_LINTFLAGS _CS_XBS5_ILP32_OFF32_LINTFLAGS
10047 _CS_XBS5_ILP32_OFFBIG_CFLAGS,
10048 #define _CS_XBS5_ILP32_OFFBIG_CFLAGS _CS_XBS5_ILP32_OFFBIG_CFLAGS
10049 _CS_XBS5_ILP32_OFFBIG_LDFLAGS,
10050 #define _CS_XBS5_ILP32_OFFBIG_LDFLAGS _CS_XBS5_ILP32_OFFBIG_LDFLAGS
10051 _CS_XBS5_ILP32_OFFBIG_LIBS,
10052 #define _CS_XBS5_ILP32_OFFBIG_LIBS _CS_XBS5_ILP32_OFFBIG_LIBS
10053 _CS_XBS5_ILP32_OFFBIG_LINTFLAGS,
10054 #define _CS_XBS5_ILP32_OFFBIG_LINTFLAGS _CS_XBS5_ILP32_OFFBIG_LINTFLAGS
10055 _CS_XBS5_LP64_OFF64_CFLAGS,
10056 #define _CS_XBS5_LP64_OFF64_CFLAGS _CS_XBS5_LP64_OFF64_CFLAGS
10057 _CS_XBS5_LP64_OFF64_LDFLAGS,
10058 #define _CS_XBS5_LP64_OFF64_LDFLAGS _CS_XBS5_LP64_OFF64_LDFLAGS
10059 _CS_XBS5_LP64_OFF64_LIBS,
10060 #define _CS_XBS5_LP64_OFF64_LIBS _CS_XBS5_LP64_OFF64_LIBS
10061 _CS_XBS5_LP64_OFF64_LINTFLAGS,
10062 #define _CS_XBS5_LP64_OFF64_LINTFLAGS _CS_XBS5_LP64_OFF64_LINTFLAGS
10063 _CS_XBS5_LPBIG_OFFBIG_CFLAGS,
10064 #define _CS_XBS5_LPBIG_OFFBIG_CFLAGS _CS_XBS5_LPBIG_OFFBIG_CFLAGS
10065 _CS_XBS5_LPBIG_OFFBIG_LDFLAGS,
10066 #define _CS_XBS5_LPBIG_OFFBIG_LDFLAGS _CS_XBS5_LPBIG_OFFBIG_LDFLAGS
10067 _CS_XBS5_LPBIG_OFFBIG_LIBS,
10068 #define _CS_XBS5_LPBIG_OFFBIG_LIBS _CS_XBS5_LPBIG_OFFBIG_LIBS
10069 _CS_XBS5_LPBIG_OFFBIG_LINTFLAGS,
10070 #define _CS_XBS5_LPBIG_OFFBIG_LINTFLAGS _CS_XBS5_LPBIG_OFFBIG_LINTFLAGS
10071
10072 _CS_POSIX_V6_ILP32_OFF32_CFLAGS,
10073 #define _CS_POSIX_V6_ILP32_OFF32_CFLAGS _CS_POSIX_V6_ILP32_OFF32_CFLAGS
10074 _CS_POSIX_V6_ILP32_OFF32_LDFLAGS,
10075 #define _CS_POSIX_V6_ILP32_OFF32_LDFLAGS _CS_POSIX_V6_ILP32_OFF32_LDFLAGS
10076 _CS_POSIX_V6_ILP32_OFF32_LIBS,
10077 #define _CS_POSIX_V6_ILP32_OFF32_LIBS _CS_POSIX_V6_ILP32_OFF32_LIBS
10078 _CS_POSIX_V6_ILP32_OFF32_LINTFLAGS,
10079 #define _CS_POSIX_V6_ILP32_OFF32_LINTFLAGS _CS_POSIX_V6_ILP32_OFF32_LINTFLAGS
10080 _CS_POSIX_V6_ILP32_OFFBIG_CFLAGS,
10081 #define _CS_POSIX_V6_ILP32_OFFBIG_CFLAGS _CS_POSIX_V6_ILP32_OFFBIG_CFLAGS
10082 _CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS,
10083 #define _CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS _CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS
10084 _CS_POSIX_V6_ILP32_OFFBIG_LIBS,
10085 #define _CS_POSIX_V6_ILP32_OFFBIG_LIBS _CS_POSIX_V6_ILP32_OFFBIG_LIBS
10086 _CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS,
10087 #define _CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS _CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS
10088 _CS_POSIX_V6_LP64_OFF64_CFLAGS,
10089 #define _CS_POSIX_V6_LP64_OFF64_CFLAGS _CS_POSIX_V6_LP64_OFF64_CFLAGS
10090 _CS_POSIX_V6_LP64_OFF64_LDFLAGS,
10091 #define _CS_POSIX_V6_LP64_OFF64_LDFLAGS _CS_POSIX_V6_LP64_OFF64_LDFLAGS
10092 _CS_POSIX_V6_LP64_OFF64_LIBS,
10093 #define _CS_POSIX_V6_LP64_OFF64_LIBS _CS_POSIX_V6_LP64_OFF64_LIBS
10094 _CS_POSIX_V6_LP64_OFF64_LINTFLAGS,
10095 #define _CS_POSIX_V6_LP64_OFF64_LINTFLAGS _CS_POSIX_V6_LP64_OFF64_LINTFLAGS
10096 _CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS,
10097 #define _CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS _CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS
10098 _CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS,
10099 #define _CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS _CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS
10100 _CS_POSIX_V6_LPBIG_OFFBIG_LIBS,
10101 #define _CS_POSIX_V6_LPBIG_OFFBIG_LIBS _CS_POSIX_V6_LPBIG_OFFBIG_LIBS
10102 _CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS,
10103 #define _CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS _CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS
10104
10105 _CS_POSIX_V7_ILP32_OFF32_CFLAGS,
10106 #define _CS_POSIX_V7_ILP32_OFF32_CFLAGS _CS_POSIX_V7_ILP32_OFF32_CFLAGS
10107 _CS_POSIX_V7_ILP32_OFF32_LDFLAGS,
10108 #define _CS_POSIX_V7_ILP32_OFF32_LDFLAGS _CS_POSIX_V7_ILP32_OFF32_LDFLAGS
10109 _CS_POSIX_V7_ILP32_OFF32_LIBS,
10110 #define _CS_POSIX_V7_ILP32_OFF32_LIBS _CS_POSIX_V7_ILP32_OFF32_LIBS
10111 _CS_POSIX_V7_ILP32_OFF32_LINTFLAGS,
10112 #define _CS_POSIX_V7_ILP32_OFF32_LINTFLAGS _CS_POSIX_V7_ILP32_OFF32_LINTFLAGS
10113 _CS_POSIX_V7_ILP32_OFFBIG_CFLAGS,
10114 #define _CS_POSIX_V7_ILP32_OFFBIG_CFLAGS _CS_POSIX_V7_ILP32_OFFBIG_CFLAGS
10115 _CS_POSIX_V7_ILP32_OFFBIG_LDFLAGS,
10116 #define _CS_POSIX_V7_ILP32_OFFBIG_LDFLAGS _CS_POSIX_V7_ILP32_OFFBIG_LDFLAGS
10117 _CS_POSIX_V7_ILP32_OFFBIG_LIBS,
10118 #define _CS_POSIX_V7_ILP32_OFFBIG_LIBS _CS_POSIX_V7_ILP32_OFFBIG_LIBS
10119 _CS_POSIX_V7_ILP32_OFFBIG_LINTFLAGS,
10120 #define _CS_POSIX_V7_ILP32_OFFBIG_LINTFLAGS _CS_POSIX_V7_ILP32_OFFBIG_LINTFLAGS
10121 _CS_POSIX_V7_LP64_OFF64_CFLAGS,
10122 #define _CS_POSIX_V7_LP64_OFF64_CFLAGS _CS_POSIX_V7_LP64_OFF64_CFLAGS
10123 _CS_POSIX_V7_LP64_OFF64_LDFLAGS,
10124 #define _CS_POSIX_V7_LP64_OFF64_LDFLAGS _CS_POSIX_V7_LP64_OFF64_LDFLAGS
10125 _CS_POSIX_V7_LP64_OFF64_LIBS,
10126 #define _CS_POSIX_V7_LP64_OFF64_LIBS _CS_POSIX_V7_LP64_OFF64_LIBS
10127 _CS_POSIX_V7_LP64_OFF64_LINTFLAGS,
10128 #define _CS_POSIX_V7_LP64_OFF64_LINTFLAGS _CS_POSIX_V7_LP64_OFF64_LINTFLAGS
10129 _CS_POSIX_V7_LPBIG_OFFBIG_CFLAGS,
10130 #define _CS_POSIX_V7_LPBIG_OFFBIG_CFLAGS _CS_POSIX_V7_LPBIG_OFFBIG_CFLAGS
10131 _CS_POSIX_V7_LPBIG_OFFBIG_LDFLAGS,
10132 #define _CS_POSIX_V7_LPBIG_OFFBIG_LDFLAGS _CS_POSIX_V7_LPBIG_OFFBIG_LDFLAGS
10133 _CS_POSIX_V7_LPBIG_OFFBIG_LIBS,
10134 #define _CS_POSIX_V7_LPBIG_OFFBIG_LIBS _CS_POSIX_V7_LPBIG_OFFBIG_LIBS
10135 _CS_POSIX_V7_LPBIG_OFFBIG_LINTFLAGS,
10136 #define _CS_POSIX_V7_LPBIG_OFFBIG_LINTFLAGS _CS_POSIX_V7_LPBIG_OFFBIG_LINTFLAGS
10137
10138 _CS_V6_ENV,
10139 #define _CS_V6_ENV _CS_V6_ENV
10140 _CS_V7_ENV
10141 #define _CS_V7_ENV _CS_V7_ENV
10142 };
10143 # 607 "/usr/include/unistd.h" 2 3 4
10144
10145
10146 extern long int pathconf (__const char *__path, int __name)
10147 throw () __attribute__ ((__nonnull__ (1)));
10148
10149
10150 extern long int fpathconf (int __fd, int __name) throw ();
10151
10152
10153 extern long int sysconf (int __name) throw ();
10154
10155
10156
10157 extern size_t confstr (int __name, char *__buf, size_t __len) throw ();
10158
10159
10160
10161
10162 extern __pid_t getpid (void) throw ();
10163
10164
10165 extern __pid_t getppid (void) throw ();
10166
10167
10168
10169
10170 extern __pid_t getpgrp (void) throw ();
10171 # 643 "/usr/include/unistd.h" 3 4
10172 extern __pid_t __getpgid (__pid_t __pid) throw ();
10173
10174 extern __pid_t getpgid (__pid_t __pid) throw ();
10175
10176
10177
10178
10179
10180
10181 extern int setpgid (__pid_t __pid, __pid_t __pgid) throw ();
10182 # 669 "/usr/include/unistd.h" 3 4
10183 extern int setpgrp (void) throw ();
10184 # 686 "/usr/include/unistd.h" 3 4
10185 extern __pid_t setsid (void) throw ();
10186
10187
10188
10189 extern __pid_t getsid (__pid_t __pid) throw ();
10190
10191
10192
10193 extern __uid_t getuid (void) throw ();
10194
10195
10196 extern __uid_t geteuid (void) throw ();
10197
10198
10199 extern __gid_t getgid (void) throw ();
10200
10201
10202 extern __gid_t getegid (void) throw ();
10203
10204
10205
10206
10207 extern int getgroups (int __size, __gid_t __list[]) throw () __attribute__ ((__warn_unused_result__));
10208
10209
10210
10211 extern int group_member (__gid_t __gid) throw ();
10212
10213
10214
10215
10216
10217
10218 extern int setuid (__uid_t __uid) throw ();
10219
10220
10221
10222
10223 extern int setreuid (__uid_t __ruid, __uid_t __euid) throw ();
10224
10225
10226
10227
10228 extern int seteuid (__uid_t __uid) throw ();
10229
10230
10231
10232
10233
10234
10235 extern int setgid (__gid_t __gid) throw ();
10236
10237
10238
10239
10240 extern int setregid (__gid_t __rgid, __gid_t __egid) throw ();
10241
10242
10243
10244
10245 extern int setegid (__gid_t __gid) throw ();
10246
10247
10248
10249
10250
10251 extern int getresuid (__uid_t *__ruid, __uid_t *__euid, __uid_t *__suid)
10252 throw ();
10253
10254
10255
10256 extern int getresgid (__gid_t *__rgid, __gid_t *__egid, __gid_t *__sgid)
10257 throw ();
10258
10259
10260
10261 extern int setresuid (__uid_t __ruid, __uid_t __euid, __uid_t __suid)
10262 throw ();
10263
10264
10265
10266 extern int setresgid (__gid_t __rgid, __gid_t __egid, __gid_t __sgid)
10267 throw ();
10268
10269
10270
10271
10272
10273
10274 extern __pid_t fork (void) throw ();
10275
10276
10277
10278
10279
10280
10281
10282 extern __pid_t vfork (void) throw ();
10283
10284
10285
10286
10287
10288 extern char *ttyname (int __fd) throw ();
10289
10290
10291
10292 extern int ttyname_r (int __fd, char *__buf, size_t __buflen)
10293 throw () __attribute__ ((__nonnull__ (2))) __attribute__ ((__warn_unused_result__));
10294
10295
10296
10297 extern int isatty (int __fd) throw ();
10298
10299
10300
10301
10302
10303 extern int ttyslot (void) throw ();
10304
10305
10306
10307
10308 extern int link (__const char *__from, __const char *__to)
10309 throw () __attribute__ ((__nonnull__ (1, 2))) __attribute__ ((__warn_unused_result__));
10310
10311
10312
10313
10314 extern int linkat (int __fromfd, __const char *__from, int __tofd,
10315 __const char *__to, int __flags)
10316 throw () __attribute__ ((__nonnull__ (2, 4))) __attribute__ ((__warn_unused_result__));
10317
10318
10319
10320
10321 extern int symlink (__const char *__from, __const char *__to)
10322 throw () __attribute__ ((__nonnull__ (1, 2))) __attribute__ ((__warn_unused_result__));
10323
10324
10325
10326
10327 extern ssize_t readlink (__const char *__restrict __path,
10328 char *__restrict __buf, size_t __len)
10329 throw () __attribute__ ((__nonnull__ (1, 2))) __attribute__ ((__warn_unused_result__));
10330
10331
10332
10333
10334 extern int symlinkat (__const char *__from, int __tofd,
10335 __const char *__to) throw () __attribute__ ((__nonnull__ (1, 3))) __attribute__ ((__warn_unused_result__));
10336
10337
10338 extern ssize_t readlinkat (int __fd, __const char *__restrict __path,
10339 char *__restrict __buf, size_t __len)
10340 throw () __attribute__ ((__nonnull__ (2, 3))) __attribute__ ((__warn_unused_result__));
10341
10342
10343
10344 extern int unlink (__const char *__name) throw () __attribute__ ((__nonnull__ (1)));
10345
10346
10347
10348 extern int unlinkat (int __fd, __const char *__name, int __flag)
10349 throw () __attribute__ ((__nonnull__ (2)));
10350
10351
10352
10353 extern int rmdir (__const char *__path) throw () __attribute__ ((__nonnull__ (1)));
10354
10355
10356
10357 extern __pid_t tcgetpgrp (int __fd) throw ();
10358
10359
10360 extern int tcsetpgrp (int __fd, __pid_t __pgrp_id) throw ();
10361
10362
10363
10364
10365
10366
10367 extern char *getlogin (void);
10368
10369
10370
10371
10372
10373
10374
10375 extern int getlogin_r (char *__name, size_t __name_len) __attribute__ ((__nonnull__ (1)));
10376
10377
10378
10379
10380 extern int setlogin (__const char *__name) throw () __attribute__ ((__nonnull__ (1)));
10381
10382
10383
10384
10385
10386
10387
10388 #define __need_getopt
10389 # 1 "/usr/include/getopt.h" 1 3 4
10390 # 50 "/usr/include/getopt.h" 3 4
10391 extern "C" {
10392 # 59 "/usr/include/getopt.h" 3 4
10393 extern char *optarg;
10394 # 73 "/usr/include/getopt.h" 3 4
10395 extern int optind;
10396
10397
10398
10399
10400 extern int opterr;
10401
10402
10403
10404 extern int optopt;
10405 # 152 "/usr/include/getopt.h" 3 4
10406 extern int getopt (int ___argc, char *const *___argv, const char *__shortopts)
10407 throw ();
10408 # 187 "/usr/include/getopt.h" 3 4
10409 }
10410
10411
10412
10413 #undef __need_getopt
10414 # 891 "/usr/include/unistd.h" 2 3 4
10415
10416
10417
10418
10419
10420
10421
10422 extern int gethostname (char *__name, size_t __len) throw () __attribute__ ((__nonnull__ (1)));
10423
10424
10425
10426
10427
10428
10429 extern int sethostname (__const char *__name, size_t __len)
10430 throw () __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
10431
10432
10433
10434 extern int sethostid (long int __id) throw () __attribute__ ((__warn_unused_result__));
10435
10436
10437
10438
10439
10440 extern int getdomainname (char *__name, size_t __len)
10441 throw () __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
10442 extern int setdomainname (__const char *__name, size_t __len)
10443 throw () __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
10444
10445
10446
10447
10448
10449 extern int vhangup (void) throw ();
10450
10451
10452 extern int revoke (__const char *__file) throw () __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
10453
10454
10455
10456
10457
10458
10459
10460 extern int profil (unsigned short int *__sample_buffer, size_t __size,
10461 size_t __offset, unsigned int __scale)
10462 throw () __attribute__ ((__nonnull__ (1)));
10463
10464
10465
10466
10467
10468 extern int acct (__const char *__name) throw ();
10469
10470
10471
10472 extern char *getusershell (void) throw ();
10473 extern void endusershell (void) throw ();
10474 extern void setusershell (void) throw ();
10475
10476
10477
10478
10479
10480 extern int daemon (int __nochdir, int __noclose) throw () __attribute__ ((__warn_unused_result__));
10481
10482
10483
10484
10485
10486
10487 extern int chroot (__const char *__path) throw () __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
10488
10489
10490
10491 extern char *getpass (__const char *__prompt) __attribute__ ((__nonnull__ (1)));
10492 # 976 "/usr/include/unistd.h" 3 4
10493 extern int fsync (int __fd);
10494
10495
10496
10497
10498
10499
10500 extern int syncfs (int __fd) throw ();
10501
10502
10503
10504
10505
10506
10507 extern long int gethostid (void);
10508
10509
10510 extern void sync (void) throw ();
10511
10512
10513
10514
10515
10516 extern int getpagesize (void) throw () __attribute__ ((__const__));
10517
10518
10519
10520
10521 extern int getdtablesize (void) throw ();
10522 # 1014 "/usr/include/unistd.h" 3 4
10523 extern int truncate (__const char *__file, __off_t __length)
10524 throw () __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
10525 # 1026 "/usr/include/unistd.h" 3 4
10526 extern int truncate64 (__const char *__file, __off64_t __length)
10527 throw () __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
10528 # 1036 "/usr/include/unistd.h" 3 4
10529 extern int ftruncate (int __fd, __off_t __length) throw () __attribute__ ((__warn_unused_result__));
10530 # 1046 "/usr/include/unistd.h" 3 4
10531 extern int ftruncate64 (int __fd, __off64_t __length) throw () __attribute__ ((__warn_unused_result__));
10532 # 1057 "/usr/include/unistd.h" 3 4
10533 extern int brk (void *__addr) throw () __attribute__ ((__warn_unused_result__));
10534
10535
10536
10537
10538
10539 extern void *sbrk (intptr_t __delta) throw ();
10540 # 1078 "/usr/include/unistd.h" 3 4
10541 extern long int syscall (long int __sysno, ...) throw ();
10542 # 1095 "/usr/include/unistd.h" 3 4
10543 #define F_ULOCK 0
10544 #define F_LOCK 1
10545 #define F_TLOCK 2
10546 #define F_TEST 3
10547
10548
10549 extern int lockf (int __fd, int __cmd, __off_t __len) __attribute__ ((__warn_unused_result__));
10550 # 1111 "/usr/include/unistd.h" 3 4
10551 extern int lockf64 (int __fd, int __cmd, __off64_t __len) __attribute__ ((__warn_unused_result__));
10552 # 1121 "/usr/include/unistd.h" 3 4
10553 #define TEMP_FAILURE_RETRY(expression) (__extension__ ({ long int __result; do __result = (long int) (expression); while (__result == -1L && errno == EINTR); __result; }))
10554 # 1132 "/usr/include/unistd.h" 3 4
10555 extern int fdatasync (int __fildes);
10556
10557
10558
10559
10560
10561
10562
10563 extern char *crypt (__const char *__key, __const char *__salt)
10564 throw () __attribute__ ((__nonnull__ (1, 2)));
10565
10566
10567
10568 extern void encrypt (char *__block, int __edflag) throw () __attribute__ ((__nonnull__ (1)));
10569
10570
10571
10572
10573
10574
10575 extern void swab (__const void *__restrict __from, void *__restrict __to,
10576 ssize_t __n) throw () __attribute__ ((__nonnull__ (1, 2)));
10577
10578
10579
10580
10581
10582
10583
10584 extern char *ctermid (char *__s) throw ();
10585
10586
10587
10588
10589
10590 # 1 "/usr/include/bits/unistd.h" 1 3 4
10591 # 24 "/usr/include/bits/unistd.h" 3 4
10592 extern ssize_t __read_chk (int __fd, void *__buf, size_t __nbytes,
10593 size_t __buflen) __attribute__ ((__warn_unused_result__));
10594 extern ssize_t __read_alias (int __fd, void *__buf, size_t __nbytes) __asm__ ("" "read")
10595 __attribute__ ((__warn_unused_result__));
10596 extern ssize_t __read_chk_warn (int __fd, void *__buf, size_t __nbytes, size_t __buflen) __asm__ ("" "__read_chk")
10597
10598
10599 __attribute__ ((__warn_unused_result__)) __attribute__((__warning__ ("read called with bigger length than size of " "the destination buffer")))
10600 ;
10601
10602 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) __attribute__ ((__warn_unused_result__)) ssize_t
10603 read (int __fd, void *__buf, size_t __nbytes)
10604 {
10605 if (__builtin_object_size (__buf, 0) != (size_t) -1)
10606 {
10607 if (!__builtin_constant_p (__nbytes))
10608 return __read_chk (__fd, __buf, __nbytes, __builtin_object_size (__buf, 0));
10609
10610 if (__nbytes > __builtin_object_size (__buf, 0))
10611 return __read_chk_warn (__fd, __buf, __nbytes, __builtin_object_size (__buf, 0));
10612 }
10613 return __read_alias (__fd, __buf, __nbytes);
10614 }
10615
10616
10617 extern ssize_t __pread_chk (int __fd, void *__buf, size_t __nbytes,
10618 __off_t __offset, size_t __bufsize) __attribute__ ((__warn_unused_result__));
10619 extern ssize_t __pread64_chk (int __fd, void *__buf, size_t __nbytes,
10620 __off64_t __offset, size_t __bufsize) __attribute__ ((__warn_unused_result__));
10621 extern ssize_t __pread_alias (int __fd, void *__buf, size_t __nbytes, __off_t __offset) __asm__ ("" "pread")
10622
10623 __attribute__ ((__warn_unused_result__));
10624 extern ssize_t __pread64_alias (int __fd, void *__buf, size_t __nbytes, __off64_t __offset) __asm__ ("" "pread64")
10625
10626 __attribute__ ((__warn_unused_result__));
10627 extern ssize_t __pread_chk_warn (int __fd, void *__buf, size_t __nbytes, __off_t __offset, size_t __bufsize) __asm__ ("" "__pread_chk")
10628
10629
10630 __attribute__ ((__warn_unused_result__)) __attribute__((__warning__ ("pread called with bigger length than size of " "the destination buffer")))
10631 ;
10632 extern ssize_t __pread64_chk_warn (int __fd, void *__buf, size_t __nbytes, __off64_t __offset, size_t __bufsize) __asm__ ("" "__pread64_chk")
10633
10634
10635
10636 __attribute__ ((__warn_unused_result__)) __attribute__((__warning__ ("pread64 called with bigger length than size of " "the destination buffer")))
10637 ;
10638
10639
10640 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) __attribute__ ((__warn_unused_result__)) ssize_t
10641 pread (int __fd, void *__buf, size_t __nbytes, __off_t __offset)
10642 {
10643 if (__builtin_object_size (__buf, 0) != (size_t) -1)
10644 {
10645 if (!__builtin_constant_p (__nbytes))
10646 return __pread_chk (__fd, __buf, __nbytes, __offset, __builtin_object_size (__buf, 0));
10647
10648 if ( __nbytes > __builtin_object_size (__buf, 0))
10649 return __pread_chk_warn (__fd, __buf, __nbytes, __offset,
10650 __builtin_object_size (__buf, 0));
10651 }
10652 return __pread_alias (__fd, __buf, __nbytes, __offset);
10653 }
10654 # 105 "/usr/include/bits/unistd.h" 3 4
10655 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) __attribute__ ((__warn_unused_result__)) ssize_t
10656 pread64 (int __fd, void *__buf, size_t __nbytes, __off64_t __offset)
10657 {
10658 if (__builtin_object_size (__buf, 0) != (size_t) -1)
10659 {
10660 if (!__builtin_constant_p (__nbytes))
10661 return __pread64_chk (__fd, __buf, __nbytes, __offset, __builtin_object_size (__buf, 0));
10662
10663 if ( __nbytes > __builtin_object_size (__buf, 0))
10664 return __pread64_chk_warn (__fd, __buf, __nbytes, __offset,
10665 __builtin_object_size (__buf, 0));
10666 }
10667
10668 return __pread64_alias (__fd, __buf, __nbytes, __offset);
10669 }
10670
10671
10672
10673
10674 extern ssize_t __readlink_chk (__const char *__restrict __path,
10675 char *__restrict __buf, size_t __len,
10676 size_t __buflen)
10677 throw () __attribute__ ((__nonnull__ (1, 2))) __attribute__ ((__warn_unused_result__));
10678 extern ssize_t __readlink_alias (__const char *__restrict __path, char *__restrict __buf, size_t __len) throw () __asm__ ("" "readlink")
10679
10680
10681 __attribute__ ((__nonnull__ (1, 2))) __attribute__ ((__warn_unused_result__));
10682 extern ssize_t __readlink_chk_warn (__const char *__restrict __path, char *__restrict __buf, size_t __len, size_t __buflen) throw () __asm__ ("" "__readlink_chk")
10683
10684
10685
10686 __attribute__ ((__nonnull__ (1, 2))) __attribute__ ((__warn_unused_result__)) __attribute__((__warning__ ("readlink called with bigger length " "than size of destination buffer")))
10687 ;
10688
10689 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) __attribute__ ((__nonnull__ (1, 2))) __attribute__ ((__warn_unused_result__)) ssize_t
10690 readlink (__const char *__restrict __path, char *__restrict __buf, size_t __len) throw ()
10691
10692 {
10693 if (__builtin_object_size (__buf, 2 > 1) != (size_t) -1)
10694 {
10695 if (!__builtin_constant_p (__len))
10696 return __readlink_chk (__path, __buf, __len, __builtin_object_size (__buf, 2 > 1));
10697
10698 if ( __len > __builtin_object_size (__buf, 2 > 1))
10699 return __readlink_chk_warn (__path, __buf, __len, __builtin_object_size (__buf, 2 > 1));
10700 }
10701 return __readlink_alias (__path, __buf, __len);
10702 }
10703
10704
10705
10706 extern ssize_t __readlinkat_chk (int __fd, __const char *__restrict __path,
10707 char *__restrict __buf, size_t __len,
10708 size_t __buflen)
10709 throw () __attribute__ ((__nonnull__ (2, 3))) __attribute__ ((__warn_unused_result__));
10710 extern ssize_t __readlinkat_alias (int __fd, __const char *__restrict __path, char *__restrict __buf, size_t __len) throw () __asm__ ("" "readlinkat")
10711
10712
10713
10714 __attribute__ ((__nonnull__ (2, 3))) __attribute__ ((__warn_unused_result__));
10715 extern ssize_t __readlinkat_chk_warn (int __fd, __const char *__restrict __path, char *__restrict __buf, size_t __len, size_t __buflen) throw () __asm__ ("" "__readlinkat_chk")
10716
10717
10718
10719 __attribute__ ((__nonnull__ (2, 3))) __attribute__ ((__warn_unused_result__)) __attribute__((__warning__ ("readlinkat called with bigger " "length than size of destination " "buffer")))
10720
10721 ;
10722
10723 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) __attribute__ ((__nonnull__ (2, 3))) __attribute__ ((__warn_unused_result__)) ssize_t
10724 readlinkat (int __fd, __const char *__restrict __path, char *__restrict __buf, size_t __len) throw ()
10725
10726 {
10727 if (__builtin_object_size (__buf, 2 > 1) != (size_t) -1)
10728 {
10729 if (!__builtin_constant_p (__len))
10730 return __readlinkat_chk (__fd, __path, __buf, __len, __builtin_object_size (__buf, 2 > 1));
10731
10732 if (__len > __builtin_object_size (__buf, 2 > 1))
10733 return __readlinkat_chk_warn (__fd, __path, __buf, __len,
10734 __builtin_object_size (__buf, 2 > 1));
10735 }
10736 return __readlinkat_alias (__fd, __path, __buf, __len);
10737 }
10738
10739
10740 extern char *__getcwd_chk (char *__buf, size_t __size, size_t __buflen)
10741 throw () __attribute__ ((__warn_unused_result__));
10742 extern char *__getcwd_alias (char *__buf, size_t __size) throw () __asm__ ("" "getcwd")
10743 __attribute__ ((__warn_unused_result__));
10744 extern char *__getcwd_chk_warn (char *__buf, size_t __size, size_t __buflen) throw () __asm__ ("" "__getcwd_chk")
10745
10746
10747 __attribute__ ((__warn_unused_result__)) __attribute__((__warning__ ("getcwd caller with bigger length than size of " "destination buffer")))
10748 ;
10749
10750 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) __attribute__ ((__warn_unused_result__)) char *
10751 getcwd (char *__buf, size_t __size) throw ()
10752 {
10753 if (__builtin_object_size (__buf, 2 > 1) != (size_t) -1)
10754 {
10755 if (!__builtin_constant_p (__size))
10756 return __getcwd_chk (__buf, __size, __builtin_object_size (__buf, 2 > 1));
10757
10758 if (__size > __builtin_object_size (__buf, 2 > 1))
10759 return __getcwd_chk_warn (__buf, __size, __builtin_object_size (__buf, 2 > 1));
10760 }
10761 return __getcwd_alias (__buf, __size);
10762 }
10763
10764
10765 extern char *__getwd_chk (char *__buf, size_t buflen)
10766 throw () __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
10767 extern char *__getwd_warn (char *__buf) throw () __asm__ ("" "getwd")
10768 __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__)) __attribute__((__warning__ ("please use getcwd instead, as getwd " "doesn't specify buffer size")))
10769 ;
10770
10771 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__deprecated__)) __attribute__ ((__warn_unused_result__)) char *
10772 getwd (char *__buf) throw ()
10773 {
10774 if (__builtin_object_size (__buf, 2 > 1) != (size_t) -1)
10775 return __getwd_chk (__buf, __builtin_object_size (__buf, 2 > 1));
10776 return __getwd_warn (__buf);
10777 }
10778
10779
10780 extern size_t __confstr_chk (int __name, char *__buf, size_t __len,
10781 size_t __buflen) throw ();
10782 extern size_t __confstr_alias (int __name, char *__buf, size_t __len) throw () __asm__ ("" "confstr")
10783 ;
10784 extern size_t __confstr_chk_warn (int __name, char *__buf, size_t __len, size_t __buflen) throw () __asm__ ("" "__confstr_chk")
10785
10786
10787 __attribute__((__warning__ ("confstr called with bigger length than size of destination " "buffer")))
10788 ;
10789
10790 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) size_t
10791 confstr (int __name, char *__buf, size_t __len) throw ()
10792 {
10793 if (__builtin_object_size (__buf, 2 > 1) != (size_t) -1)
10794 {
10795 if (!__builtin_constant_p (__len))
10796 return __confstr_chk (__name, __buf, __len, __builtin_object_size (__buf, 2 > 1));
10797
10798 if (__builtin_object_size (__buf, 2 > 1) < __len)
10799 return __confstr_chk_warn (__name, __buf, __len, __builtin_object_size (__buf, 2 > 1));
10800 }
10801 return __confstr_alias (__name, __buf, __len);
10802 }
10803
10804
10805 extern int __getgroups_chk (int __size, __gid_t __list[], size_t __listlen)
10806 throw () __attribute__ ((__warn_unused_result__));
10807 extern int __getgroups_alias (int __size, __gid_t __list[]) throw () __asm__ ("" "getgroups")
10808 __attribute__ ((__warn_unused_result__));
10809 extern int __getgroups_chk_warn (int __size, __gid_t __list[], size_t __listlen) throw () __asm__ ("" "__getgroups_chk")
10810
10811
10812 __attribute__ ((__warn_unused_result__)) __attribute__((__warning__ ("getgroups called with bigger group count than what " "can fit into destination buffer")))
10813 ;
10814
10815 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) int
10816 getgroups (int __size, __gid_t __list[]) throw ()
10817 {
10818 if (__builtin_object_size (__list, 2 > 1) != (size_t) -1)
10819 {
10820 if (!__builtin_constant_p (__size) || __size < 0)
10821 return __getgroups_chk (__size, __list, __builtin_object_size (__list, 2 > 1));
10822
10823 if (__size * sizeof (__gid_t) > __builtin_object_size (__list, 2 > 1))
10824 return __getgroups_chk_warn (__size, __list, __builtin_object_size (__list, 2 > 1));
10825 }
10826 return __getgroups_alias (__size, __list);
10827 }
10828
10829
10830 extern int __ttyname_r_chk (int __fd, char *__buf, size_t __buflen,
10831 size_t __nreal) throw () __attribute__ ((__nonnull__ (2)));
10832 extern int __ttyname_r_alias (int __fd, char *__buf, size_t __buflen) throw () __asm__ ("" "ttyname_r")
10833
10834 __attribute__ ((__nonnull__ (2)));
10835 extern int __ttyname_r_chk_warn (int __fd, char *__buf, size_t __buflen, size_t __nreal) throw () __asm__ ("" "__ttyname_r_chk")
10836
10837
10838 __attribute__ ((__nonnull__ (2))) __attribute__((__warning__ ("ttyname_r called with bigger buflen than " "size of destination buffer")))
10839 ;
10840
10841 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) int
10842 ttyname_r (int __fd, char *__buf, size_t __buflen) throw ()
10843 {
10844 if (__builtin_object_size (__buf, 2 > 1) != (size_t) -1)
10845 {
10846 if (!__builtin_constant_p (__buflen))
10847 return __ttyname_r_chk (__fd, __buf, __buflen, __builtin_object_size (__buf, 2 > 1));
10848
10849 if (__buflen > __builtin_object_size (__buf, 2 > 1))
10850 return __ttyname_r_chk_warn (__fd, __buf, __buflen, __builtin_object_size (__buf, 2 > 1));
10851 }
10852 return __ttyname_r_alias (__fd, __buf, __buflen);
10853 }
10854
10855
10856
10857 extern int __getlogin_r_chk (char *__buf, size_t __buflen, size_t __nreal)
10858 __attribute__ ((__nonnull__ (1)));
10859 extern int __getlogin_r_alias (char *__buf, size_t __buflen) __asm__ ("" "getlogin_r")
10860 __attribute__ ((__nonnull__ (1)));
10861 extern int __getlogin_r_chk_warn (char *__buf, size_t __buflen, size_t __nreal) __asm__ ("" "__getlogin_r_chk")
10862
10863
10864 __attribute__ ((__nonnull__ (1))) __attribute__((__warning__ ("getlogin_r called with bigger buflen than " "size of destination buffer")))
10865 ;
10866
10867 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) int
10868 getlogin_r (char *__buf, size_t __buflen)
10869 {
10870 if (__builtin_object_size (__buf, 2 > 1) != (size_t) -1)
10871 {
10872 if (!__builtin_constant_p (__buflen))
10873 return __getlogin_r_chk (__buf, __buflen, __builtin_object_size (__buf, 2 > 1));
10874
10875 if (__buflen > __builtin_object_size (__buf, 2 > 1))
10876 return __getlogin_r_chk_warn (__buf, __buflen, __builtin_object_size (__buf, 2 > 1));
10877 }
10878 return __getlogin_r_alias (__buf, __buflen);
10879 }
10880
10881
10882
10883
10884 extern int __gethostname_chk (char *__buf, size_t __buflen, size_t __nreal)
10885 throw () __attribute__ ((__nonnull__ (1)));
10886 extern int __gethostname_alias (char *__buf, size_t __buflen) throw () __asm__ ("" "gethostname")
10887 __attribute__ ((__nonnull__ (1)));
10888 extern int __gethostname_chk_warn (char *__buf, size_t __buflen, size_t __nreal) throw () __asm__ ("" "__gethostname_chk")
10889
10890
10891 __attribute__ ((__nonnull__ (1))) __attribute__((__warning__ ("gethostname called with bigger buflen than " "size of destination buffer")))
10892 ;
10893
10894 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) int
10895 gethostname (char *__buf, size_t __buflen) throw ()
10896 {
10897 if (__builtin_object_size (__buf, 2 > 1) != (size_t) -1)
10898 {
10899 if (!__builtin_constant_p (__buflen))
10900 return __gethostname_chk (__buf, __buflen, __builtin_object_size (__buf, 2 > 1));
10901
10902 if (__buflen > __builtin_object_size (__buf, 2 > 1))
10903 return __gethostname_chk_warn (__buf, __buflen, __builtin_object_size (__buf, 2 > 1));
10904 }
10905 return __gethostname_alias (__buf, __buflen);
10906 }
10907
10908
10909
10910
10911 extern int __getdomainname_chk (char *__buf, size_t __buflen, size_t __nreal)
10912 throw () __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
10913 extern int __getdomainname_alias (char *__buf, size_t __buflen) throw () __asm__ ("" "getdomainname")
10914
10915 __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
10916 extern int __getdomainname_chk_warn (char *__buf, size_t __buflen, size_t __nreal) throw () __asm__ ("" "__getdomainname_chk")
10917
10918
10919 __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__)) __attribute__((__warning__ ("getdomainname called with bigger " "buflen than size of destination " "buffer")))
10920
10921 ;
10922
10923 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) int
10924 getdomainname (char *__buf, size_t __buflen) throw ()
10925 {
10926 if (__builtin_object_size (__buf, 2 > 1) != (size_t) -1)
10927 {
10928 if (!__builtin_constant_p (__buflen))
10929 return __getdomainname_chk (__buf, __buflen, __builtin_object_size (__buf, 2 > 1));
10930
10931 if (__buflen > __builtin_object_size (__buf, 2 > 1))
10932 return __getdomainname_chk_warn (__buf, __buflen, __builtin_object_size (__buf, 2 > 1));
10933 }
10934 return __getdomainname_alias (__buf, __buflen);
10935 }
10936 # 1168 "/usr/include/unistd.h" 2 3 4
10937
10938
10939 }
10940 # 43 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/x86_64-pc-linux-gnu/bits/gthr-default.h" 2 3
10941
10942 typedef pthread_t __gthread_t;
10943 typedef pthread_key_t __gthread_key_t;
10944 typedef pthread_once_t __gthread_once_t;
10945 typedef pthread_mutex_t __gthread_mutex_t;
10946 typedef pthread_mutex_t __gthread_recursive_mutex_t;
10947 typedef pthread_cond_t __gthread_cond_t;
10948 typedef struct timespec __gthread_time_t;
10949
10950
10951
10952 #define __GTHREAD_HAS_COND 1
10953
10954 #define __GTHREAD_MUTEX_INIT PTHREAD_MUTEX_INITIALIZER
10955 #define __GTHREAD_ONCE_INIT PTHREAD_ONCE_INIT
10956
10957
10958
10959 #define __GTHREAD_RECURSIVE_MUTEX_INIT PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP
10960
10961
10962
10963 #define __GTHREAD_COND_INIT PTHREAD_COND_INITIALIZER
10964 #define __GTHREAD_TIME_INIT {0,0}
10965
10966
10967
10968 #define __gthrw_pragma(pragma)
10969
10970 #define __gthrw2(name,name2,type) static __typeof(type) name __attribute__ ((__weakref__(#name2))); __gthrw_pragma(weak type)
10971
10972
10973 #define __gthrw_(name) __gthrw_ ## name
10974
10975
10976
10977
10978
10979
10980 #define __gthrw(name) __gthrw2(__gthrw_ ## name,name,name)
10981 # 118 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/x86_64-pc-linux-gnu/bits/gthr-default.h" 3
10982 static __typeof(pthread_once) __gthrw_pthread_once __attribute__ ((__weakref__("pthread_once")));
10983 static __typeof(pthread_getspecific) __gthrw_pthread_getspecific __attribute__ ((__weakref__("pthread_getspecific")));
10984 static __typeof(pthread_setspecific) __gthrw_pthread_setspecific __attribute__ ((__weakref__("pthread_setspecific")));
10985
10986 static __typeof(pthread_create) __gthrw_pthread_create __attribute__ ((__weakref__("pthread_create")));
10987 static __typeof(pthread_join) __gthrw_pthread_join __attribute__ ((__weakref__("pthread_join")));
10988 static __typeof(pthread_equal) __gthrw_pthread_equal __attribute__ ((__weakref__("pthread_equal")));
10989 static __typeof(pthread_self) __gthrw_pthread_self __attribute__ ((__weakref__("pthread_self")));
10990 static __typeof(pthread_detach) __gthrw_pthread_detach __attribute__ ((__weakref__("pthread_detach")));
10991 static __typeof(pthread_cancel) __gthrw_pthread_cancel __attribute__ ((__weakref__("pthread_cancel")));
10992 static __typeof(sched_yield) __gthrw_sched_yield __attribute__ ((__weakref__("sched_yield")));
10993
10994 static __typeof(pthread_mutex_lock) __gthrw_pthread_mutex_lock __attribute__ ((__weakref__("pthread_mutex_lock")));
10995 static __typeof(pthread_mutex_trylock) __gthrw_pthread_mutex_trylock __attribute__ ((__weakref__("pthread_mutex_trylock")));
10996
10997
10998 static __typeof(pthread_mutex_timedlock) __gthrw_pthread_mutex_timedlock __attribute__ ((__weakref__("pthread_mutex_timedlock")));
10999
11000
11001 static __typeof(pthread_mutex_unlock) __gthrw_pthread_mutex_unlock __attribute__ ((__weakref__("pthread_mutex_unlock")));
11002 static __typeof(pthread_mutex_init) __gthrw_pthread_mutex_init __attribute__ ((__weakref__("pthread_mutex_init")));
11003 static __typeof(pthread_mutex_destroy) __gthrw_pthread_mutex_destroy __attribute__ ((__weakref__("pthread_mutex_destroy")));
11004
11005 static __typeof(pthread_cond_broadcast) __gthrw_pthread_cond_broadcast __attribute__ ((__weakref__("pthread_cond_broadcast")));
11006 static __typeof(pthread_cond_signal) __gthrw_pthread_cond_signal __attribute__ ((__weakref__("pthread_cond_signal")));
11007 static __typeof(pthread_cond_wait) __gthrw_pthread_cond_wait __attribute__ ((__weakref__("pthread_cond_wait")));
11008 static __typeof(pthread_cond_timedwait) __gthrw_pthread_cond_timedwait __attribute__ ((__weakref__("pthread_cond_timedwait")));
11009 static __typeof(pthread_cond_destroy) __gthrw_pthread_cond_destroy __attribute__ ((__weakref__("pthread_cond_destroy")));
11010
11011
11012 static __typeof(pthread_key_create) __gthrw_pthread_key_create __attribute__ ((__weakref__("pthread_key_create")));
11013 static __typeof(pthread_key_delete) __gthrw_pthread_key_delete __attribute__ ((__weakref__("pthread_key_delete")));
11014 static __typeof(pthread_mutexattr_init) __gthrw_pthread_mutexattr_init __attribute__ ((__weakref__("pthread_mutexattr_init")));
11015 static __typeof(pthread_mutexattr_settype) __gthrw_pthread_mutexattr_settype __attribute__ ((__weakref__("pthread_mutexattr_settype")));
11016 static __typeof(pthread_mutexattr_destroy) __gthrw_pthread_mutexattr_destroy __attribute__ ((__weakref__("pthread_mutexattr_destroy")));
11017 # 237 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/x86_64-pc-linux-gnu/bits/gthr-default.h" 3
11018 static inline int
11019 __gthread_active_p (void)
11020 {
11021 static void *const __gthread_active_ptr
11022 = __extension__ (void *) &__gthrw_pthread_cancel;
11023 return __gthread_active_ptr != 0;
11024 }
11025 # 648 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/x86_64-pc-linux-gnu/bits/gthr-default.h" 3
11026 static inline int
11027 __gthread_create (__gthread_t *__threadid, void *(*__func) (void*),
11028 void *__args)
11029 {
11030 return __gthrw_pthread_create (__threadid, __null, __func, __args);
11031 }
11032
11033 static inline int
11034 __gthread_join (__gthread_t __threadid, void **__value_ptr)
11035 {
11036 return __gthrw_pthread_join (__threadid, __value_ptr);
11037 }
11038
11039 static inline int
11040 __gthread_detach (__gthread_t __threadid)
11041 {
11042 return __gthrw_pthread_detach (__threadid);
11043 }
11044
11045 static inline int
11046 __gthread_equal (__gthread_t __t1, __gthread_t __t2)
11047 {
11048 return __gthrw_pthread_equal (__t1, __t2);
11049 }
11050
11051 static inline __gthread_t
11052 __gthread_self (void)
11053 {
11054 return __gthrw_pthread_self ();
11055 }
11056
11057 static inline int
11058 __gthread_yield (void)
11059 {
11060 return __gthrw_sched_yield ();
11061 }
11062
11063 static inline int
11064 __gthread_once (__gthread_once_t *__once, void (*__func) (void))
11065 {
11066 if (__gthread_active_p ())
11067 return __gthrw_pthread_once (__once, __func);
11068 else
11069 return -1;
11070 }
11071
11072 static inline int
11073 __gthread_key_create (__gthread_key_t *__key, void (*__dtor) (void *))
11074 {
11075 return __gthrw_pthread_key_create (__key, __dtor);
11076 }
11077
11078 static inline int
11079 __gthread_key_delete (__gthread_key_t __key)
11080 {
11081 return __gthrw_pthread_key_delete (__key);
11082 }
11083
11084 static inline void *
11085 __gthread_getspecific (__gthread_key_t __key)
11086 {
11087 return __gthrw_pthread_getspecific (__key);
11088 }
11089
11090 static inline int
11091 __gthread_setspecific (__gthread_key_t __key, const void *__ptr)
11092 {
11093 return __gthrw_pthread_setspecific (__key, __ptr);
11094 }
11095
11096 static inline int
11097 __gthread_mutex_destroy (__gthread_mutex_t *__mutex)
11098 {
11099 if (__gthread_active_p ())
11100 return __gthrw_pthread_mutex_destroy (__mutex);
11101 else
11102 return 0;
11103 }
11104
11105 static inline int
11106 __gthread_mutex_lock (__gthread_mutex_t *__mutex)
11107 {
11108 if (__gthread_active_p ())
11109 return __gthrw_pthread_mutex_lock (__mutex);
11110 else
11111 return 0;
11112 }
11113
11114 static inline int
11115 __gthread_mutex_trylock (__gthread_mutex_t *__mutex)
11116 {
11117 if (__gthread_active_p ())
11118 return __gthrw_pthread_mutex_trylock (__mutex);
11119 else
11120 return 0;
11121 }
11122
11123
11124
11125 static inline int
11126 __gthread_mutex_timedlock (__gthread_mutex_t *__mutex,
11127 const __gthread_time_t *__abs_timeout)
11128 {
11129 if (__gthread_active_p ())
11130 return __gthrw_pthread_mutex_timedlock (__mutex, __abs_timeout);
11131 else
11132 return 0;
11133 }
11134
11135
11136
11137 static inline int
11138 __gthread_mutex_unlock (__gthread_mutex_t *__mutex)
11139 {
11140 if (__gthread_active_p ())
11141 return __gthrw_pthread_mutex_unlock (__mutex);
11142 else
11143 return 0;
11144 }
11145 # 791 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/x86_64-pc-linux-gnu/bits/gthr-default.h" 3
11146 static inline int
11147 __gthread_recursive_mutex_lock (__gthread_recursive_mutex_t *__mutex)
11148 {
11149 return __gthread_mutex_lock (__mutex);
11150 }
11151
11152 static inline int
11153 __gthread_recursive_mutex_trylock (__gthread_recursive_mutex_t *__mutex)
11154 {
11155 return __gthread_mutex_trylock (__mutex);
11156 }
11157
11158
11159
11160 static inline int
11161 __gthread_recursive_mutex_timedlock (__gthread_recursive_mutex_t *__mutex,
11162 const __gthread_time_t *__abs_timeout)
11163 {
11164 return __gthread_mutex_timedlock (__mutex, __abs_timeout);
11165 }
11166
11167
11168
11169 static inline int
11170 __gthread_recursive_mutex_unlock (__gthread_recursive_mutex_t *__mutex)
11171 {
11172 return __gthread_mutex_unlock (__mutex);
11173 }
11174
11175 static inline int
11176 __gthread_cond_broadcast (__gthread_cond_t *__cond)
11177 {
11178 return __gthrw_pthread_cond_broadcast (__cond);
11179 }
11180
11181 static inline int
11182 __gthread_cond_signal (__gthread_cond_t *__cond)
11183 {
11184 return __gthrw_pthread_cond_signal (__cond);
11185 }
11186
11187 static inline int
11188 __gthread_cond_wait (__gthread_cond_t *__cond, __gthread_mutex_t *__mutex)
11189 {
11190 return __gthrw_pthread_cond_wait (__cond, __mutex);
11191 }
11192
11193 static inline int
11194 __gthread_cond_timedwait (__gthread_cond_t *__cond, __gthread_mutex_t *__mutex,
11195 const __gthread_time_t *__abs_timeout)
11196 {
11197 return __gthrw_pthread_cond_timedwait (__cond, __mutex, __abs_timeout);
11198 }
11199
11200 static inline int
11201 __gthread_cond_wait_recursive (__gthread_cond_t *__cond,
11202 __gthread_recursive_mutex_t *__mutex)
11203 {
11204 return __gthread_cond_wait (__cond, __mutex);
11205 }
11206
11207 static inline int
11208 __gthread_cond_timedwait_recursive (__gthread_cond_t *__cond,
11209 __gthread_recursive_mutex_t *__mutex,
11210 const __gthread_time_t *__abs_timeout)
11211 {
11212 return __gthread_cond_timedwait (__cond, __mutex, __abs_timeout);
11213 }
11214
11215 static inline int
11216 __gthread_cond_destroy (__gthread_cond_t* __cond)
11217 {
11218 return __gthrw_pthread_cond_destroy (__cond);
11219 }
11220 # 163 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/x86_64-pc-linux-gnu/bits/gthr.h" 2 3
11221
11222
11223
11224
11225
11226
11227
11228 #pragma GCC visibility pop
11229 # 35 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/ext/atomicity.h" 2 3
11230 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/x86_64-pc-linux-gnu/bits/atomic_word.h" 1 3
11231 # 30 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/x86_64-pc-linux-gnu/bits/atomic_word.h" 3
11232 #define _GLIBCXX_ATOMIC_WORD_H 1
11233
11234 typedef int _Atomic_word;
11235 # 36 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/ext/atomicity.h" 2 3
11236
11237 namespace __gnu_cxx __attribute__ ((__visibility__ ("default"))) {
11238
11239
11240
11241
11242
11243
11244 static inline _Atomic_word
11245 __exchange_and_add(volatile _Atomic_word* __mem, int __val)
11246 { return __sync_fetch_and_add(__mem, __val); }
11247
11248 static inline void
11249 __atomic_add(volatile _Atomic_word* __mem, int __val)
11250 { __sync_fetch_and_add(__mem, __val); }
11251 # 61 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/ext/atomicity.h" 3
11252 static inline _Atomic_word
11253 __exchange_and_add_single(_Atomic_word* __mem, int __val)
11254 {
11255 _Atomic_word __result = *__mem;
11256 *__mem += __val;
11257 return __result;
11258 }
11259
11260 static inline void
11261 __atomic_add_single(_Atomic_word* __mem, int __val)
11262 { *__mem += __val; }
11263
11264 static inline _Atomic_word
11265 __attribute__ ((__unused__))
11266 __exchange_and_add_dispatch(_Atomic_word* __mem, int __val)
11267 {
11268
11269 if (__gthread_active_p())
11270 return __exchange_and_add(__mem, __val);
11271 else
11272 return __exchange_and_add_single(__mem, __val);
11273
11274
11275
11276 }
11277
11278 static inline void
11279 __attribute__ ((__unused__))
11280 __atomic_add_dispatch(_Atomic_word* __mem, int __val)
11281 {
11282
11283 if (__gthread_active_p())
11284 __atomic_add(__mem, __val);
11285 else
11286 __atomic_add_single(__mem, __val);
11287
11288
11289
11290 }
11291
11292 }
11293
11294
11295
11296
11297
11298 #define _GLIBCXX_READ_MEM_BARRIER __asm __volatile ("":::"memory")
11299
11300
11301 #define _GLIBCXX_WRITE_MEM_BARRIER __asm __volatile ("":::"memory")
11302 # 42 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/ios_base.h" 2 3
11303
11304 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_classes.h" 1 3
11305 # 37 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_classes.h" 3
11306 #define _LOCALE_CLASSES_H 1
11307
11308
11309 # 40 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_classes.h" 3
11310
11311
11312 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/string" 1 3
11313 # 36 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/string" 3
11314 #define _GLIBCXX_STRING 1
11315
11316
11317 # 39 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/string" 3
11318
11319
11320
11321
11322 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/allocator.h" 1 3
11323 # 45 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/allocator.h" 3
11324 #define _ALLOCATOR_H 1
11325
11326
11327 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/x86_64-pc-linux-gnu/bits/c++allocator.h" 1 3
11328 # 31 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/x86_64-pc-linux-gnu/bits/c++allocator.h" 3
11329 #define _GLIBCXX_CXX_ALLOCATOR_H 1
11330
11331
11332 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/ext/new_allocator.h" 1 3
11333 # 31 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/ext/new_allocator.h" 3
11334 #define _NEW_ALLOCATOR_H 1
11335
11336 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/new" 1 3
11337 # 37 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/new" 3
11338 #define _NEW
11339
11340
11341 # 40 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/new" 3
11342
11343 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/cstddef" 1 3
11344 # 41 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/cstddef" 3
11345
11346 # 42 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/cstddef" 3
11347
11348
11349 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 1 3 4
11350 # 45 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/cstddef" 2 3
11351 # 42 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/new" 2 3
11352
11353
11354 #pragma GCC visibility push(default)
11355
11356 extern "C++" {
11357
11358 namespace std
11359 {
11360
11361
11362
11363
11364
11365
11366 class bad_alloc : public exception
11367 {
11368 public:
11369 bad_alloc() throw() { }
11370
11371
11372
11373 virtual ~bad_alloc() throw();
11374
11375
11376 virtual const char* what() const throw();
11377 };
11378
11379 struct nothrow_t { };
11380
11381 extern const nothrow_t nothrow;
11382
11383
11384
11385 typedef void (*new_handler)();
11386
11387
11388
11389 new_handler set_new_handler(new_handler) throw();
11390 }
11391 # 93 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/new" 3
11392 void* operator new(std::size_t) throw (std::bad_alloc);
11393 void* operator new[](std::size_t) throw (std::bad_alloc);
11394 void operator delete(void*) throw();
11395 void operator delete[](void*) throw();
11396 void* operator new(std::size_t, const std::nothrow_t&) throw();
11397 void* operator new[](std::size_t, const std::nothrow_t&) throw();
11398 void operator delete(void*, const std::nothrow_t&) throw();
11399 void operator delete[](void*, const std::nothrow_t&) throw();
11400
11401
11402 inline void* operator new(std::size_t, void* __p) throw() { return __p; }
11403 inline void* operator new[](std::size_t, void* __p) throw() { return __p; }
11404
11405
11406 inline void operator delete (void*, void*) throw() { }
11407 inline void operator delete[](void*, void*) throw() { }
11408
11409 }
11410
11411 #pragma GCC visibility pop
11412 # 34 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/ext/new_allocator.h" 2 3
11413
11414
11415
11416 namespace __gnu_cxx __attribute__ ((__visibility__ ("default"))) {
11417
11418 using std::size_t;
11419 using std::ptrdiff_t;
11420 # 50 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/ext/new_allocator.h" 3
11421 template<typename _Tp>
11422 class new_allocator
11423 {
11424 public:
11425 typedef size_t size_type;
11426 typedef ptrdiff_t difference_type;
11427 typedef _Tp* pointer;
11428 typedef const _Tp* const_pointer;
11429 typedef _Tp& reference;
11430 typedef const _Tp& const_reference;
11431 typedef _Tp value_type;
11432
11433 template<typename _Tp1>
11434 struct rebind
11435 { typedef new_allocator<_Tp1> other; };
11436
11437 new_allocator() throw() { }
11438
11439 new_allocator(const new_allocator&) throw() { }
11440
11441 template<typename _Tp1>
11442 new_allocator(const new_allocator<_Tp1>&) throw() { }
11443
11444 ~new_allocator() throw() { }
11445
11446 pointer
11447 address(reference __x) const { return &__x; }
11448
11449 const_pointer
11450 address(const_reference __x) const { return &__x; }
11451
11452
11453
11454 pointer
11455 allocate(size_type __n, const void* = 0)
11456 {
11457 if (__n > this->max_size())
11458 std::__throw_bad_alloc();
11459
11460 return static_cast<_Tp*>(::operator new(__n * sizeof(_Tp)));
11461 }
11462
11463
11464 void
11465 deallocate(pointer __p, size_type)
11466 { ::operator delete(__p); }
11467
11468 size_type
11469 max_size() const throw()
11470 { return size_t(-1) / sizeof(_Tp); }
11471
11472
11473
11474 void
11475 construct(pointer __p, const _Tp& __val)
11476 { ::new((void *)__p) _Tp(__val); }
11477 # 114 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/ext/new_allocator.h" 3
11478 void
11479 destroy(pointer __p) { __p->~_Tp(); }
11480 };
11481
11482 template<typename _Tp>
11483 inline bool
11484 operator==(const new_allocator<_Tp>&, const new_allocator<_Tp>&)
11485 { return true; }
11486
11487 template<typename _Tp>
11488 inline bool
11489 operator!=(const new_allocator<_Tp>&, const new_allocator<_Tp>&)
11490 { return false; }
11491
11492 }
11493 # 35 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/x86_64-pc-linux-gnu/bits/c++allocator.h" 2 3
11494 #define __glibcxx_base_allocator __gnu_cxx::new_allocator
11495 # 49 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/allocator.h" 2 3
11496
11497 namespace std __attribute__ ((__visibility__ ("default"))) {
11498 # 59 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/allocator.h" 3
11499 template<typename _Tp>
11500 class allocator;
11501
11502
11503 template<>
11504 class allocator<void>
11505 {
11506 public:
11507 typedef size_t size_type;
11508 typedef ptrdiff_t difference_type;
11509 typedef void* pointer;
11510 typedef const void* const_pointer;
11511 typedef void value_type;
11512
11513 template<typename _Tp1>
11514 struct rebind
11515 { typedef allocator<_Tp1> other; };
11516 };
11517 # 85 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/allocator.h" 3
11518 template<typename _Tp>
11519 class allocator: public __gnu_cxx::new_allocator<_Tp>
11520 {
11521 public:
11522 typedef size_t size_type;
11523 typedef ptrdiff_t difference_type;
11524 typedef _Tp* pointer;
11525 typedef const _Tp* const_pointer;
11526 typedef _Tp& reference;
11527 typedef const _Tp& const_reference;
11528 typedef _Tp value_type;
11529
11530 template<typename _Tp1>
11531 struct rebind
11532 { typedef allocator<_Tp1> other; };
11533
11534 allocator() throw() { }
11535
11536 allocator(const allocator& __a) throw()
11537 : __gnu_cxx::new_allocator<_Tp>(__a) { }
11538
11539 template<typename _Tp1>
11540 allocator(const allocator<_Tp1>&) throw() { }
11541
11542 ~allocator() throw() { }
11543
11544
11545 };
11546
11547 template<typename _T1, typename _T2>
11548 inline bool
11549 operator==(const allocator<_T1>&, const allocator<_T2>&)
11550 { return true; }
11551
11552 template<typename _Tp>
11553 inline bool
11554 operator==(const allocator<_Tp>&, const allocator<_Tp>&)
11555 { return true; }
11556
11557 template<typename _T1, typename _T2>
11558 inline bool
11559 operator!=(const allocator<_T1>&, const allocator<_T2>&)
11560 { return false; }
11561
11562 template<typename _Tp>
11563 inline bool
11564 operator!=(const allocator<_Tp>&, const allocator<_Tp>&)
11565 { return false; }
11566
11567
11568
11569
11570
11571 extern template class allocator<char>;
11572 extern template class allocator<wchar_t>;
11573
11574
11575
11576 #undef __glibcxx_base_allocator
11577
11578
11579 template<typename _Alloc, bool = __is_empty(_Alloc)>
11580 struct __alloc_swap
11581 { static void _S_do_it(_Alloc&, _Alloc&) { } };
11582
11583 template<typename _Alloc>
11584 struct __alloc_swap<_Alloc, false>
11585 {
11586 static void
11587 _S_do_it(_Alloc& __one, _Alloc& __two)
11588 {
11589
11590 if (__one != __two)
11591 swap(__one, __two);
11592 }
11593 };
11594
11595
11596 template<typename _Alloc, bool = __is_empty(_Alloc)>
11597 struct __alloc_neq
11598 {
11599 static bool
11600 _S_do_it(const _Alloc&, const _Alloc&)
11601 { return false; }
11602 };
11603
11604 template<typename _Alloc>
11605 struct __alloc_neq<_Alloc, false>
11606 {
11607 static bool
11608 _S_do_it(const _Alloc& __one, const _Alloc& __two)
11609 { return __one != __two; }
11610 };
11611 # 204 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/allocator.h" 3
11612 }
11613 # 44 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/string" 2 3
11614
11615
11616 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/ostream_insert.h" 1 3
11617 # 31 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/ostream_insert.h" 3
11618 #define _OSTREAM_INSERT_H 1
11619
11620
11621 # 34 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/ostream_insert.h" 3
11622
11623
11624 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/cxxabi-forced.h" 1 3
11625 # 31 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/cxxabi-forced.h" 3
11626 #define _CXXABI_FORCED_H 1
11627
11628
11629 # 34 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/cxxabi-forced.h" 3
11630
11631 #pragma GCC visibility push(default)
11632
11633
11634 namespace __cxxabiv1
11635 {
11636
11637
11638
11639
11640
11641
11642
11643 class __forced_unwind
11644 {
11645 virtual ~__forced_unwind() throw();
11646
11647
11648 virtual void __pure_dummy() = 0;
11649 };
11650 }
11651
11652
11653 #pragma GCC visibility pop
11654 # 37 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/ostream_insert.h" 2 3
11655
11656 namespace std __attribute__ ((__visibility__ ("default"))) {
11657
11658 template<typename _CharT, typename _Traits>
11659 inline void
11660 __ostream_write(basic_ostream<_CharT, _Traits>& __out,
11661 const _CharT* __s, streamsize __n)
11662 {
11663 typedef basic_ostream<_CharT, _Traits> __ostream_type;
11664 typedef typename __ostream_type::ios_base __ios_base;
11665
11666 const streamsize __put = __out.rdbuf()->sputn(__s, __n);
11667 if (__put != __n)
11668 __out.setstate(__ios_base::badbit);
11669 }
11670
11671 template<typename _CharT, typename _Traits>
11672 inline void
11673 __ostream_fill(basic_ostream<_CharT, _Traits>& __out, streamsize __n)
11674 {
11675 typedef basic_ostream<_CharT, _Traits> __ostream_type;
11676 typedef typename __ostream_type::ios_base __ios_base;
11677
11678 const _CharT __c = __out.fill();
11679 for (; __n > 0; --__n)
11680 {
11681 const typename _Traits::int_type __put = __out.rdbuf()->sputc(__c);
11682 if (_Traits::eq_int_type(__put, _Traits::eof()))
11683 {
11684 __out.setstate(__ios_base::badbit);
11685 break;
11686 }
11687 }
11688 }
11689
11690 template<typename _CharT, typename _Traits>
11691 basic_ostream<_CharT, _Traits>&
11692 __ostream_insert(basic_ostream<_CharT, _Traits>& __out,
11693 const _CharT* __s, streamsize __n)
11694 {
11695 typedef basic_ostream<_CharT, _Traits> __ostream_type;
11696 typedef typename __ostream_type::ios_base __ios_base;
11697
11698 typename __ostream_type::sentry __cerb(__out);
11699 if (__cerb)
11700 {
11701 try
11702 {
11703 const streamsize __w = __out.width();
11704 if (__w > __n)
11705 {
11706 const bool __left = ((__out.flags()
11707 & __ios_base::adjustfield)
11708 == __ios_base::left);
11709 if (!__left)
11710 __ostream_fill(__out, __w - __n);
11711 if (__out.good())
11712 __ostream_write(__out, __s, __n);
11713 if (__left && __out.good())
11714 __ostream_fill(__out, __w - __n);
11715 }
11716 else
11717 __ostream_write(__out, __s, __n);
11718 __out.width(0);
11719 }
11720 catch(__cxxabiv1::__forced_unwind&)
11721 {
11722 __out._M_setstate(__ios_base::badbit);
11723 throw;
11724 }
11725 catch(...)
11726 { __out._M_setstate(__ios_base::badbit); }
11727 }
11728 return __out;
11729 }
11730
11731
11732
11733
11734
11735 extern template ostream& __ostream_insert(ostream&, const char*, streamsize);
11736
11737
11738 extern template wostream& __ostream_insert(wostream&, const wchar_t*,
11739 streamsize);
11740
11741
11742
11743 }
11744 # 47 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/string" 2 3
11745
11746
11747
11748 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_function.h" 1 3
11749 # 58 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_function.h" 3
11750 #define _STL_FUNCTION_H 1
11751
11752 namespace std __attribute__ ((__visibility__ ("default"))) {
11753 # 99 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_function.h" 3
11754 template<typename _Arg, typename _Result>
11755 struct unary_function
11756 {
11757 typedef _Arg argument_type;
11758
11759
11760 typedef _Result result_type;
11761 };
11762
11763
11764
11765
11766 template<typename _Arg1, typename _Arg2, typename _Result>
11767 struct binary_function
11768 {
11769 typedef _Arg1 first_argument_type;
11770
11771
11772 typedef _Arg2 second_argument_type;
11773 typedef _Result result_type;
11774 };
11775 # 134 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_function.h" 3
11776 template<typename _Tp>
11777 struct plus : public binary_function<_Tp, _Tp, _Tp>
11778 {
11779 _Tp
11780 operator()(const _Tp& __x, const _Tp& __y) const
11781 { return __x + __y; }
11782 };
11783
11784
11785 template<typename _Tp>
11786 struct minus : public binary_function<_Tp, _Tp, _Tp>
11787 {
11788 _Tp
11789 operator()(const _Tp& __x, const _Tp& __y) const
11790 { return __x - __y; }
11791 };
11792
11793
11794 template<typename _Tp>
11795 struct multiplies : public binary_function<_Tp, _Tp, _Tp>
11796 {
11797 _Tp
11798 operator()(const _Tp& __x, const _Tp& __y) const
11799 { return __x * __y; }
11800 };
11801
11802
11803 template<typename _Tp>
11804 struct divides : public binary_function<_Tp, _Tp, _Tp>
11805 {
11806 _Tp
11807 operator()(const _Tp& __x, const _Tp& __y) const
11808 { return __x / __y; }
11809 };
11810
11811
11812 template<typename _Tp>
11813 struct modulus : public binary_function<_Tp, _Tp, _Tp>
11814 {
11815 _Tp
11816 operator()(const _Tp& __x, const _Tp& __y) const
11817 { return __x % __y; }
11818 };
11819
11820
11821 template<typename _Tp>
11822 struct negate : public unary_function<_Tp, _Tp>
11823 {
11824 _Tp
11825 operator()(const _Tp& __x) const
11826 { return -__x; }
11827 };
11828 # 198 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_function.h" 3
11829 template<typename _Tp>
11830 struct equal_to : public binary_function<_Tp, _Tp, bool>
11831 {
11832 bool
11833 operator()(const _Tp& __x, const _Tp& __y) const
11834 { return __x == __y; }
11835 };
11836
11837
11838 template<typename _Tp>
11839 struct not_equal_to : public binary_function<_Tp, _Tp, bool>
11840 {
11841 bool
11842 operator()(const _Tp& __x, const _Tp& __y) const
11843 { return __x != __y; }
11844 };
11845
11846
11847 template<typename _Tp>
11848 struct greater : public binary_function<_Tp, _Tp, bool>
11849 {
11850 bool
11851 operator()(const _Tp& __x, const _Tp& __y) const
11852 { return __x > __y; }
11853 };
11854
11855
11856 template<typename _Tp>
11857 struct less : public binary_function<_Tp, _Tp, bool>
11858 {
11859 bool
11860 operator()(const _Tp& __x, const _Tp& __y) const
11861 { return __x < __y; }
11862 };
11863
11864
11865 template<typename _Tp>
11866 struct greater_equal : public binary_function<_Tp, _Tp, bool>
11867 {
11868 bool
11869 operator()(const _Tp& __x, const _Tp& __y) const
11870 { return __x >= __y; }
11871 };
11872
11873
11874 template<typename _Tp>
11875 struct less_equal : public binary_function<_Tp, _Tp, bool>
11876 {
11877 bool
11878 operator()(const _Tp& __x, const _Tp& __y) const
11879 { return __x <= __y; }
11880 };
11881 # 262 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_function.h" 3
11882 template<typename _Tp>
11883 struct logical_and : public binary_function<_Tp, _Tp, bool>
11884 {
11885 bool
11886 operator()(const _Tp& __x, const _Tp& __y) const
11887 { return __x && __y; }
11888 };
11889
11890
11891 template<typename _Tp>
11892 struct logical_or : public binary_function<_Tp, _Tp, bool>
11893 {
11894 bool
11895 operator()(const _Tp& __x, const _Tp& __y) const
11896 { return __x || __y; }
11897 };
11898
11899
11900 template<typename _Tp>
11901 struct logical_not : public unary_function<_Tp, bool>
11902 {
11903 bool
11904 operator()(const _Tp& __x) const
11905 { return !__x; }
11906 };
11907
11908
11909
11910
11911 template<typename _Tp>
11912 struct bit_and : public binary_function<_Tp, _Tp, _Tp>
11913 {
11914 _Tp
11915 operator()(const _Tp& __x, const _Tp& __y) const
11916 { return __x & __y; }
11917 };
11918
11919 template<typename _Tp>
11920 struct bit_or : public binary_function<_Tp, _Tp, _Tp>
11921 {
11922 _Tp
11923 operator()(const _Tp& __x, const _Tp& __y) const
11924 { return __x | __y; }
11925 };
11926
11927 template<typename _Tp>
11928 struct bit_xor : public binary_function<_Tp, _Tp, _Tp>
11929 {
11930 _Tp
11931 operator()(const _Tp& __x, const _Tp& __y) const
11932 { return __x ^ __y; }
11933 };
11934 # 345 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_function.h" 3
11935 template<typename _Predicate>
11936 class unary_negate
11937 : public unary_function<typename _Predicate::argument_type, bool>
11938 {
11939 protected:
11940 _Predicate _M_pred;
11941
11942 public:
11943 explicit
11944 unary_negate(const _Predicate& __x) : _M_pred(__x) { }
11945
11946 bool
11947 operator()(const typename _Predicate::argument_type& __x) const
11948 { return !_M_pred(__x); }
11949 };
11950
11951
11952 template<typename _Predicate>
11953 inline unary_negate<_Predicate>
11954 not1(const _Predicate& __pred)
11955 { return unary_negate<_Predicate>(__pred); }
11956
11957
11958 template<typename _Predicate>
11959 class binary_negate
11960 : public binary_function<typename _Predicate::first_argument_type,
11961 typename _Predicate::second_argument_type, bool>
11962 {
11963 protected:
11964 _Predicate _M_pred;
11965
11966 public:
11967 explicit
11968 binary_negate(const _Predicate& __x) : _M_pred(__x) { }
11969
11970 bool
11971 operator()(const typename _Predicate::first_argument_type& __x,
11972 const typename _Predicate::second_argument_type& __y) const
11973 { return !_M_pred(__x, __y); }
11974 };
11975
11976
11977 template<typename _Predicate>
11978 inline binary_negate<_Predicate>
11979 not2(const _Predicate& __pred)
11980 { return binary_negate<_Predicate>(__pred); }
11981 # 416 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_function.h" 3
11982 template<typename _Arg, typename _Result>
11983 class pointer_to_unary_function : public unary_function<_Arg, _Result>
11984 {
11985 protected:
11986 _Result (*_M_ptr)(_Arg);
11987
11988 public:
11989 pointer_to_unary_function() { }
11990
11991 explicit
11992 pointer_to_unary_function(_Result (*__x)(_Arg))
11993 : _M_ptr(__x) { }
11994
11995 _Result
11996 operator()(_Arg __x) const
11997 { return _M_ptr(__x); }
11998 };
11999
12000
12001 template<typename _Arg, typename _Result>
12002 inline pointer_to_unary_function<_Arg, _Result>
12003 ptr_fun(_Result (*__x)(_Arg))
12004 { return pointer_to_unary_function<_Arg, _Result>(__x); }
12005
12006
12007 template<typename _Arg1, typename _Arg2, typename _Result>
12008 class pointer_to_binary_function
12009 : public binary_function<_Arg1, _Arg2, _Result>
12010 {
12011 protected:
12012 _Result (*_M_ptr)(_Arg1, _Arg2);
12013
12014 public:
12015 pointer_to_binary_function() { }
12016
12017 explicit
12018 pointer_to_binary_function(_Result (*__x)(_Arg1, _Arg2))
12019 : _M_ptr(__x) { }
12020
12021 _Result
12022 operator()(_Arg1 __x, _Arg2 __y) const
12023 { return _M_ptr(__x, __y); }
12024 };
12025
12026
12027 template<typename _Arg1, typename _Arg2, typename _Result>
12028 inline pointer_to_binary_function<_Arg1, _Arg2, _Result>
12029 ptr_fun(_Result (*__x)(_Arg1, _Arg2))
12030 { return pointer_to_binary_function<_Arg1, _Arg2, _Result>(__x); }
12031
12032
12033 template<typename _Tp>
12034 struct _Identity : public unary_function<_Tp,_Tp>
12035 {
12036 _Tp&
12037 operator()(_Tp& __x) const
12038 { return __x; }
12039
12040 const _Tp&
12041 operator()(const _Tp& __x) const
12042 { return __x; }
12043 };
12044
12045 template<typename _Pair>
12046 struct _Select1st : public unary_function<_Pair,
12047 typename _Pair::first_type>
12048 {
12049 typename _Pair::first_type&
12050 operator()(_Pair& __x) const
12051 { return __x.first; }
12052
12053 const typename _Pair::first_type&
12054 operator()(const _Pair& __x) const
12055 { return __x.first; }
12056 };
12057
12058 template<typename _Pair>
12059 struct _Select2nd : public unary_function<_Pair,
12060 typename _Pair::second_type>
12061 {
12062 typename _Pair::second_type&
12063 operator()(_Pair& __x) const
12064 { return __x.second; }
12065
12066 const typename _Pair::second_type&
12067 operator()(const _Pair& __x) const
12068 { return __x.second; }
12069 };
12070 # 523 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_function.h" 3
12071 template<typename _Ret, typename _Tp>
12072 class mem_fun_t : public unary_function<_Tp*, _Ret>
12073 {
12074 public:
12075 explicit
12076 mem_fun_t(_Ret (_Tp::*__pf)())
12077 : _M_f(__pf) { }
12078
12079 _Ret
12080 operator()(_Tp* __p) const
12081 { return (__p->*_M_f)(); }
12082
12083 private:
12084 _Ret (_Tp::*_M_f)();
12085 };
12086
12087
12088
12089 template<typename _Ret, typename _Tp>
12090 class const_mem_fun_t : public unary_function<const _Tp*, _Ret>
12091 {
12092 public:
12093 explicit
12094 const_mem_fun_t(_Ret (_Tp::*__pf)() const)
12095 : _M_f(__pf) { }
12096
12097 _Ret
12098 operator()(const _Tp* __p) const
12099 { return (__p->*_M_f)(); }
12100
12101 private:
12102 _Ret (_Tp::*_M_f)() const;
12103 };
12104
12105
12106
12107 template<typename _Ret, typename _Tp>
12108 class mem_fun_ref_t : public unary_function<_Tp, _Ret>
12109 {
12110 public:
12111 explicit
12112 mem_fun_ref_t(_Ret (_Tp::*__pf)())
12113 : _M_f(__pf) { }
12114
12115 _Ret
12116 operator()(_Tp& __r) const
12117 { return (__r.*_M_f)(); }
12118
12119 private:
12120 _Ret (_Tp::*_M_f)();
12121 };
12122
12123
12124
12125 template<typename _Ret, typename _Tp>
12126 class const_mem_fun_ref_t : public unary_function<_Tp, _Ret>
12127 {
12128 public:
12129 explicit
12130 const_mem_fun_ref_t(_Ret (_Tp::*__pf)() const)
12131 : _M_f(__pf) { }
12132
12133 _Ret
12134 operator()(const _Tp& __r) const
12135 { return (__r.*_M_f)(); }
12136
12137 private:
12138 _Ret (_Tp::*_M_f)() const;
12139 };
12140
12141
12142
12143 template<typename _Ret, typename _Tp, typename _Arg>
12144 class mem_fun1_t : public binary_function<_Tp*, _Arg, _Ret>
12145 {
12146 public:
12147 explicit
12148 mem_fun1_t(_Ret (_Tp::*__pf)(_Arg))
12149 : _M_f(__pf) { }
12150
12151 _Ret
12152 operator()(_Tp* __p, _Arg __x) const
12153 { return (__p->*_M_f)(__x); }
12154
12155 private:
12156 _Ret (_Tp::*_M_f)(_Arg);
12157 };
12158
12159
12160
12161 template<typename _Ret, typename _Tp, typename _Arg>
12162 class const_mem_fun1_t : public binary_function<const _Tp*, _Arg, _Ret>
12163 {
12164 public:
12165 explicit
12166 const_mem_fun1_t(_Ret (_Tp::*__pf)(_Arg) const)
12167 : _M_f(__pf) { }
12168
12169 _Ret
12170 operator()(const _Tp* __p, _Arg __x) const
12171 { return (__p->*_M_f)(__x); }
12172
12173 private:
12174 _Ret (_Tp::*_M_f)(_Arg) const;
12175 };
12176
12177
12178
12179 template<typename _Ret, typename _Tp, typename _Arg>
12180 class mem_fun1_ref_t : public binary_function<_Tp, _Arg, _Ret>
12181 {
12182 public:
12183 explicit
12184 mem_fun1_ref_t(_Ret (_Tp::*__pf)(_Arg))
12185 : _M_f(__pf) { }
12186
12187 _Ret
12188 operator()(_Tp& __r, _Arg __x) const
12189 { return (__r.*_M_f)(__x); }
12190
12191 private:
12192 _Ret (_Tp::*_M_f)(_Arg);
12193 };
12194
12195
12196
12197 template<typename _Ret, typename _Tp, typename _Arg>
12198 class const_mem_fun1_ref_t : public binary_function<_Tp, _Arg, _Ret>
12199 {
12200 public:
12201 explicit
12202 const_mem_fun1_ref_t(_Ret (_Tp::*__pf)(_Arg) const)
12203 : _M_f(__pf) { }
12204
12205 _Ret
12206 operator()(const _Tp& __r, _Arg __x) const
12207 { return (__r.*_M_f)(__x); }
12208
12209 private:
12210 _Ret (_Tp::*_M_f)(_Arg) const;
12211 };
12212
12213
12214
12215 template<typename _Ret, typename _Tp>
12216 inline mem_fun_t<_Ret, _Tp>
12217 mem_fun(_Ret (_Tp::*__f)())
12218 { return mem_fun_t<_Ret, _Tp>(__f); }
12219
12220 template<typename _Ret, typename _Tp>
12221 inline const_mem_fun_t<_Ret, _Tp>
12222 mem_fun(_Ret (_Tp::*__f)() const)
12223 { return const_mem_fun_t<_Ret, _Tp>(__f); }
12224
12225 template<typename _Ret, typename _Tp>
12226 inline mem_fun_ref_t<_Ret, _Tp>
12227 mem_fun_ref(_Ret (_Tp::*__f)())
12228 { return mem_fun_ref_t<_Ret, _Tp>(__f); }
12229
12230 template<typename _Ret, typename _Tp>
12231 inline const_mem_fun_ref_t<_Ret, _Tp>
12232 mem_fun_ref(_Ret (_Tp::*__f)() const)
12233 { return const_mem_fun_ref_t<_Ret, _Tp>(__f); }
12234
12235 template<typename _Ret, typename _Tp, typename _Arg>
12236 inline mem_fun1_t<_Ret, _Tp, _Arg>
12237 mem_fun(_Ret (_Tp::*__f)(_Arg))
12238 { return mem_fun1_t<_Ret, _Tp, _Arg>(__f); }
12239
12240 template<typename _Ret, typename _Tp, typename _Arg>
12241 inline const_mem_fun1_t<_Ret, _Tp, _Arg>
12242 mem_fun(_Ret (_Tp::*__f)(_Arg) const)
12243 { return const_mem_fun1_t<_Ret, _Tp, _Arg>(__f); }
12244
12245 template<typename _Ret, typename _Tp, typename _Arg>
12246 inline mem_fun1_ref_t<_Ret, _Tp, _Arg>
12247 mem_fun_ref(_Ret (_Tp::*__f)(_Arg))
12248 { return mem_fun1_ref_t<_Ret, _Tp, _Arg>(__f); }
12249
12250 template<typename _Ret, typename _Tp, typename _Arg>
12251 inline const_mem_fun1_ref_t<_Ret, _Tp, _Arg>
12252 mem_fun_ref(_Ret (_Tp::*__f)(_Arg) const)
12253 { return const_mem_fun1_ref_t<_Ret, _Tp, _Arg>(__f); }
12254
12255
12256
12257 }
12258
12259
12260 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/backward/binders.h" 1 3
12261 # 58 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/backward/binders.h" 3
12262 #define _BACKWARD_BINDERS_H 1
12263
12264 namespace std __attribute__ ((__visibility__ ("default"))) {
12265 # 97 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/backward/binders.h" 3
12266 template<typename _Operation>
12267 class binder1st
12268 : public unary_function<typename _Operation::second_argument_type,
12269 typename _Operation::result_type>
12270 {
12271 protected:
12272 _Operation op;
12273 typename _Operation::first_argument_type value;
12274
12275 public:
12276 binder1st(const _Operation& __x,
12277 const typename _Operation::first_argument_type& __y)
12278 : op(__x), value(__y) { }
12279
12280 typename _Operation::result_type
12281 operator()(const typename _Operation::second_argument_type& __x) const
12282 { return op(value, __x); }
12283
12284
12285
12286 typename _Operation::result_type
12287 operator()(typename _Operation::second_argument_type& __x) const
12288 { return op(value, __x); }
12289 } ;
12290
12291
12292 template<typename _Operation, typename _Tp>
12293 inline binder1st<_Operation>
12294 bind1st(const _Operation& __fn, const _Tp& __x)
12295 {
12296 typedef typename _Operation::first_argument_type _Arg1_type;
12297 return binder1st<_Operation>(__fn, _Arg1_type(__x));
12298 }
12299
12300
12301 template<typename _Operation>
12302 class binder2nd
12303 : public unary_function<typename _Operation::first_argument_type,
12304 typename _Operation::result_type>
12305 {
12306 protected:
12307 _Operation op;
12308 typename _Operation::second_argument_type value;
12309
12310 public:
12311 binder2nd(const _Operation& __x,
12312 const typename _Operation::second_argument_type& __y)
12313 : op(__x), value(__y) { }
12314
12315 typename _Operation::result_type
12316 operator()(const typename _Operation::first_argument_type& __x) const
12317 { return op(__x, value); }
12318
12319
12320
12321 typename _Operation::result_type
12322 operator()(typename _Operation::first_argument_type& __x) const
12323 { return op(__x, value); }
12324 } ;
12325
12326
12327 template<typename _Operation, typename _Tp>
12328 inline binder2nd<_Operation>
12329 bind2nd(const _Operation& __fn, const _Tp& __x)
12330 {
12331 typedef typename _Operation::second_argument_type _Arg2_type;
12332 return binder2nd<_Operation>(__fn, _Arg2_type(__x));
12333 }
12334
12335
12336 }
12337 # 713 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_function.h" 2 3
12338 # 51 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/string" 2 3
12339
12340
12341 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 1 3
12342 # 37 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
12343 #define _BASIC_STRING_H 1
12344
12345
12346 # 40 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
12347
12348
12349
12350 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/initializer_list" 1 3
12351 # 31 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/initializer_list" 3
12352 #define _INITIALIZER_LIST
12353
12354
12355 # 34 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/initializer_list" 3
12356 # 44 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 2 3
12357
12358 namespace std __attribute__ ((__visibility__ ("default"))) {
12359 # 104 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
12360 template<typename _CharT, typename _Traits, typename _Alloc>
12361 class basic_string
12362 {
12363 typedef typename _Alloc::template rebind<_CharT>::other _CharT_alloc_type;
12364
12365
12366 public:
12367 typedef _Traits traits_type;
12368 typedef typename _Traits::char_type value_type;
12369 typedef _Alloc allocator_type;
12370 typedef typename _CharT_alloc_type::size_type size_type;
12371 typedef typename _CharT_alloc_type::difference_type difference_type;
12372 typedef typename _CharT_alloc_type::reference reference;
12373 typedef typename _CharT_alloc_type::const_reference const_reference;
12374 typedef typename _CharT_alloc_type::pointer pointer;
12375 typedef typename _CharT_alloc_type::const_pointer const_pointer;
12376 typedef __gnu_cxx::__normal_iterator<pointer, basic_string> iterator;
12377 typedef __gnu_cxx::__normal_iterator<const_pointer, basic_string>
12378 const_iterator;
12379 typedef std::reverse_iterator<const_iterator> const_reverse_iterator;
12380 typedef std::reverse_iterator<iterator> reverse_iterator;
12381
12382 private:
12383 # 141 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
12384 struct _Rep_base
12385 {
12386 size_type _M_length;
12387 size_type _M_capacity;
12388 _Atomic_word _M_refcount;
12389 };
12390
12391 struct _Rep : _Rep_base
12392 {
12393
12394 typedef typename _Alloc::template rebind<char>::other _Raw_bytes_alloc;
12395 # 166 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
12396 static const size_type _S_max_size;
12397 static const _CharT _S_terminal;
12398
12399
12400
12401 static size_type _S_empty_rep_storage[];
12402
12403 static _Rep&
12404 _S_empty_rep()
12405 {
12406
12407
12408
12409 void* __p = reinterpret_cast<void*>(&_S_empty_rep_storage);
12410 return *reinterpret_cast<_Rep*>(__p);
12411 }
12412
12413 bool
12414 _M_is_leaked() const
12415 { return this->_M_refcount < 0; }
12416
12417 bool
12418 _M_is_shared() const
12419 { return this->_M_refcount > 0; }
12420
12421 void
12422 _M_set_leaked()
12423 { this->_M_refcount = -1; }
12424
12425 void
12426 _M_set_sharable()
12427 { this->_M_refcount = 0; }
12428
12429 void
12430 _M_set_length_and_sharable(size_type __n)
12431 {
12432
12433 if (__builtin_expect(this != &_S_empty_rep(), false))
12434
12435 {
12436 this->_M_set_sharable();
12437 this->_M_length = __n;
12438 traits_type::assign(this->_M_refdata()[__n], _S_terminal);
12439
12440
12441 }
12442 }
12443
12444 _CharT*
12445 _M_refdata() throw()
12446 { return reinterpret_cast<_CharT*>(this + 1); }
12447
12448 _CharT*
12449 _M_grab(const _Alloc& __alloc1, const _Alloc& __alloc2)
12450 {
12451 return (!_M_is_leaked() && __alloc1 == __alloc2)
12452 ? _M_refcopy() : _M_clone(__alloc1);
12453 }
12454
12455
12456 static _Rep*
12457 _S_create(size_type, size_type, const _Alloc&);
12458
12459 void
12460 _M_dispose(const _Alloc& __a)
12461 {
12462
12463 if (__builtin_expect(this != &_S_empty_rep(), false))
12464
12465 if (__gnu_cxx::__exchange_and_add_dispatch(&this->_M_refcount,
12466 -1) <= 0)
12467 _M_destroy(__a);
12468 }
12469
12470 void
12471 _M_destroy(const _Alloc&) throw();
12472
12473 _CharT*
12474 _M_refcopy() throw()
12475 {
12476
12477 if (__builtin_expect(this != &_S_empty_rep(), false))
12478
12479 __gnu_cxx::__atomic_add_dispatch(&this->_M_refcount, 1);
12480 return _M_refdata();
12481 }
12482
12483 _CharT*
12484 _M_clone(const _Alloc&, size_type __res = 0);
12485 };
12486
12487
12488 struct _Alloc_hider : _Alloc
12489 {
12490 _Alloc_hider(_CharT* __dat, const _Alloc& __a)
12491 : _Alloc(__a), _M_p(__dat) { }
12492
12493 _CharT* _M_p;
12494 };
12495
12496 public:
12497
12498
12499
12500
12501 static const size_type npos = static_cast<size_type>(-1);
12502
12503 private:
12504
12505 mutable _Alloc_hider _M_dataplus;
12506
12507 _CharT*
12508 _M_data() const
12509 { return _M_dataplus._M_p; }
12510
12511 _CharT*
12512 _M_data(_CharT* __p)
12513 { return (_M_dataplus._M_p = __p); }
12514
12515 _Rep*
12516 _M_rep() const
12517 { return &((reinterpret_cast<_Rep*> (_M_data()))[-1]); }
12518
12519
12520
12521 iterator
12522 _M_ibegin() const
12523 { return iterator(_M_data()); }
12524
12525 iterator
12526 _M_iend() const
12527 { return iterator(_M_data() + this->size()); }
12528
12529 void
12530 _M_leak()
12531 {
12532 if (!_M_rep()->_M_is_leaked())
12533 _M_leak_hard();
12534 }
12535
12536 size_type
12537 _M_check(size_type __pos, const char* __s) const
12538 {
12539 if (__pos > this->size())
12540 __throw_out_of_range((__s));
12541 return __pos;
12542 }
12543
12544 void
12545 _M_check_length(size_type __n1, size_type __n2, const char* __s) const
12546 {
12547 if (this->max_size() - (this->size() - __n1) < __n2)
12548 __throw_length_error((__s));
12549 }
12550
12551
12552 size_type
12553 _M_limit(size_type __pos, size_type __off) const
12554 {
12555 const bool __testoff = __off < this->size() - __pos;
12556 return __testoff ? __off : this->size() - __pos;
12557 }
12558
12559
12560 bool
12561 _M_disjunct(const _CharT* __s) const
12562 {
12563 return (less<const _CharT*>()(__s, _M_data())
12564 || less<const _CharT*>()(_M_data() + this->size(), __s));
12565 }
12566
12567
12568
12569 static void
12570 _M_copy(_CharT* __d, const _CharT* __s, size_type __n)
12571 {
12572 if (__n == 1)
12573 traits_type::assign(*__d, *__s);
12574 else
12575 traits_type::copy(__d, __s, __n);
12576 }
12577
12578 static void
12579 _M_move(_CharT* __d, const _CharT* __s, size_type __n)
12580 {
12581 if (__n == 1)
12582 traits_type::assign(*__d, *__s);
12583 else
12584 traits_type::move(__d, __s, __n);
12585 }
12586
12587 static void
12588 _M_assign(_CharT* __d, size_type __n, _CharT __c)
12589 {
12590 if (__n == 1)
12591 traits_type::assign(*__d, __c);
12592 else
12593 traits_type::assign(__d, __n, __c);
12594 }
12595
12596
12597
12598 template<class _Iterator>
12599 static void
12600 _S_copy_chars(_CharT* __p, _Iterator __k1, _Iterator __k2)
12601 {
12602 for (; __k1 != __k2; ++__k1, ++__p)
12603 traits_type::assign(*__p, *__k1);
12604 }
12605
12606 static void
12607 _S_copy_chars(_CharT* __p, iterator __k1, iterator __k2)
12608 { _S_copy_chars(__p, __k1.base(), __k2.base()); }
12609
12610 static void
12611 _S_copy_chars(_CharT* __p, const_iterator __k1, const_iterator __k2)
12612 { _S_copy_chars(__p, __k1.base(), __k2.base()); }
12613
12614 static void
12615 _S_copy_chars(_CharT* __p, _CharT* __k1, _CharT* __k2)
12616 { _M_copy(__p, __k1, __k2 - __k1); }
12617
12618 static void
12619 _S_copy_chars(_CharT* __p, const _CharT* __k1, const _CharT* __k2)
12620 { _M_copy(__p, __k1, __k2 - __k1); }
12621
12622 static int
12623 _S_compare(size_type __n1, size_type __n2)
12624 {
12625 const difference_type __d = difference_type(__n1 - __n2);
12626
12627 if (__d > __gnu_cxx::__numeric_traits<int>::__max)
12628 return __gnu_cxx::__numeric_traits<int>::__max;
12629 else if (__d < __gnu_cxx::__numeric_traits<int>::__min)
12630 return __gnu_cxx::__numeric_traits<int>::__min;
12631 else
12632 return int(__d);
12633 }
12634
12635 void
12636 _M_mutate(size_type __pos, size_type __len1, size_type __len2);
12637
12638 void
12639 _M_leak_hard();
12640
12641 static _Rep&
12642 _S_empty_rep()
12643 { return _Rep::_S_empty_rep(); }
12644
12645 public:
12646
12647
12648
12649
12650
12651
12652
12653 basic_string()
12654
12655 : _M_dataplus(_S_empty_rep()._M_refdata(), _Alloc()) { }
12656
12657
12658
12659
12660
12661
12662
12663 explicit
12664 basic_string(const _Alloc& __a);
12665
12666
12667
12668
12669
12670
12671 basic_string(const basic_string& __str);
12672
12673
12674
12675
12676
12677
12678 basic_string(const basic_string& __str, size_type __pos,
12679 size_type __n = npos);
12680
12681
12682
12683
12684
12685
12686
12687 basic_string(const basic_string& __str, size_type __pos,
12688 size_type __n, const _Alloc& __a);
12689 # 469 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
12690 basic_string(const _CharT* __s, size_type __n,
12691 const _Alloc& __a = _Alloc());
12692
12693
12694
12695
12696
12697 basic_string(const _CharT* __s, const _Alloc& __a = _Alloc());
12698
12699
12700
12701
12702
12703
12704 basic_string(size_type __n, _CharT __c, const _Alloc& __a = _Alloc());
12705 # 517 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
12706 template<class _InputIterator>
12707 basic_string(_InputIterator __beg, _InputIterator __end,
12708 const _Alloc& __a = _Alloc());
12709
12710
12711
12712
12713 ~basic_string()
12714 { _M_rep()->_M_dispose(this->get_allocator()); }
12715
12716
12717
12718
12719
12720 basic_string&
12721 operator=(const basic_string& __str)
12722 { return this->assign(__str); }
12723
12724
12725
12726
12727
12728 basic_string&
12729 operator=(const _CharT* __s)
12730 { return this->assign(__s); }
12731 # 550 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
12732 basic_string&
12733 operator=(_CharT __c)
12734 {
12735 this->assign(1, __c);
12736 return *this;
12737 }
12738 # 590 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
12739 iterator
12740 begin()
12741 {
12742 _M_leak();
12743 return iterator(_M_data());
12744 }
12745
12746
12747
12748
12749
12750 const_iterator
12751 begin() const
12752 { return const_iterator(_M_data()); }
12753
12754
12755
12756
12757
12758 iterator
12759 end()
12760 {
12761 _M_leak();
12762 return iterator(_M_data() + this->size());
12763 }
12764
12765
12766
12767
12768
12769 const_iterator
12770 end() const
12771 { return const_iterator(_M_data() + this->size()); }
12772
12773
12774
12775
12776
12777
12778 reverse_iterator
12779 rbegin()
12780 { return reverse_iterator(this->end()); }
12781
12782
12783
12784
12785
12786
12787 const_reverse_iterator
12788 rbegin() const
12789 { return const_reverse_iterator(this->end()); }
12790
12791
12792
12793
12794
12795
12796 reverse_iterator
12797 rend()
12798 { return reverse_iterator(this->begin()); }
12799
12800
12801
12802
12803
12804
12805 const_reverse_iterator
12806 rend() const
12807 { return const_reverse_iterator(this->begin()); }
12808 # 696 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
12809 public:
12810
12811
12812
12813 size_type
12814 size() const
12815 { return _M_rep()->_M_length; }
12816
12817
12818
12819 size_type
12820 length() const
12821 { return _M_rep()->_M_length; }
12822
12823
12824 size_type
12825 max_size() const
12826 { return _Rep::_S_max_size; }
12827 # 725 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
12828 void
12829 resize(size_type __n, _CharT __c);
12830 # 738 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
12831 void
12832 resize(size_type __n)
12833 { this->resize(__n, _CharT()); }
12834 # 758 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
12835 size_type
12836 capacity() const
12837 { return _M_rep()->_M_capacity; }
12838 # 779 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
12839 void
12840 reserve(size_type __res_arg = 0);
12841
12842
12843
12844
12845 void
12846 clear()
12847 { _M_mutate(0, this->size(), 0); }
12848
12849
12850
12851
12852
12853 bool
12854 empty() const
12855 { return this->size() == 0; }
12856 # 808 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
12857 const_reference
12858 operator[] (size_type __pos) const
12859 {
12860 ;
12861 return _M_data()[__pos];
12862 }
12863 # 825 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
12864 reference
12865 operator[](size_type __pos)
12866 {
12867
12868 ;
12869
12870 ;
12871 _M_leak();
12872 return _M_data()[__pos];
12873 }
12874 # 846 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
12875 const_reference
12876 at(size_type __n) const
12877 {
12878 if (__n >= this->size())
12879 __throw_out_of_range(("basic_string::at"));
12880 return _M_data()[__n];
12881 }
12882 # 865 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
12883 reference
12884 at(size_type __n)
12885 {
12886 if (__n >= size())
12887 __throw_out_of_range(("basic_string::at"));
12888 _M_leak();
12889 return _M_data()[__n];
12890 }
12891
12892
12893
12894
12895
12896
12897
12898 basic_string&
12899 operator+=(const basic_string& __str)
12900 { return this->append(__str); }
12901
12902
12903
12904
12905
12906
12907 basic_string&
12908 operator+=(const _CharT* __s)
12909 { return this->append(__s); }
12910
12911
12912
12913
12914
12915
12916 basic_string&
12917 operator+=(_CharT __c)
12918 {
12919 this->push_back(__c);
12920 return *this;
12921 }
12922 # 921 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
12923 basic_string&
12924 append(const basic_string& __str);
12925 # 936 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
12926 basic_string&
12927 append(const basic_string& __str, size_type __pos, size_type __n);
12928
12929
12930
12931
12932
12933
12934
12935 basic_string&
12936 append(const _CharT* __s, size_type __n);
12937
12938
12939
12940
12941
12942
12943 basic_string&
12944 append(const _CharT* __s)
12945 {
12946 ;
12947 return this->append(__s, traits_type::length(__s));
12948 }
12949 # 968 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
12950 basic_string&
12951 append(size_type __n, _CharT __c);
12952 # 990 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
12953 template<class _InputIterator>
12954 basic_string&
12955 append(_InputIterator __first, _InputIterator __last)
12956 { return this->replace(_M_iend(), _M_iend(), __first, __last); }
12957
12958
12959
12960
12961
12962 void
12963 push_back(_CharT __c)
12964 {
12965 const size_type __len = 1 + this->size();
12966 if (__len > this->capacity() || _M_rep()->_M_is_shared())
12967 this->reserve(__len);
12968 traits_type::assign(_M_data()[this->size()], __c);
12969 _M_rep()->_M_set_length_and_sharable(__len);
12970 }
12971
12972
12973
12974
12975
12976
12977 basic_string&
12978 assign(const basic_string& __str);
12979 # 1046 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
12980 basic_string&
12981 assign(const basic_string& __str, size_type __pos, size_type __n)
12982 { return this->assign(__str._M_data()
12983 + __str._M_check(__pos, "basic_string::assign"),
12984 __str._M_limit(__pos, __n)); }
12985 # 1062 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
12986 basic_string&
12987 assign(const _CharT* __s, size_type __n);
12988 # 1074 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
12989 basic_string&
12990 assign(const _CharT* __s)
12991 {
12992 ;
12993 return this->assign(__s, traits_type::length(__s));
12994 }
12995 # 1090 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
12996 basic_string&
12997 assign(size_type __n, _CharT __c)
12998 { return _M_replace_aux(size_type(0), this->size(), __n, __c); }
12999 # 1102 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
13000 template<class _InputIterator>
13001 basic_string&
13002 assign(_InputIterator __first, _InputIterator __last)
13003 { return this->replace(_M_ibegin(), _M_iend(), __first, __last); }
13004 # 1130 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
13005 void
13006 insert(iterator __p, size_type __n, _CharT __c)
13007 { this->replace(__p, __p, __n, __c); }
13008 # 1145 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
13009 template<class _InputIterator>
13010 void
13011 insert(iterator __p, _InputIterator __beg, _InputIterator __end)
13012 { this->replace(__p, __p, __beg, __end); }
13013 # 1176 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
13014 basic_string&
13015 insert(size_type __pos1, const basic_string& __str)
13016 { return this->insert(__pos1, __str, size_type(0), __str.size()); }
13017 # 1198 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
13018 basic_string&
13019 insert(size_type __pos1, const basic_string& __str,
13020 size_type __pos2, size_type __n)
13021 { return this->insert(__pos1, __str._M_data()
13022 + __str._M_check(__pos2, "basic_string::insert"),
13023 __str._M_limit(__pos2, __n)); }
13024 # 1221 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
13025 basic_string&
13026 insert(size_type __pos, const _CharT* __s, size_type __n);
13027 # 1239 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
13028 basic_string&
13029 insert(size_type __pos, const _CharT* __s)
13030 {
13031 ;
13032 return this->insert(__pos, __s, traits_type::length(__s));
13033 }
13034 # 1262 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
13035 basic_string&
13036 insert(size_type __pos, size_type __n, _CharT __c)
13037 { return _M_replace_aux(_M_check(__pos, "basic_string::insert"),
13038 size_type(0), __n, __c); }
13039 # 1279 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
13040 iterator
13041 insert(iterator __p, _CharT __c)
13042 {
13043 ;
13044 const size_type __pos = __p - _M_ibegin();
13045 _M_replace_aux(__pos, size_type(0), size_type(1), __c);
13046 _M_rep()->_M_set_leaked();
13047 return iterator(_M_data() + __pos);
13048 }
13049 # 1303 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
13050 basic_string&
13051 erase(size_type __pos = 0, size_type __n = npos)
13052 {
13053 _M_mutate(_M_check(__pos, "basic_string::erase"),
13054 _M_limit(__pos, __n), size_type(0));
13055 return *this;
13056 }
13057 # 1319 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
13058 iterator
13059 erase(iterator __position)
13060 {
13061
13062 ;
13063 const size_type __pos = __position - _M_ibegin();
13064 _M_mutate(__pos, size_type(1), size_type(0));
13065 _M_rep()->_M_set_leaked();
13066 return iterator(_M_data() + __pos);
13067 }
13068 # 1339 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
13069 iterator
13070 erase(iterator __first, iterator __last);
13071 # 1358 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
13072 basic_string&
13073 replace(size_type __pos, size_type __n, const basic_string& __str)
13074 { return this->replace(__pos, __n, __str._M_data(), __str.size()); }
13075 # 1380 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
13076 basic_string&
13077 replace(size_type __pos1, size_type __n1, const basic_string& __str,
13078 size_type __pos2, size_type __n2)
13079 { return this->replace(__pos1, __n1, __str._M_data()
13080 + __str._M_check(__pos2, "basic_string::replace"),
13081 __str._M_limit(__pos2, __n2)); }
13082 # 1404 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
13083 basic_string&
13084 replace(size_type __pos, size_type __n1, const _CharT* __s,
13085 size_type __n2);
13086 # 1423 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
13087 basic_string&
13088 replace(size_type __pos, size_type __n1, const _CharT* __s)
13089 {
13090 ;
13091 return this->replace(__pos, __n1, __s, traits_type::length(__s));
13092 }
13093 # 1446 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
13094 basic_string&
13095 replace(size_type __pos, size_type __n1, size_type __n2, _CharT __c)
13096 { return _M_replace_aux(_M_check(__pos, "basic_string::replace"),
13097 _M_limit(__pos, __n1), __n2, __c); }
13098 # 1464 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
13099 basic_string&
13100 replace(iterator __i1, iterator __i2, const basic_string& __str)
13101 { return this->replace(__i1, __i2, __str._M_data(), __str.size()); }
13102 # 1482 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
13103 basic_string&
13104 replace(iterator __i1, iterator __i2, const _CharT* __s, size_type __n)
13105 {
13106
13107 ;
13108 return this->replace(__i1 - _M_ibegin(), __i2 - __i1, __s, __n);
13109 }
13110 # 1503 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
13111 basic_string&
13112 replace(iterator __i1, iterator __i2, const _CharT* __s)
13113 {
13114 ;
13115 return this->replace(__i1, __i2, __s, traits_type::length(__s));
13116 }
13117 # 1524 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
13118 basic_string&
13119 replace(iterator __i1, iterator __i2, size_type __n, _CharT __c)
13120 {
13121
13122 ;
13123 return _M_replace_aux(__i1 - _M_ibegin(), __i2 - __i1, __n, __c);
13124 }
13125 # 1546 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
13126 template<class _InputIterator>
13127 basic_string&
13128 replace(iterator __i1, iterator __i2,
13129 _InputIterator __k1, _InputIterator __k2)
13130 {
13131
13132 ;
13133 ;
13134 typedef typename std::__is_integer<_InputIterator>::__type _Integral;
13135 return _M_replace_dispatch(__i1, __i2, __k1, __k2, _Integral());
13136 }
13137
13138
13139
13140 basic_string&
13141 replace(iterator __i1, iterator __i2, _CharT* __k1, _CharT* __k2)
13142 {
13143
13144 ;
13145 ;
13146 return this->replace(__i1 - _M_ibegin(), __i2 - __i1,
13147 __k1, __k2 - __k1);
13148 }
13149
13150 basic_string&
13151 replace(iterator __i1, iterator __i2,
13152 const _CharT* __k1, const _CharT* __k2)
13153 {
13154
13155 ;
13156 ;
13157 return this->replace(__i1 - _M_ibegin(), __i2 - __i1,
13158 __k1, __k2 - __k1);
13159 }
13160
13161 basic_string&
13162 replace(iterator __i1, iterator __i2, iterator __k1, iterator __k2)
13163 {
13164
13165 ;
13166 ;
13167 return this->replace(__i1 - _M_ibegin(), __i2 - __i1,
13168 __k1.base(), __k2 - __k1);
13169 }
13170
13171 basic_string&
13172 replace(iterator __i1, iterator __i2,
13173 const_iterator __k1, const_iterator __k2)
13174 {
13175
13176 ;
13177 ;
13178 return this->replace(__i1 - _M_ibegin(), __i2 - __i1,
13179 __k1.base(), __k2 - __k1);
13180 }
13181 # 1621 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
13182 private:
13183 template<class _Integer>
13184 basic_string&
13185 _M_replace_dispatch(iterator __i1, iterator __i2, _Integer __n,
13186 _Integer __val, __true_type)
13187 { return _M_replace_aux(__i1 - _M_ibegin(), __i2 - __i1, __n, __val); }
13188
13189 template<class _InputIterator>
13190 basic_string&
13191 _M_replace_dispatch(iterator __i1, iterator __i2, _InputIterator __k1,
13192 _InputIterator __k2, __false_type);
13193
13194 basic_string&
13195 _M_replace_aux(size_type __pos1, size_type __n1, size_type __n2,
13196 _CharT __c);
13197
13198 basic_string&
13199 _M_replace_safe(size_type __pos1, size_type __n1, const _CharT* __s,
13200 size_type __n2);
13201
13202
13203
13204 template<class _InIterator>
13205 static _CharT*
13206 _S_construct_aux(_InIterator __beg, _InIterator __end,
13207 const _Alloc& __a, __false_type)
13208 {
13209 typedef typename iterator_traits<_InIterator>::iterator_category _Tag;
13210 return _S_construct(__beg, __end, __a, _Tag());
13211 }
13212
13213
13214
13215 template<class _Integer>
13216 static _CharT*
13217 _S_construct_aux(_Integer __beg, _Integer __end,
13218 const _Alloc& __a, __true_type)
13219 { return _S_construct_aux_2(static_cast<size_type>(__beg),
13220 __end, __a); }
13221
13222 static _CharT*
13223 _S_construct_aux_2(size_type __req, _CharT __c, const _Alloc& __a)
13224 { return _S_construct(__req, __c, __a); }
13225
13226 template<class _InIterator>
13227 static _CharT*
13228 _S_construct(_InIterator __beg, _InIterator __end, const _Alloc& __a)
13229 {
13230 typedef typename std::__is_integer<_InIterator>::__type _Integral;
13231 return _S_construct_aux(__beg, __end, __a, _Integral());
13232 }
13233
13234
13235 template<class _InIterator>
13236 static _CharT*
13237 _S_construct(_InIterator __beg, _InIterator __end, const _Alloc& __a,
13238 input_iterator_tag);
13239
13240
13241
13242 template<class _FwdIterator>
13243 static _CharT*
13244 _S_construct(_FwdIterator __beg, _FwdIterator __end, const _Alloc& __a,
13245 forward_iterator_tag);
13246
13247 static _CharT*
13248 _S_construct(size_type __req, _CharT __c, const _Alloc& __a);
13249
13250 public:
13251 # 1702 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
13252 size_type
13253 copy(_CharT* __s, size_type __n, size_type __pos = 0) const;
13254 # 1712 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
13255 void
13256 swap(basic_string& __s);
13257 # 1722 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
13258 const _CharT*
13259 c_str() const
13260 { return _M_data(); }
13261
13262
13263
13264
13265
13266
13267
13268 const _CharT*
13269 data() const
13270 { return _M_data(); }
13271
13272
13273
13274
13275 allocator_type
13276 get_allocator() const
13277 { return _M_dataplus; }
13278 # 1754 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
13279 size_type
13280 find(const _CharT* __s, size_type __pos, size_type __n) const;
13281 # 1767 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
13282 size_type
13283 find(const basic_string& __str, size_type __pos = 0) const
13284 { return this->find(__str.data(), __pos, __str.size()); }
13285 # 1781 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
13286 size_type
13287 find(const _CharT* __s, size_type __pos = 0) const
13288 {
13289 ;
13290 return this->find(__s, __pos, traits_type::length(__s));
13291 }
13292 # 1798 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
13293 size_type
13294 find(_CharT __c, size_type __pos = 0) const;
13295 # 1811 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
13296 size_type
13297 rfind(const basic_string& __str, size_type __pos = npos) const
13298 { return this->rfind(__str.data(), __pos, __str.size()); }
13299 # 1826 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
13300 size_type
13301 rfind(const _CharT* __s, size_type __pos, size_type __n) const;
13302 # 1839 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
13303 size_type
13304 rfind(const _CharT* __s, size_type __pos = npos) const
13305 {
13306 ;
13307 return this->rfind(__s, __pos, traits_type::length(__s));
13308 }
13309 # 1856 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
13310 size_type
13311 rfind(_CharT __c, size_type __pos = npos) const;
13312 # 1869 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
13313 size_type
13314 find_first_of(const basic_string& __str, size_type __pos = 0) const
13315 { return this->find_first_of(__str.data(), __pos, __str.size()); }
13316 # 1884 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
13317 size_type
13318 find_first_of(const _CharT* __s, size_type __pos, size_type __n) const;
13319 # 1897 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
13320 size_type
13321 find_first_of(const _CharT* __s, size_type __pos = 0) const
13322 {
13323 ;
13324 return this->find_first_of(__s, __pos, traits_type::length(__s));
13325 }
13326 # 1916 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
13327 size_type
13328 find_first_of(_CharT __c, size_type __pos = 0) const
13329 { return this->find(__c, __pos); }
13330 # 1930 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
13331 size_type
13332 find_last_of(const basic_string& __str, size_type __pos = npos) const
13333 { return this->find_last_of(__str.data(), __pos, __str.size()); }
13334 # 1945 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
13335 size_type
13336 find_last_of(const _CharT* __s, size_type __pos, size_type __n) const;
13337 # 1958 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
13338 size_type
13339 find_last_of(const _CharT* __s, size_type __pos = npos) const
13340 {
13341 ;
13342 return this->find_last_of(__s, __pos, traits_type::length(__s));
13343 }
13344 # 1977 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
13345 size_type
13346 find_last_of(_CharT __c, size_type __pos = npos) const
13347 { return this->rfind(__c, __pos); }
13348 # 1991 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
13349 size_type
13350 find_first_not_of(const basic_string& __str, size_type __pos = 0) const
13351 { return this->find_first_not_of(__str.data(), __pos, __str.size()); }
13352 # 2006 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
13353 size_type
13354 find_first_not_of(const _CharT* __s, size_type __pos,
13355 size_type __n) const;
13356 # 2020 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
13357 size_type
13358 find_first_not_of(const _CharT* __s, size_type __pos = 0) const
13359 {
13360 ;
13361 return this->find_first_not_of(__s, __pos, traits_type::length(__s));
13362 }
13363 # 2037 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
13364 size_type
13365 find_first_not_of(_CharT __c, size_type __pos = 0) const;
13366 # 2050 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
13367 size_type
13368 find_last_not_of(const basic_string& __str, size_type __pos = npos) const
13369 { return this->find_last_not_of(__str.data(), __pos, __str.size()); }
13370 # 2066 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
13371 size_type
13372 find_last_not_of(const _CharT* __s, size_type __pos,
13373 size_type __n) const;
13374 # 2079 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
13375 size_type
13376 find_last_not_of(const _CharT* __s, size_type __pos = npos) const
13377 {
13378 ;
13379 return this->find_last_not_of(__s, __pos, traits_type::length(__s));
13380 }
13381 # 2096 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
13382 size_type
13383 find_last_not_of(_CharT __c, size_type __pos = npos) const;
13384 # 2111 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
13385 basic_string
13386 substr(size_type __pos = 0, size_type __n = npos) const
13387 { return basic_string(*this,
13388 _M_check(__pos, "basic_string::substr"), __n); }
13389 # 2129 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
13390 int
13391 compare(const basic_string& __str) const
13392 {
13393 const size_type __size = this->size();
13394 const size_type __osize = __str.size();
13395 const size_type __len = std::min(__size, __osize);
13396
13397 int __r = traits_type::compare(_M_data(), __str.data(), __len);
13398 if (!__r)
13399 __r = _S_compare(__size, __osize);
13400 return __r;
13401 }
13402 # 2159 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
13403 int
13404 compare(size_type __pos, size_type __n, const basic_string& __str) const;
13405 # 2183 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
13406 int
13407 compare(size_type __pos1, size_type __n1, const basic_string& __str,
13408 size_type __pos2, size_type __n2) const;
13409 # 2201 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
13410 int
13411 compare(const _CharT* __s) const;
13412 # 2224 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
13413 int
13414 compare(size_type __pos, size_type __n1, const _CharT* __s) const;
13415 # 2249 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
13416 int
13417 compare(size_type __pos, size_type __n1, const _CharT* __s,
13418 size_type __n2) const;
13419 };
13420 # 2261 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
13421 template<typename _CharT, typename _Traits, typename _Alloc>
13422 basic_string<_CharT, _Traits, _Alloc>
13423 operator+(const basic_string<_CharT, _Traits, _Alloc>& __lhs,
13424 const basic_string<_CharT, _Traits, _Alloc>& __rhs)
13425 {
13426 basic_string<_CharT, _Traits, _Alloc> __str(__lhs);
13427 __str.append(__rhs);
13428 return __str;
13429 }
13430
13431
13432
13433
13434
13435
13436
13437 template<typename _CharT, typename _Traits, typename _Alloc>
13438 basic_string<_CharT,_Traits,_Alloc>
13439 operator+(const _CharT* __lhs,
13440 const basic_string<_CharT,_Traits,_Alloc>& __rhs);
13441
13442
13443
13444
13445
13446
13447
13448 template<typename _CharT, typename _Traits, typename _Alloc>
13449 basic_string<_CharT,_Traits,_Alloc>
13450 operator+(_CharT __lhs, const basic_string<_CharT,_Traits,_Alloc>& __rhs);
13451
13452
13453
13454
13455
13456
13457
13458 template<typename _CharT, typename _Traits, typename _Alloc>
13459 inline basic_string<_CharT, _Traits, _Alloc>
13460 operator+(const basic_string<_CharT, _Traits, _Alloc>& __lhs,
13461 const _CharT* __rhs)
13462 {
13463 basic_string<_CharT, _Traits, _Alloc> __str(__lhs);
13464 __str.append(__rhs);
13465 return __str;
13466 }
13467
13468
13469
13470
13471
13472
13473
13474 template<typename _CharT, typename _Traits, typename _Alloc>
13475 inline basic_string<_CharT, _Traits, _Alloc>
13476 operator+(const basic_string<_CharT, _Traits, _Alloc>& __lhs, _CharT __rhs)
13477 {
13478 typedef basic_string<_CharT, _Traits, _Alloc> __string_type;
13479 typedef typename __string_type::size_type __size_type;
13480 __string_type __str(__lhs);
13481 __str.append(__size_type(1), __rhs);
13482 return __str;
13483 }
13484 # 2332 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
13485 template<typename _CharT, typename _Traits, typename _Alloc>
13486 inline bool
13487 operator==(const basic_string<_CharT, _Traits, _Alloc>& __lhs,
13488 const basic_string<_CharT, _Traits, _Alloc>& __rhs)
13489 { return __lhs.compare(__rhs) == 0; }
13490
13491 template<typename _CharT>
13492 inline
13493 typename __gnu_cxx::__enable_if<__is_char<_CharT>::__value, bool>::__type
13494 operator==(const basic_string<_CharT>& __lhs,
13495 const basic_string<_CharT>& __rhs)
13496 { return (__lhs.size() == __rhs.size()
13497 && !std::char_traits<_CharT>::compare(__lhs.data(), __rhs.data(),
13498 __lhs.size())); }
13499
13500
13501
13502
13503
13504
13505
13506 template<typename _CharT, typename _Traits, typename _Alloc>
13507 inline bool
13508 operator==(const _CharT* __lhs,
13509 const basic_string<_CharT, _Traits, _Alloc>& __rhs)
13510 { return __rhs.compare(__lhs) == 0; }
13511
13512
13513
13514
13515
13516
13517
13518 template<typename _CharT, typename _Traits, typename _Alloc>
13519 inline bool
13520 operator==(const basic_string<_CharT, _Traits, _Alloc>& __lhs,
13521 const _CharT* __rhs)
13522 { return __lhs.compare(__rhs) == 0; }
13523 # 2378 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
13524 template<typename _CharT, typename _Traits, typename _Alloc>
13525 inline bool
13526 operator!=(const basic_string<_CharT, _Traits, _Alloc>& __lhs,
13527 const basic_string<_CharT, _Traits, _Alloc>& __rhs)
13528 { return !(__lhs == __rhs); }
13529
13530
13531
13532
13533
13534
13535
13536 template<typename _CharT, typename _Traits, typename _Alloc>
13537 inline bool
13538 operator!=(const _CharT* __lhs,
13539 const basic_string<_CharT, _Traits, _Alloc>& __rhs)
13540 { return !(__lhs == __rhs); }
13541
13542
13543
13544
13545
13546
13547
13548 template<typename _CharT, typename _Traits, typename _Alloc>
13549 inline bool
13550 operator!=(const basic_string<_CharT, _Traits, _Alloc>& __lhs,
13551 const _CharT* __rhs)
13552 { return !(__lhs == __rhs); }
13553 # 2415 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
13554 template<typename _CharT, typename _Traits, typename _Alloc>
13555 inline bool
13556 operator<(const basic_string<_CharT, _Traits, _Alloc>& __lhs,
13557 const basic_string<_CharT, _Traits, _Alloc>& __rhs)
13558 { return __lhs.compare(__rhs) < 0; }
13559
13560
13561
13562
13563
13564
13565
13566 template<typename _CharT, typename _Traits, typename _Alloc>
13567 inline bool
13568 operator<(const basic_string<_CharT, _Traits, _Alloc>& __lhs,
13569 const _CharT* __rhs)
13570 { return __lhs.compare(__rhs) < 0; }
13571
13572
13573
13574
13575
13576
13577
13578 template<typename _CharT, typename _Traits, typename _Alloc>
13579 inline bool
13580 operator<(const _CharT* __lhs,
13581 const basic_string<_CharT, _Traits, _Alloc>& __rhs)
13582 { return __rhs.compare(__lhs) > 0; }
13583 # 2452 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
13584 template<typename _CharT, typename _Traits, typename _Alloc>
13585 inline bool
13586 operator>(const basic_string<_CharT, _Traits, _Alloc>& __lhs,
13587 const basic_string<_CharT, _Traits, _Alloc>& __rhs)
13588 { return __lhs.compare(__rhs) > 0; }
13589
13590
13591
13592
13593
13594
13595
13596 template<typename _CharT, typename _Traits, typename _Alloc>
13597 inline bool
13598 operator>(const basic_string<_CharT, _Traits, _Alloc>& __lhs,
13599 const _CharT* __rhs)
13600 { return __lhs.compare(__rhs) > 0; }
13601
13602
13603
13604
13605
13606
13607
13608 template<typename _CharT, typename _Traits, typename _Alloc>
13609 inline bool
13610 operator>(const _CharT* __lhs,
13611 const basic_string<_CharT, _Traits, _Alloc>& __rhs)
13612 { return __rhs.compare(__lhs) < 0; }
13613 # 2489 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
13614 template<typename _CharT, typename _Traits, typename _Alloc>
13615 inline bool
13616 operator<=(const basic_string<_CharT, _Traits, _Alloc>& __lhs,
13617 const basic_string<_CharT, _Traits, _Alloc>& __rhs)
13618 { return __lhs.compare(__rhs) <= 0; }
13619
13620
13621
13622
13623
13624
13625
13626 template<typename _CharT, typename _Traits, typename _Alloc>
13627 inline bool
13628 operator<=(const basic_string<_CharT, _Traits, _Alloc>& __lhs,
13629 const _CharT* __rhs)
13630 { return __lhs.compare(__rhs) <= 0; }
13631
13632
13633
13634
13635
13636
13637
13638 template<typename _CharT, typename _Traits, typename _Alloc>
13639 inline bool
13640 operator<=(const _CharT* __lhs,
13641 const basic_string<_CharT, _Traits, _Alloc>& __rhs)
13642 { return __rhs.compare(__lhs) >= 0; }
13643 # 2526 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
13644 template<typename _CharT, typename _Traits, typename _Alloc>
13645 inline bool
13646 operator>=(const basic_string<_CharT, _Traits, _Alloc>& __lhs,
13647 const basic_string<_CharT, _Traits, _Alloc>& __rhs)
13648 { return __lhs.compare(__rhs) >= 0; }
13649
13650
13651
13652
13653
13654
13655
13656 template<typename _CharT, typename _Traits, typename _Alloc>
13657 inline bool
13658 operator>=(const basic_string<_CharT, _Traits, _Alloc>& __lhs,
13659 const _CharT* __rhs)
13660 { return __lhs.compare(__rhs) >= 0; }
13661
13662
13663
13664
13665
13666
13667
13668 template<typename _CharT, typename _Traits, typename _Alloc>
13669 inline bool
13670 operator>=(const _CharT* __lhs,
13671 const basic_string<_CharT, _Traits, _Alloc>& __rhs)
13672 { return __rhs.compare(__lhs) <= 0; }
13673 # 2563 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
13674 template<typename _CharT, typename _Traits, typename _Alloc>
13675 inline void
13676 swap(basic_string<_CharT, _Traits, _Alloc>& __lhs,
13677 basic_string<_CharT, _Traits, _Alloc>& __rhs)
13678 { __lhs.swap(__rhs); }
13679 # 2580 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
13680 template<typename _CharT, typename _Traits, typename _Alloc>
13681 basic_istream<_CharT, _Traits>&
13682 operator>>(basic_istream<_CharT, _Traits>& __is,
13683 basic_string<_CharT, _Traits, _Alloc>& __str);
13684
13685 template<>
13686 basic_istream<char>&
13687 operator>>(basic_istream<char>& __is, basic_string<char>& __str);
13688 # 2598 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
13689 template<typename _CharT, typename _Traits, typename _Alloc>
13690 inline basic_ostream<_CharT, _Traits>&
13691 operator<<(basic_ostream<_CharT, _Traits>& __os,
13692 const basic_string<_CharT, _Traits, _Alloc>& __str)
13693 {
13694
13695
13696 return __ostream_insert(__os, __str.data(), __str.size());
13697 }
13698 # 2621 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
13699 template<typename _CharT, typename _Traits, typename _Alloc>
13700 basic_istream<_CharT, _Traits>&
13701 getline(basic_istream<_CharT, _Traits>& __is,
13702 basic_string<_CharT, _Traits, _Alloc>& __str, _CharT __delim);
13703 # 2639 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.h" 3
13704 template<typename _CharT, typename _Traits, typename _Alloc>
13705 inline basic_istream<_CharT, _Traits>&
13706 getline(basic_istream<_CharT, _Traits>& __is,
13707 basic_string<_CharT, _Traits, _Alloc>& __str)
13708 { return getline(__is, __str, __is.widen('\n')); }
13709
13710 template<>
13711 basic_istream<char>&
13712 getline(basic_istream<char>& __in, basic_string<char>& __str,
13713 char __delim);
13714
13715
13716 template<>
13717 basic_istream<wchar_t>&
13718 getline(basic_istream<wchar_t>& __in, basic_string<wchar_t>& __str,
13719 wchar_t __delim);
13720
13721
13722 }
13723 # 54 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/string" 2 3
13724
13725
13726 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.tcc" 1 3
13727 # 40 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.tcc" 3
13728 #define _BASIC_STRING_TCC 1
13729
13730
13731 # 43 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.tcc" 3
13732
13733
13734
13735 namespace std __attribute__ ((__visibility__ ("default"))) {
13736
13737 template<typename _CharT, typename _Traits, typename _Alloc>
13738 const typename basic_string<_CharT, _Traits, _Alloc>::size_type
13739 basic_string<_CharT, _Traits, _Alloc>::
13740 _Rep::_S_max_size = (((npos - sizeof(_Rep_base))/sizeof(_CharT)) - 1) / 4;
13741
13742 template<typename _CharT, typename _Traits, typename _Alloc>
13743 const _CharT
13744 basic_string<_CharT, _Traits, _Alloc>::
13745 _Rep::_S_terminal = _CharT();
13746
13747 template<typename _CharT, typename _Traits, typename _Alloc>
13748 const typename basic_string<_CharT, _Traits, _Alloc>::size_type
13749 basic_string<_CharT, _Traits, _Alloc>::npos;
13750
13751
13752
13753 template<typename _CharT, typename _Traits, typename _Alloc>
13754 typename basic_string<_CharT, _Traits, _Alloc>::size_type
13755 basic_string<_CharT, _Traits, _Alloc>::_Rep::_S_empty_rep_storage[
13756 (sizeof(_Rep_base) + sizeof(_CharT) + sizeof(size_type) - 1) /
13757 sizeof(size_type)];
13758
13759
13760
13761
13762
13763 template<typename _CharT, typename _Traits, typename _Alloc>
13764 template<typename _InIterator>
13765 _CharT*
13766 basic_string<_CharT, _Traits, _Alloc>::
13767 _S_construct(_InIterator __beg, _InIterator __end, const _Alloc& __a,
13768 input_iterator_tag)
13769 {
13770
13771 if (__beg == __end && __a == _Alloc())
13772 return _S_empty_rep()._M_refdata();
13773
13774
13775 _CharT __buf[128];
13776 size_type __len = 0;
13777 while (__beg != __end && __len < sizeof(__buf) / sizeof(_CharT))
13778 {
13779 __buf[__len++] = *__beg;
13780 ++__beg;
13781 }
13782 _Rep* __r = _Rep::_S_create(__len, size_type(0), __a);
13783 _M_copy(__r->_M_refdata(), __buf, __len);
13784 try
13785 {
13786 while (__beg != __end)
13787 {
13788 if (__len == __r->_M_capacity)
13789 {
13790
13791 _Rep* __another = _Rep::_S_create(__len + 1, __len, __a);
13792 _M_copy(__another->_M_refdata(), __r->_M_refdata(), __len);
13793 __r->_M_destroy(__a);
13794 __r = __another;
13795 }
13796 __r->_M_refdata()[__len++] = *__beg;
13797 ++__beg;
13798 }
13799 }
13800 catch(...)
13801 {
13802 __r->_M_destroy(__a);
13803 throw;
13804 }
13805 __r->_M_set_length_and_sharable(__len);
13806 return __r->_M_refdata();
13807 }
13808
13809 template<typename _CharT, typename _Traits, typename _Alloc>
13810 template <typename _InIterator>
13811 _CharT*
13812 basic_string<_CharT, _Traits, _Alloc>::
13813 _S_construct(_InIterator __beg, _InIterator __end, const _Alloc& __a,
13814 forward_iterator_tag)
13815 {
13816
13817 if (__beg == __end && __a == _Alloc())
13818 return _S_empty_rep()._M_refdata();
13819
13820
13821 if (__gnu_cxx::__is_null_pointer(__beg) && __beg != __end)
13822 __throw_logic_error(("basic_string::_S_construct NULL not valid"));
13823
13824 const size_type __dnew = static_cast<size_type>(std::distance(__beg,
13825 __end));
13826
13827 _Rep* __r = _Rep::_S_create(__dnew, size_type(0), __a);
13828 try
13829 { _S_copy_chars(__r->_M_refdata(), __beg, __end); }
13830 catch(...)
13831 {
13832 __r->_M_destroy(__a);
13833 throw;
13834 }
13835 __r->_M_set_length_and_sharable(__dnew);
13836 return __r->_M_refdata();
13837 }
13838
13839 template<typename _CharT, typename _Traits, typename _Alloc>
13840 _CharT*
13841 basic_string<_CharT, _Traits, _Alloc>::
13842 _S_construct(size_type __n, _CharT __c, const _Alloc& __a)
13843 {
13844
13845 if (__n == 0 && __a == _Alloc())
13846 return _S_empty_rep()._M_refdata();
13847
13848
13849 _Rep* __r = _Rep::_S_create(__n, size_type(0), __a);
13850 if (__n)
13851 _M_assign(__r->_M_refdata(), __n, __c);
13852
13853 __r->_M_set_length_and_sharable(__n);
13854 return __r->_M_refdata();
13855 }
13856
13857 template<typename _CharT, typename _Traits, typename _Alloc>
13858 basic_string<_CharT, _Traits, _Alloc>::
13859 basic_string(const basic_string& __str)
13860 : _M_dataplus(__str._M_rep()->_M_grab(_Alloc(__str.get_allocator()),
13861 __str.get_allocator()),
13862 __str.get_allocator())
13863 { }
13864
13865 template<typename _CharT, typename _Traits, typename _Alloc>
13866 basic_string<_CharT, _Traits, _Alloc>::
13867 basic_string(const _Alloc& __a)
13868 : _M_dataplus(_S_construct(size_type(), _CharT(), __a), __a)
13869 { }
13870
13871 template<typename _CharT, typename _Traits, typename _Alloc>
13872 basic_string<_CharT, _Traits, _Alloc>::
13873 basic_string(const basic_string& __str, size_type __pos, size_type __n)
13874 : _M_dataplus(_S_construct(__str._M_data()
13875 + __str._M_check(__pos,
13876 "basic_string::basic_string"),
13877 __str._M_data() + __str._M_limit(__pos, __n)
13878 + __pos, _Alloc()), _Alloc())
13879 { }
13880
13881 template<typename _CharT, typename _Traits, typename _Alloc>
13882 basic_string<_CharT, _Traits, _Alloc>::
13883 basic_string(const basic_string& __str, size_type __pos,
13884 size_type __n, const _Alloc& __a)
13885 : _M_dataplus(_S_construct(__str._M_data()
13886 + __str._M_check(__pos,
13887 "basic_string::basic_string"),
13888 __str._M_data() + __str._M_limit(__pos, __n)
13889 + __pos, __a), __a)
13890 { }
13891
13892
13893 template<typename _CharT, typename _Traits, typename _Alloc>
13894 basic_string<_CharT, _Traits, _Alloc>::
13895 basic_string(const _CharT* __s, size_type __n, const _Alloc& __a)
13896 : _M_dataplus(_S_construct(__s, __s + __n, __a), __a)
13897 { }
13898
13899
13900 template<typename _CharT, typename _Traits, typename _Alloc>
13901 basic_string<_CharT, _Traits, _Alloc>::
13902 basic_string(const _CharT* __s, const _Alloc& __a)
13903 : _M_dataplus(_S_construct(__s, __s ? __s + traits_type::length(__s) :
13904 __s + npos, __a), __a)
13905 { }
13906
13907 template<typename _CharT, typename _Traits, typename _Alloc>
13908 basic_string<_CharT, _Traits, _Alloc>::
13909 basic_string(size_type __n, _CharT __c, const _Alloc& __a)
13910 : _M_dataplus(_S_construct(__n, __c, __a), __a)
13911 { }
13912
13913
13914 template<typename _CharT, typename _Traits, typename _Alloc>
13915 template<typename _InputIterator>
13916 basic_string<_CharT, _Traits, _Alloc>::
13917 basic_string(_InputIterator __beg, _InputIterator __end, const _Alloc& __a)
13918 : _M_dataplus(_S_construct(__beg, __end, __a), __a)
13919 { }
13920 # 240 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.tcc" 3
13921 template<typename _CharT, typename _Traits, typename _Alloc>
13922 basic_string<_CharT, _Traits, _Alloc>&
13923 basic_string<_CharT, _Traits, _Alloc>::
13924 assign(const basic_string& __str)
13925 {
13926 if (_M_rep() != __str._M_rep())
13927 {
13928
13929 const allocator_type __a = this->get_allocator();
13930 _CharT* __tmp = __str._M_rep()->_M_grab(__a, __str.get_allocator());
13931 _M_rep()->_M_dispose(__a);
13932 _M_data(__tmp);
13933 }
13934 return *this;
13935 }
13936
13937 template<typename _CharT, typename _Traits, typename _Alloc>
13938 basic_string<_CharT, _Traits, _Alloc>&
13939 basic_string<_CharT, _Traits, _Alloc>::
13940 assign(const _CharT* __s, size_type __n)
13941 {
13942 ;
13943 _M_check_length(this->size(), __n, "basic_string::assign");
13944 if (_M_disjunct(__s) || _M_rep()->_M_is_shared())
13945 return _M_replace_safe(size_type(0), this->size(), __s, __n);
13946 else
13947 {
13948
13949 const size_type __pos = __s - _M_data();
13950 if (__pos >= __n)
13951 _M_copy(_M_data(), __s, __n);
13952 else if (__pos)
13953 _M_move(_M_data(), __s, __n);
13954 _M_rep()->_M_set_length_and_sharable(__n);
13955 return *this;
13956 }
13957 }
13958
13959 template<typename _CharT, typename _Traits, typename _Alloc>
13960 basic_string<_CharT, _Traits, _Alloc>&
13961 basic_string<_CharT, _Traits, _Alloc>::
13962 append(size_type __n, _CharT __c)
13963 {
13964 if (__n)
13965 {
13966 _M_check_length(size_type(0), __n, "basic_string::append");
13967 const size_type __len = __n + this->size();
13968 if (__len > this->capacity() || _M_rep()->_M_is_shared())
13969 this->reserve(__len);
13970 _M_assign(_M_data() + this->size(), __n, __c);
13971 _M_rep()->_M_set_length_and_sharable(__len);
13972 }
13973 return *this;
13974 }
13975
13976 template<typename _CharT, typename _Traits, typename _Alloc>
13977 basic_string<_CharT, _Traits, _Alloc>&
13978 basic_string<_CharT, _Traits, _Alloc>::
13979 append(const _CharT* __s, size_type __n)
13980 {
13981 ;
13982 if (__n)
13983 {
13984 _M_check_length(size_type(0), __n, "basic_string::append");
13985 const size_type __len = __n + this->size();
13986 if (__len > this->capacity() || _M_rep()->_M_is_shared())
13987 {
13988 if (_M_disjunct(__s))
13989 this->reserve(__len);
13990 else
13991 {
13992 const size_type __off = __s - _M_data();
13993 this->reserve(__len);
13994 __s = _M_data() + __off;
13995 }
13996 }
13997 _M_copy(_M_data() + this->size(), __s, __n);
13998 _M_rep()->_M_set_length_and_sharable(__len);
13999 }
14000 return *this;
14001 }
14002
14003 template<typename _CharT, typename _Traits, typename _Alloc>
14004 basic_string<_CharT, _Traits, _Alloc>&
14005 basic_string<_CharT, _Traits, _Alloc>::
14006 append(const basic_string& __str)
14007 {
14008 const size_type __size = __str.size();
14009 if (__size)
14010 {
14011 const size_type __len = __size + this->size();
14012 if (__len > this->capacity() || _M_rep()->_M_is_shared())
14013 this->reserve(__len);
14014 _M_copy(_M_data() + this->size(), __str._M_data(), __size);
14015 _M_rep()->_M_set_length_and_sharable(__len);
14016 }
14017 return *this;
14018 }
14019
14020 template<typename _CharT, typename _Traits, typename _Alloc>
14021 basic_string<_CharT, _Traits, _Alloc>&
14022 basic_string<_CharT, _Traits, _Alloc>::
14023 append(const basic_string& __str, size_type __pos, size_type __n)
14024 {
14025 __str._M_check(__pos, "basic_string::append");
14026 __n = __str._M_limit(__pos, __n);
14027 if (__n)
14028 {
14029 const size_type __len = __n + this->size();
14030 if (__len > this->capacity() || _M_rep()->_M_is_shared())
14031 this->reserve(__len);
14032 _M_copy(_M_data() + this->size(), __str._M_data() + __pos, __n);
14033 _M_rep()->_M_set_length_and_sharable(__len);
14034 }
14035 return *this;
14036 }
14037
14038 template<typename _CharT, typename _Traits, typename _Alloc>
14039 basic_string<_CharT, _Traits, _Alloc>&
14040 basic_string<_CharT, _Traits, _Alloc>::
14041 insert(size_type __pos, const _CharT* __s, size_type __n)
14042 {
14043 ;
14044 _M_check(__pos, "basic_string::insert");
14045 _M_check_length(size_type(0), __n, "basic_string::insert");
14046 if (_M_disjunct(__s) || _M_rep()->_M_is_shared())
14047 return _M_replace_safe(__pos, size_type(0), __s, __n);
14048 else
14049 {
14050
14051 const size_type __off = __s - _M_data();
14052 _M_mutate(__pos, 0, __n);
14053 __s = _M_data() + __off;
14054 _CharT* __p = _M_data() + __pos;
14055 if (__s + __n <= __p)
14056 _M_copy(__p, __s, __n);
14057 else if (__s >= __p)
14058 _M_copy(__p, __s + __n, __n);
14059 else
14060 {
14061 const size_type __nleft = __p - __s;
14062 _M_copy(__p, __s, __nleft);
14063 _M_copy(__p + __nleft, __p + __n, __n - __nleft);
14064 }
14065 return *this;
14066 }
14067 }
14068
14069 template<typename _CharT, typename _Traits, typename _Alloc>
14070 typename basic_string<_CharT, _Traits, _Alloc>::iterator
14071 basic_string<_CharT, _Traits, _Alloc>::
14072 erase(iterator __first, iterator __last)
14073 {
14074
14075 ;
14076
14077
14078
14079
14080 const size_type __size = __last - __first;
14081 if (__size)
14082 {
14083 const size_type __pos = __first - _M_ibegin();
14084 _M_mutate(__pos, __size, size_type(0));
14085 _M_rep()->_M_set_leaked();
14086 return iterator(_M_data() + __pos);
14087 }
14088 else
14089 return __first;
14090 }
14091
14092 template<typename _CharT, typename _Traits, typename _Alloc>
14093 basic_string<_CharT, _Traits, _Alloc>&
14094 basic_string<_CharT, _Traits, _Alloc>::
14095 replace(size_type __pos, size_type __n1, const _CharT* __s,
14096 size_type __n2)
14097 {
14098 ;
14099 _M_check(__pos, "basic_string::replace");
14100 __n1 = _M_limit(__pos, __n1);
14101 _M_check_length(__n1, __n2, "basic_string::replace");
14102 bool __left;
14103 if (_M_disjunct(__s) || _M_rep()->_M_is_shared())
14104 return _M_replace_safe(__pos, __n1, __s, __n2);
14105 else if ((__left = __s + __n2 <= _M_data() + __pos)
14106 || _M_data() + __pos + __n1 <= __s)
14107 {
14108
14109 size_type __off = __s - _M_data();
14110 __left ? __off : (__off += __n2 - __n1);
14111 _M_mutate(__pos, __n1, __n2);
14112 _M_copy(_M_data() + __pos, _M_data() + __off, __n2);
14113 return *this;
14114 }
14115 else
14116 {
14117
14118 const basic_string __tmp(__s, __n2);
14119 return _M_replace_safe(__pos, __n1, __tmp._M_data(), __n2);
14120 }
14121 }
14122
14123 template<typename _CharT, typename _Traits, typename _Alloc>
14124 void
14125 basic_string<_CharT, _Traits, _Alloc>::_Rep::
14126 _M_destroy(const _Alloc& __a) throw ()
14127 {
14128 const size_type __size = sizeof(_Rep_base) +
14129 (this->_M_capacity + 1) * sizeof(_CharT);
14130 _Raw_bytes_alloc(__a).deallocate(reinterpret_cast<char*>(this), __size);
14131 }
14132
14133 template<typename _CharT, typename _Traits, typename _Alloc>
14134 void
14135 basic_string<_CharT, _Traits, _Alloc>::
14136 _M_leak_hard()
14137 {
14138
14139 if (_M_rep() == &_S_empty_rep())
14140 return;
14141
14142 if (_M_rep()->_M_is_shared())
14143 _M_mutate(0, 0, 0);
14144 _M_rep()->_M_set_leaked();
14145 }
14146
14147 template<typename _CharT, typename _Traits, typename _Alloc>
14148 void
14149 basic_string<_CharT, _Traits, _Alloc>::
14150 _M_mutate(size_type __pos, size_type __len1, size_type __len2)
14151 {
14152 const size_type __old_size = this->size();
14153 const size_type __new_size = __old_size + __len2 - __len1;
14154 const size_type __how_much = __old_size - __pos - __len1;
14155
14156 if (__new_size > this->capacity() || _M_rep()->_M_is_shared())
14157 {
14158
14159 const allocator_type __a = get_allocator();
14160 _Rep* __r = _Rep::_S_create(__new_size, this->capacity(), __a);
14161
14162 if (__pos)
14163 _M_copy(__r->_M_refdata(), _M_data(), __pos);
14164 if (__how_much)
14165 _M_copy(__r->_M_refdata() + __pos + __len2,
14166 _M_data() + __pos + __len1, __how_much);
14167
14168 _M_rep()->_M_dispose(__a);
14169 _M_data(__r->_M_refdata());
14170 }
14171 else if (__how_much && __len1 != __len2)
14172 {
14173
14174 _M_move(_M_data() + __pos + __len2,
14175 _M_data() + __pos + __len1, __how_much);
14176 }
14177 _M_rep()->_M_set_length_and_sharable(__new_size);
14178 }
14179
14180 template<typename _CharT, typename _Traits, typename _Alloc>
14181 void
14182 basic_string<_CharT, _Traits, _Alloc>::
14183 reserve(size_type __res)
14184 {
14185 if (__res != this->capacity() || _M_rep()->_M_is_shared())
14186 {
14187
14188 if (__res < this->size())
14189 __res = this->size();
14190 const allocator_type __a = get_allocator();
14191 _CharT* __tmp = _M_rep()->_M_clone(__a, __res - this->size());
14192 _M_rep()->_M_dispose(__a);
14193 _M_data(__tmp);
14194 }
14195 }
14196
14197 template<typename _CharT, typename _Traits, typename _Alloc>
14198 void
14199 basic_string<_CharT, _Traits, _Alloc>::
14200 swap(basic_string& __s)
14201 {
14202 if (_M_rep()->_M_is_leaked())
14203 _M_rep()->_M_set_sharable();
14204 if (__s._M_rep()->_M_is_leaked())
14205 __s._M_rep()->_M_set_sharable();
14206 if (this->get_allocator() == __s.get_allocator())
14207 {
14208 _CharT* __tmp = _M_data();
14209 _M_data(__s._M_data());
14210 __s._M_data(__tmp);
14211 }
14212
14213 else
14214 {
14215 const basic_string __tmp1(_M_ibegin(), _M_iend(),
14216 __s.get_allocator());
14217 const basic_string __tmp2(__s._M_ibegin(), __s._M_iend(),
14218 this->get_allocator());
14219 *this = __tmp2;
14220 __s = __tmp1;
14221 }
14222 }
14223
14224 template<typename _CharT, typename _Traits, typename _Alloc>
14225 typename basic_string<_CharT, _Traits, _Alloc>::_Rep*
14226 basic_string<_CharT, _Traits, _Alloc>::_Rep::
14227 _S_create(size_type __capacity, size_type __old_capacity,
14228 const _Alloc& __alloc)
14229 {
14230
14231
14232 if (__capacity > _S_max_size)
14233 __throw_length_error(("basic_string::_S_create"));
14234 # 577 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_string.tcc" 3
14235 const size_type __pagesize = 4096;
14236 const size_type __malloc_header_size = 4 * sizeof(void*);
14237
14238
14239
14240
14241
14242
14243
14244 if (__capacity > __old_capacity && __capacity < 2 * __old_capacity)
14245 __capacity = 2 * __old_capacity;
14246
14247
14248
14249
14250 size_type __size = (__capacity + 1) * sizeof(_CharT) + sizeof(_Rep);
14251
14252 const size_type __adj_size = __size + __malloc_header_size;
14253 if (__adj_size > __pagesize && __capacity > __old_capacity)
14254 {
14255 const size_type __extra = __pagesize - __adj_size % __pagesize;
14256 __capacity += __extra / sizeof(_CharT);
14257
14258 if (__capacity > _S_max_size)
14259 __capacity = _S_max_size;
14260 __size = (__capacity + 1) * sizeof(_CharT) + sizeof(_Rep);
14261 }
14262
14263
14264
14265 void* __place = _Raw_bytes_alloc(__alloc).allocate(__size);
14266 _Rep *__p = new (__place) _Rep;
14267 __p->_M_capacity = __capacity;
14268
14269
14270
14271
14272
14273
14274
14275 __p->_M_set_sharable();
14276 return __p;
14277 }
14278
14279 template<typename _CharT, typename _Traits, typename _Alloc>
14280 _CharT*
14281 basic_string<_CharT, _Traits, _Alloc>::_Rep::
14282 _M_clone(const _Alloc& __alloc, size_type __res)
14283 {
14284
14285 const size_type __requested_cap = this->_M_length + __res;
14286 _Rep* __r = _Rep::_S_create(__requested_cap, this->_M_capacity,
14287 __alloc);
14288 if (this->_M_length)
14289 _M_copy(__r->_M_refdata(), _M_refdata(), this->_M_length);
14290
14291 __r->_M_set_length_and_sharable(this->_M_length);
14292 return __r->_M_refdata();
14293 }
14294
14295 template<typename _CharT, typename _Traits, typename _Alloc>
14296 void
14297 basic_string<_CharT, _Traits, _Alloc>::
14298 resize(size_type __n, _CharT __c)
14299 {
14300 const size_type __size = this->size();
14301 _M_check_length(__size, __n, "basic_string::resize");
14302 if (__size < __n)
14303 this->append(__n - __size, __c);
14304 else if (__n < __size)
14305 this->erase(__n);
14306
14307 }
14308
14309 template<typename _CharT, typename _Traits, typename _Alloc>
14310 template<typename _InputIterator>
14311 basic_string<_CharT, _Traits, _Alloc>&
14312 basic_string<_CharT, _Traits, _Alloc>::
14313 _M_replace_dispatch(iterator __i1, iterator __i2, _InputIterator __k1,
14314 _InputIterator __k2, __false_type)
14315 {
14316 const basic_string __s(__k1, __k2);
14317 const size_type __n1 = __i2 - __i1;
14318 _M_check_length(__n1, __s.size(), "basic_string::_M_replace_dispatch");
14319 return _M_replace_safe(__i1 - _M_ibegin(), __n1, __s._M_data(),
14320 __s.size());
14321 }
14322
14323 template<typename _CharT, typename _Traits, typename _Alloc>
14324 basic_string<_CharT, _Traits, _Alloc>&
14325 basic_string<_CharT, _Traits, _Alloc>::
14326 _M_replace_aux(size_type __pos1, size_type __n1, size_type __n2,
14327 _CharT __c)
14328 {
14329 _M_check_length(__n1, __n2, "basic_string::_M_replace_aux");
14330 _M_mutate(__pos1, __n1, __n2);
14331 if (__n2)
14332 _M_assign(_M_data() + __pos1, __n2, __c);
14333 return *this;
14334 }
14335
14336 template<typename _CharT, typename _Traits, typename _Alloc>
14337 basic_string<_CharT, _Traits, _Alloc>&
14338 basic_string<_CharT, _Traits, _Alloc>::
14339 _M_replace_safe(size_type __pos1, size_type __n1, const _CharT* __s,
14340 size_type __n2)
14341 {
14342 _M_mutate(__pos1, __n1, __n2);
14343 if (__n2)
14344 _M_copy(_M_data() + __pos1, __s, __n2);
14345 return *this;
14346 }
14347
14348 template<typename _CharT, typename _Traits, typename _Alloc>
14349 basic_string<_CharT, _Traits, _Alloc>
14350 operator+(const _CharT* __lhs,
14351 const basic_string<_CharT, _Traits, _Alloc>& __rhs)
14352 {
14353 ;
14354 typedef basic_string<_CharT, _Traits, _Alloc> __string_type;
14355 typedef typename __string_type::size_type __size_type;
14356 const __size_type __len = _Traits::length(__lhs);
14357 __string_type __str;
14358 __str.reserve(__len + __rhs.size());
14359 __str.append(__lhs, __len);
14360 __str.append(__rhs);
14361 return __str;
14362 }
14363
14364 template<typename _CharT, typename _Traits, typename _Alloc>
14365 basic_string<_CharT, _Traits, _Alloc>
14366 operator+(_CharT __lhs, const basic_string<_CharT, _Traits, _Alloc>& __rhs)
14367 {
14368 typedef basic_string<_CharT, _Traits, _Alloc> __string_type;
14369 typedef typename __string_type::size_type __size_type;
14370 __string_type __str;
14371 const __size_type __len = __rhs.size();
14372 __str.reserve(__len + 1);
14373 __str.append(__size_type(1), __lhs);
14374 __str.append(__rhs);
14375 return __str;
14376 }
14377
14378 template<typename _CharT, typename _Traits, typename _Alloc>
14379 typename basic_string<_CharT, _Traits, _Alloc>::size_type
14380 basic_string<_CharT, _Traits, _Alloc>::
14381 copy(_CharT* __s, size_type __n, size_type __pos) const
14382 {
14383 _M_check(__pos, "basic_string::copy");
14384 __n = _M_limit(__pos, __n);
14385 ;
14386 if (__n)
14387 _M_copy(__s, _M_data() + __pos, __n);
14388
14389 return __n;
14390 }
14391
14392 template<typename _CharT, typename _Traits, typename _Alloc>
14393 typename basic_string<_CharT, _Traits, _Alloc>::size_type
14394 basic_string<_CharT, _Traits, _Alloc>::
14395 find(const _CharT* __s, size_type __pos, size_type __n) const
14396 {
14397 ;
14398 const size_type __size = this->size();
14399 const _CharT* __data = _M_data();
14400
14401 if (__n == 0)
14402 return __pos <= __size ? __pos : npos;
14403
14404 if (__n <= __size)
14405 {
14406 for (; __pos <= __size - __n; ++__pos)
14407 if (traits_type::eq(__data[__pos], __s[0])
14408 && traits_type::compare(__data + __pos + 1,
14409 __s + 1, __n - 1) == 0)
14410 return __pos;
14411 }
14412 return npos;
14413 }
14414
14415 template<typename _CharT, typename _Traits, typename _Alloc>
14416 typename basic_string<_CharT, _Traits, _Alloc>::size_type
14417 basic_string<_CharT, _Traits, _Alloc>::
14418 find(_CharT __c, size_type __pos) const
14419 {
14420 size_type __ret = npos;
14421 const size_type __size = this->size();
14422 if (__pos < __size)
14423 {
14424 const _CharT* __data = _M_data();
14425 const size_type __n = __size - __pos;
14426 const _CharT* __p = traits_type::find(__data + __pos, __n, __c);
14427 if (__p)
14428 __ret = __p - __data;
14429 }
14430 return __ret;
14431 }
14432
14433 template<typename _CharT, typename _Traits, typename _Alloc>
14434 typename basic_string<_CharT, _Traits, _Alloc>::size_type
14435 basic_string<_CharT, _Traits, _Alloc>::
14436 rfind(const _CharT* __s, size_type __pos, size_type __n) const
14437 {
14438 ;
14439 const size_type __size = this->size();
14440 if (__n <= __size)
14441 {
14442 __pos = std::min(size_type(__size - __n), __pos);
14443 const _CharT* __data = _M_data();
14444 do
14445 {
14446 if (traits_type::compare(__data + __pos, __s, __n) == 0)
14447 return __pos;
14448 }
14449 while (__pos-- > 0);
14450 }
14451 return npos;
14452 }
14453
14454 template<typename _CharT, typename _Traits, typename _Alloc>
14455 typename basic_string<_CharT, _Traits, _Alloc>::size_type
14456 basic_string<_CharT, _Traits, _Alloc>::
14457 rfind(_CharT __c, size_type __pos) const
14458 {
14459 size_type __size = this->size();
14460 if (__size)
14461 {
14462 if (--__size > __pos)
14463 __size = __pos;
14464 for (++__size; __size-- > 0; )
14465 if (traits_type::eq(_M_data()[__size], __c))
14466 return __size;
14467 }
14468 return npos;
14469 }
14470
14471 template<typename _CharT, typename _Traits, typename _Alloc>
14472 typename basic_string<_CharT, _Traits, _Alloc>::size_type
14473 basic_string<_CharT, _Traits, _Alloc>::
14474 find_first_of(const _CharT* __s, size_type __pos, size_type __n) const
14475 {
14476 ;
14477 for (; __n && __pos < this->size(); ++__pos)
14478 {
14479 const _CharT* __p = traits_type::find(__s, __n, _M_data()[__pos]);
14480 if (__p)
14481 return __pos;
14482 }
14483 return npos;
14484 }
14485
14486 template<typename _CharT, typename _Traits, typename _Alloc>
14487 typename basic_string<_CharT, _Traits, _Alloc>::size_type
14488 basic_string<_CharT, _Traits, _Alloc>::
14489 find_last_of(const _CharT* __s, size_type __pos, size_type __n) const
14490 {
14491 ;
14492 size_type __size = this->size();
14493 if (__size && __n)
14494 {
14495 if (--__size > __pos)
14496 __size = __pos;
14497 do
14498 {
14499 if (traits_type::find(__s, __n, _M_data()[__size]))
14500 return __size;
14501 }
14502 while (__size-- != 0);
14503 }
14504 return npos;
14505 }
14506
14507 template<typename _CharT, typename _Traits, typename _Alloc>
14508 typename basic_string<_CharT, _Traits, _Alloc>::size_type
14509 basic_string<_CharT, _Traits, _Alloc>::
14510 find_first_not_of(const _CharT* __s, size_type __pos, size_type __n) const
14511 {
14512 ;
14513 for (; __pos < this->size(); ++__pos)
14514 if (!traits_type::find(__s, __n, _M_data()[__pos]))
14515 return __pos;
14516 return npos;
14517 }
14518
14519 template<typename _CharT, typename _Traits, typename _Alloc>
14520 typename basic_string<_CharT, _Traits, _Alloc>::size_type
14521 basic_string<_CharT, _Traits, _Alloc>::
14522 find_first_not_of(_CharT __c, size_type __pos) const
14523 {
14524 for (; __pos < this->size(); ++__pos)
14525 if (!traits_type::eq(_M_data()[__pos], __c))
14526 return __pos;
14527 return npos;
14528 }
14529
14530 template<typename _CharT, typename _Traits, typename _Alloc>
14531 typename basic_string<_CharT, _Traits, _Alloc>::size_type
14532 basic_string<_CharT, _Traits, _Alloc>::
14533 find_last_not_of(const _CharT* __s, size_type __pos, size_type __n) const
14534 {
14535 ;
14536 size_type __size = this->size();
14537 if (__size)
14538 {
14539 if (--__size > __pos)
14540 __size = __pos;
14541 do
14542 {
14543 if (!traits_type::find(__s, __n, _M_data()[__size]))
14544 return __size;
14545 }
14546 while (__size--);
14547 }
14548 return npos;
14549 }
14550
14551 template<typename _CharT, typename _Traits, typename _Alloc>
14552 typename basic_string<_CharT, _Traits, _Alloc>::size_type
14553 basic_string<_CharT, _Traits, _Alloc>::
14554 find_last_not_of(_CharT __c, size_type __pos) const
14555 {
14556 size_type __size = this->size();
14557 if (__size)
14558 {
14559 if (--__size > __pos)
14560 __size = __pos;
14561 do
14562 {
14563 if (!traits_type::eq(_M_data()[__size], __c))
14564 return __size;
14565 }
14566 while (__size--);
14567 }
14568 return npos;
14569 }
14570
14571 template<typename _CharT, typename _Traits, typename _Alloc>
14572 int
14573 basic_string<_CharT, _Traits, _Alloc>::
14574 compare(size_type __pos, size_type __n, const basic_string& __str) const
14575 {
14576 _M_check(__pos, "basic_string::compare");
14577 __n = _M_limit(__pos, __n);
14578 const size_type __osize = __str.size();
14579 const size_type __len = std::min(__n, __osize);
14580 int __r = traits_type::compare(_M_data() + __pos, __str.data(), __len);
14581 if (!__r)
14582 __r = _S_compare(__n, __osize);
14583 return __r;
14584 }
14585
14586 template<typename _CharT, typename _Traits, typename _Alloc>
14587 int
14588 basic_string<_CharT, _Traits, _Alloc>::
14589 compare(size_type __pos1, size_type __n1, const basic_string& __str,
14590 size_type __pos2, size_type __n2) const
14591 {
14592 _M_check(__pos1, "basic_string::compare");
14593 __str._M_check(__pos2, "basic_string::compare");
14594 __n1 = _M_limit(__pos1, __n1);
14595 __n2 = __str._M_limit(__pos2, __n2);
14596 const size_type __len = std::min(__n1, __n2);
14597 int __r = traits_type::compare(_M_data() + __pos1,
14598 __str.data() + __pos2, __len);
14599 if (!__r)
14600 __r = _S_compare(__n1, __n2);
14601 return __r;
14602 }
14603
14604 template<typename _CharT, typename _Traits, typename _Alloc>
14605 int
14606 basic_string<_CharT, _Traits, _Alloc>::
14607 compare(const _CharT* __s) const
14608 {
14609 ;
14610 const size_type __size = this->size();
14611 const size_type __osize = traits_type::length(__s);
14612 const size_type __len = std::min(__size, __osize);
14613 int __r = traits_type::compare(_M_data(), __s, __len);
14614 if (!__r)
14615 __r = _S_compare(__size, __osize);
14616 return __r;
14617 }
14618
14619 template<typename _CharT, typename _Traits, typename _Alloc>
14620 int
14621 basic_string <_CharT, _Traits, _Alloc>::
14622 compare(size_type __pos, size_type __n1, const _CharT* __s) const
14623 {
14624 ;
14625 _M_check(__pos, "basic_string::compare");
14626 __n1 = _M_limit(__pos, __n1);
14627 const size_type __osize = traits_type::length(__s);
14628 const size_type __len = std::min(__n1, __osize);
14629 int __r = traits_type::compare(_M_data() + __pos, __s, __len);
14630 if (!__r)
14631 __r = _S_compare(__n1, __osize);
14632 return __r;
14633 }
14634
14635 template<typename _CharT, typename _Traits, typename _Alloc>
14636 int
14637 basic_string <_CharT, _Traits, _Alloc>::
14638 compare(size_type __pos, size_type __n1, const _CharT* __s,
14639 size_type __n2) const
14640 {
14641 ;
14642 _M_check(__pos, "basic_string::compare");
14643 __n1 = _M_limit(__pos, __n1);
14644 const size_type __len = std::min(__n1, __n2);
14645 int __r = traits_type::compare(_M_data() + __pos, __s, __len);
14646 if (!__r)
14647 __r = _S_compare(__n1, __n2);
14648 return __r;
14649 }
14650
14651
14652 template<typename _CharT, typename _Traits, typename _Alloc>
14653 basic_istream<_CharT, _Traits>&
14654 operator>>(basic_istream<_CharT, _Traits>& __in,
14655 basic_string<_CharT, _Traits, _Alloc>& __str)
14656 {
14657 typedef basic_istream<_CharT, _Traits> __istream_type;
14658 typedef basic_string<_CharT, _Traits, _Alloc> __string_type;
14659 typedef typename __istream_type::ios_base __ios_base;
14660 typedef typename __istream_type::int_type __int_type;
14661 typedef typename __string_type::size_type __size_type;
14662 typedef ctype<_CharT> __ctype_type;
14663 typedef typename __ctype_type::ctype_base __ctype_base;
14664
14665 __size_type __extracted = 0;
14666 typename __ios_base::iostate __err = __ios_base::goodbit;
14667 typename __istream_type::sentry __cerb(__in, false);
14668 if (__cerb)
14669 {
14670 try
14671 {
14672
14673 __str.erase();
14674 _CharT __buf[128];
14675 __size_type __len = 0;
14676 const streamsize __w = __in.width();
14677 const __size_type __n = __w > 0 ? static_cast<__size_type>(__w)
14678 : __str.max_size();
14679 const __ctype_type& __ct = use_facet<__ctype_type>(__in.getloc());
14680 const __int_type __eof = _Traits::eof();
14681 __int_type __c = __in.rdbuf()->sgetc();
14682
14683 while (__extracted < __n
14684 && !_Traits::eq_int_type(__c, __eof)
14685 && !__ct.is(__ctype_base::space,
14686 _Traits::to_char_type(__c)))
14687 {
14688 if (__len == sizeof(__buf) / sizeof(_CharT))
14689 {
14690 __str.append(__buf, sizeof(__buf) / sizeof(_CharT));
14691 __len = 0;
14692 }
14693 __buf[__len++] = _Traits::to_char_type(__c);
14694 ++__extracted;
14695 __c = __in.rdbuf()->snextc();
14696 }
14697 __str.append(__buf, __len);
14698
14699 if (_Traits::eq_int_type(__c, __eof))
14700 __err |= __ios_base::eofbit;
14701 __in.width(0);
14702 }
14703 catch(__cxxabiv1::__forced_unwind&)
14704 {
14705 __in._M_setstate(__ios_base::badbit);
14706 throw;
14707 }
14708 catch(...)
14709 {
14710
14711
14712
14713 __in._M_setstate(__ios_base::badbit);
14714 }
14715 }
14716
14717 if (!__extracted)
14718 __err |= __ios_base::failbit;
14719 if (__err)
14720 __in.setstate(__err);
14721 return __in;
14722 }
14723
14724 template<typename _CharT, typename _Traits, typename _Alloc>
14725 basic_istream<_CharT, _Traits>&
14726 getline(basic_istream<_CharT, _Traits>& __in,
14727 basic_string<_CharT, _Traits, _Alloc>& __str, _CharT __delim)
14728 {
14729 typedef basic_istream<_CharT, _Traits> __istream_type;
14730 typedef basic_string<_CharT, _Traits, _Alloc> __string_type;
14731 typedef typename __istream_type::ios_base __ios_base;
14732 typedef typename __istream_type::int_type __int_type;
14733 typedef typename __string_type::size_type __size_type;
14734
14735 __size_type __extracted = 0;
14736 const __size_type __n = __str.max_size();
14737 typename __ios_base::iostate __err = __ios_base::goodbit;
14738 typename __istream_type::sentry __cerb(__in, true);
14739 if (__cerb)
14740 {
14741 try
14742 {
14743 __str.erase();
14744 const __int_type __idelim = _Traits::to_int_type(__delim);
14745 const __int_type __eof = _Traits::eof();
14746 __int_type __c = __in.rdbuf()->sgetc();
14747
14748 while (__extracted < __n
14749 && !_Traits::eq_int_type(__c, __eof)
14750 && !_Traits::eq_int_type(__c, __idelim))
14751 {
14752 __str += _Traits::to_char_type(__c);
14753 ++__extracted;
14754 __c = __in.rdbuf()->snextc();
14755 }
14756
14757 if (_Traits::eq_int_type(__c, __eof))
14758 __err |= __ios_base::eofbit;
14759 else if (_Traits::eq_int_type(__c, __idelim))
14760 {
14761 ++__extracted;
14762 __in.rdbuf()->sbumpc();
14763 }
14764 else
14765 __err |= __ios_base::failbit;
14766 }
14767 catch(__cxxabiv1::__forced_unwind&)
14768 {
14769 __in._M_setstate(__ios_base::badbit);
14770 throw;
14771 }
14772 catch(...)
14773 {
14774
14775
14776
14777 __in._M_setstate(__ios_base::badbit);
14778 }
14779 }
14780 if (!__extracted)
14781 __err |= __ios_base::failbit;
14782 if (__err)
14783 __in.setstate(__err);
14784 return __in;
14785 }
14786
14787
14788
14789
14790
14791 extern template class basic_string<char>;
14792 extern template
14793 basic_istream<char>&
14794 operator>>(basic_istream<char>&, string&);
14795 extern template
14796 basic_ostream<char>&
14797 operator<<(basic_ostream<char>&, const string&);
14798 extern template
14799 basic_istream<char>&
14800 getline(basic_istream<char>&, string&, char);
14801 extern template
14802 basic_istream<char>&
14803 getline(basic_istream<char>&, string&);
14804
14805
14806 extern template class basic_string<wchar_t>;
14807 extern template
14808 basic_istream<wchar_t>&
14809 operator>>(basic_istream<wchar_t>&, wstring&);
14810 extern template
14811 basic_ostream<wchar_t>&
14812 operator<<(basic_ostream<wchar_t>&, const wstring&);
14813 extern template
14814 basic_istream<wchar_t>&
14815 getline(basic_istream<wchar_t>&, wstring&, wchar_t);
14816 extern template
14817 basic_istream<wchar_t>&
14818 getline(basic_istream<wchar_t>&, wstring&);
14819
14820
14821
14822 }
14823 # 57 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/string" 2 3
14824 # 43 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_classes.h" 2 3
14825
14826
14827 namespace std __attribute__ ((__visibility__ ("default"))) {
14828 # 62 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_classes.h" 3
14829 class locale
14830 {
14831 public:
14832
14833
14834 typedef int category;
14835
14836
14837 class facet;
14838 class id;
14839 class _Impl;
14840
14841 friend class facet;
14842 friend class _Impl;
14843
14844 template<typename _Facet>
14845 friend bool
14846 has_facet(const locale&) throw();
14847
14848 template<typename _Facet>
14849 friend const _Facet&
14850 use_facet(const locale&);
14851
14852 template<typename _Cache>
14853 friend struct __use_cache;
14854 # 98 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_classes.h" 3
14855 static const category none = 0;
14856 static const category ctype = 1L << 0;
14857 static const category numeric = 1L << 1;
14858 static const category collate = 1L << 2;
14859 static const category time = 1L << 3;
14860 static const category monetary = 1L << 4;
14861 static const category messages = 1L << 5;
14862 static const category all = (ctype | numeric | collate |
14863 time | monetary | messages);
14864 # 117 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_classes.h" 3
14865 locale() throw();
14866 # 126 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_classes.h" 3
14867 locale(const locale& __other) throw();
14868 # 136 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_classes.h" 3
14869 explicit
14870 locale(const char* __s);
14871 # 151 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_classes.h" 3
14872 locale(const locale& __base, const char* __s, category __cat);
14873 # 164 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_classes.h" 3
14874 locale(const locale& __base, const locale& __add, category __cat);
14875 # 176 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_classes.h" 3
14876 template<typename _Facet>
14877 locale(const locale& __other, _Facet* __f);
14878
14879
14880 ~locale() throw();
14881 # 190 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_classes.h" 3
14882 const locale&
14883 operator=(const locale& __other) throw();
14884 # 205 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_classes.h" 3
14885 template<typename _Facet>
14886 locale
14887 combine(const locale& __other) const;
14888
14889
14890
14891
14892
14893
14894 string
14895 name() const;
14896 # 224 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_classes.h" 3
14897 bool
14898 operator==(const locale& __other) const throw();
14899
14900
14901
14902
14903
14904
14905
14906 bool
14907 operator!=(const locale& __other) const throw()
14908 { return !(this->operator==(__other)); }
14909 # 252 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_classes.h" 3
14910 template<typename _Char, typename _Traits, typename _Alloc>
14911 bool
14912 operator()(const basic_string<_Char, _Traits, _Alloc>& __s1,
14913 const basic_string<_Char, _Traits, _Alloc>& __s2) const;
14914 # 268 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_classes.h" 3
14915 static locale
14916 global(const locale&);
14917
14918
14919
14920
14921 static const locale&
14922 classic();
14923
14924 private:
14925
14926 _Impl* _M_impl;
14927
14928
14929 static _Impl* _S_classic;
14930
14931
14932 static _Impl* _S_global;
14933
14934
14935
14936
14937
14938 static const char* const* const _S_categories;
14939 # 303 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_classes.h" 3
14940 enum { _S_categories_size = 6 + 6 };
14941
14942
14943 static __gthread_once_t _S_once;
14944
14945
14946 explicit
14947 locale(_Impl*) throw();
14948
14949 static void
14950 _S_initialize();
14951
14952 static void
14953 _S_initialize_once() throw();
14954
14955 static category
14956 _S_normalize_category(category);
14957
14958 void
14959 _M_coalesce(const locale& __base, const locale& __add, category __cat);
14960 };
14961 # 337 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_classes.h" 3
14962 class locale::facet
14963 {
14964 private:
14965 friend class locale;
14966 friend class locale::_Impl;
14967
14968 mutable _Atomic_word _M_refcount;
14969
14970
14971 static __c_locale _S_c_locale;
14972
14973
14974 static const char _S_c_name[2];
14975
14976
14977 static __gthread_once_t _S_once;
14978
14979
14980 static void
14981 _S_initialize_once();
14982
14983 protected:
14984 # 368 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_classes.h" 3
14985 explicit
14986 facet(size_t __refs = 0) throw() : _M_refcount(__refs ? 1 : 0)
14987 { }
14988
14989
14990 virtual
14991 ~facet();
14992
14993 static void
14994 _S_create_c_locale(__c_locale& __cloc, const char* __s,
14995 __c_locale __old = 0);
14996
14997 static __c_locale
14998 _S_clone_c_locale(__c_locale& __cloc) throw();
14999
15000 static void
15001 _S_destroy_c_locale(__c_locale& __cloc);
15002
15003 static __c_locale
15004 _S_lc_ctype_c_locale(__c_locale __cloc, const char* __s);
15005
15006
15007
15008 static __c_locale
15009 _S_get_c_locale();
15010
15011 __attribute__ ((__const__)) static const char*
15012 _S_get_c_name() throw();
15013
15014 private:
15015 void
15016 _M_add_reference() const throw()
15017 { __gnu_cxx::__atomic_add_dispatch(&_M_refcount, 1); }
15018
15019 void
15020 _M_remove_reference() const throw()
15021 {
15022 if (__gnu_cxx::__exchange_and_add_dispatch(&_M_refcount, -1) == 1)
15023 {
15024 try
15025 { delete this; }
15026 catch(...)
15027 { }
15028 }
15029 }
15030
15031 facet(const facet&);
15032
15033 facet&
15034 operator=(const facet&);
15035 };
15036 # 432 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_classes.h" 3
15037 class locale::id
15038 {
15039 private:
15040 friend class locale;
15041 friend class locale::_Impl;
15042
15043 template<typename _Facet>
15044 friend const _Facet&
15045 use_facet(const locale&);
15046
15047 template<typename _Facet>
15048 friend bool
15049 has_facet(const locale&) throw();
15050
15051
15052
15053
15054 mutable size_t _M_index;
15055
15056
15057 static _Atomic_word _S_refcount;
15058
15059 void
15060 operator=(const id&);
15061
15062 id(const id&);
15063
15064 public:
15065
15066
15067
15068 id() { }
15069
15070 size_t
15071 _M_id() const throw();
15072 };
15073
15074
15075
15076 class locale::_Impl
15077 {
15078 public:
15079
15080 friend class locale;
15081 friend class locale::facet;
15082
15083 template<typename _Facet>
15084 friend bool
15085 has_facet(const locale&) throw();
15086
15087 template<typename _Facet>
15088 friend const _Facet&
15089 use_facet(const locale&);
15090
15091 template<typename _Cache>
15092 friend struct __use_cache;
15093
15094 private:
15095
15096 _Atomic_word _M_refcount;
15097 const facet** _M_facets;
15098 size_t _M_facets_size;
15099 const facet** _M_caches;
15100 char** _M_names;
15101 static const locale::id* const _S_id_ctype[];
15102 static const locale::id* const _S_id_numeric[];
15103 static const locale::id* const _S_id_collate[];
15104 static const locale::id* const _S_id_time[];
15105 static const locale::id* const _S_id_monetary[];
15106 static const locale::id* const _S_id_messages[];
15107 static const locale::id* const* const _S_facet_categories[];
15108
15109 void
15110 _M_add_reference() throw()
15111 { __gnu_cxx::__atomic_add_dispatch(&_M_refcount, 1); }
15112
15113 void
15114 _M_remove_reference() throw()
15115 {
15116 if (__gnu_cxx::__exchange_and_add_dispatch(&_M_refcount, -1) == 1)
15117 {
15118 try
15119 { delete this; }
15120 catch(...)
15121 { }
15122 }
15123 }
15124
15125 _Impl(const _Impl&, size_t);
15126 _Impl(const char*, size_t);
15127 _Impl(size_t) throw();
15128
15129 ~_Impl() throw();
15130
15131 _Impl(const _Impl&);
15132
15133 void
15134 operator=(const _Impl&);
15135
15136 bool
15137 _M_check_same_name()
15138 {
15139 bool __ret = true;
15140 if (_M_names[1])
15141
15142 for (size_t __i = 0; __ret && __i < _S_categories_size - 1; ++__i)
15143 __ret = __builtin_strcmp(_M_names[__i], _M_names[__i + 1]) == 0;
15144 return __ret;
15145 }
15146
15147 void
15148 _M_replace_categories(const _Impl*, category);
15149
15150 void
15151 _M_replace_category(const _Impl*, const locale::id* const*);
15152
15153 void
15154 _M_replace_facet(const _Impl*, const locale::id*);
15155
15156 void
15157 _M_install_facet(const locale::id*, const facet*);
15158
15159 template<typename _Facet>
15160 void
15161 _M_init_facet(_Facet* __facet)
15162 { _M_install_facet(&_Facet::id, __facet); }
15163
15164 void
15165 _M_install_cache(const facet*, size_t);
15166 };
15167 # 575 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_classes.h" 3
15168 template<typename _Facet>
15169 bool
15170 has_facet(const locale& __loc) throw();
15171 # 592 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_classes.h" 3
15172 template<typename _Facet>
15173 const _Facet&
15174 use_facet(const locale& __loc);
15175 # 609 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_classes.h" 3
15176 template<typename _CharT>
15177 class collate : public locale::facet
15178 {
15179 public:
15180
15181
15182
15183 typedef _CharT char_type;
15184 typedef basic_string<_CharT> string_type;
15185
15186
15187 protected:
15188
15189
15190 __c_locale _M_c_locale_collate;
15191
15192 public:
15193
15194 static locale::id id;
15195 # 636 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_classes.h" 3
15196 explicit
15197 collate(size_t __refs = 0)
15198 : facet(__refs), _M_c_locale_collate(_S_get_c_locale())
15199 { }
15200 # 650 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_classes.h" 3
15201 explicit
15202 collate(__c_locale __cloc, size_t __refs = 0)
15203 : facet(__refs), _M_c_locale_collate(_S_clone_c_locale(__cloc))
15204 { }
15205 # 667 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_classes.h" 3
15206 int
15207 compare(const _CharT* __lo1, const _CharT* __hi1,
15208 const _CharT* __lo2, const _CharT* __hi2) const
15209 { return this->do_compare(__lo1, __hi1, __lo2, __hi2); }
15210 # 686 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_classes.h" 3
15211 string_type
15212 transform(const _CharT* __lo, const _CharT* __hi) const
15213 { return this->do_transform(__lo, __hi); }
15214 # 700 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_classes.h" 3
15215 long
15216 hash(const _CharT* __lo, const _CharT* __hi) const
15217 { return this->do_hash(__lo, __hi); }
15218
15219
15220 int
15221 _M_compare(const _CharT*, const _CharT*) const throw();
15222
15223 size_t
15224 _M_transform(_CharT*, const _CharT*, size_t) const throw();
15225
15226 protected:
15227
15228 virtual
15229 ~collate()
15230 { _S_destroy_c_locale(_M_c_locale_collate); }
15231 # 729 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_classes.h" 3
15232 virtual int
15233 do_compare(const _CharT* __lo1, const _CharT* __hi1,
15234 const _CharT* __lo2, const _CharT* __hi2) const;
15235 # 745 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_classes.h" 3
15236 virtual string_type
15237 do_transform(const _CharT* __lo, const _CharT* __hi) const;
15238 # 758 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_classes.h" 3
15239 virtual long
15240 do_hash(const _CharT* __lo, const _CharT* __hi) const;
15241 };
15242
15243 template<typename _CharT>
15244 locale::id collate<_CharT>::id;
15245
15246
15247 template<>
15248 int
15249 collate<char>::_M_compare(const char*, const char*) const throw();
15250
15251 template<>
15252 size_t
15253 collate<char>::_M_transform(char*, const char*, size_t) const throw();
15254
15255
15256 template<>
15257 int
15258 collate<wchar_t>::_M_compare(const wchar_t*, const wchar_t*) const throw();
15259
15260 template<>
15261 size_t
15262 collate<wchar_t>::_M_transform(wchar_t*, const wchar_t*, size_t) const throw();
15263
15264
15265
15266 template<typename _CharT>
15267 class collate_byname : public collate<_CharT>
15268 {
15269 public:
15270
15271
15272 typedef _CharT char_type;
15273 typedef basic_string<_CharT> string_type;
15274
15275
15276 explicit
15277 collate_byname(const char* __s, size_t __refs = 0)
15278 : collate<_CharT>(__refs)
15279 {
15280 if (__builtin_strcmp(__s, "C") != 0
15281 && __builtin_strcmp(__s, "POSIX") != 0)
15282 {
15283 this->_S_destroy_c_locale(this->_M_c_locale_collate);
15284 this->_S_create_c_locale(this->_M_c_locale_collate, __s);
15285 }
15286 }
15287
15288 protected:
15289 virtual
15290 ~collate_byname() { }
15291 };
15292
15293 }
15294
15295
15296 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_classes.tcc" 1 3
15297 # 35 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_classes.tcc" 3
15298 #define _LOCALE_CLASSES_TCC 1
15299
15300
15301 # 38 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_classes.tcc" 3
15302
15303 namespace std __attribute__ ((__visibility__ ("default"))) {
15304
15305 template<typename _Facet>
15306 locale::
15307 locale(const locale& __other, _Facet* __f)
15308 {
15309 _M_impl = new _Impl(*__other._M_impl, 1);
15310
15311 try
15312 { _M_impl->_M_install_facet(&_Facet::id, __f); }
15313 catch(...)
15314 {
15315 _M_impl->_M_remove_reference();
15316 throw;
15317 }
15318 delete [] _M_impl->_M_names[0];
15319 _M_impl->_M_names[0] = 0;
15320 }
15321
15322 template<typename _Facet>
15323 locale
15324 locale::
15325 combine(const locale& __other) const
15326 {
15327 _Impl* __tmp = new _Impl(*_M_impl, 1);
15328 try
15329 {
15330 __tmp->_M_replace_facet(__other._M_impl, &_Facet::id);
15331 }
15332 catch(...)
15333 {
15334 __tmp->_M_remove_reference();
15335 throw;
15336 }
15337 return locale(__tmp);
15338 }
15339
15340 template<typename _CharT, typename _Traits, typename _Alloc>
15341 bool
15342 locale::
15343 operator()(const basic_string<_CharT, _Traits, _Alloc>& __s1,
15344 const basic_string<_CharT, _Traits, _Alloc>& __s2) const
15345 {
15346 typedef std::collate<_CharT> __collate_type;
15347 const __collate_type& __collate = use_facet<__collate_type>(*this);
15348 return (__collate.compare(__s1.data(), __s1.data() + __s1.length(),
15349 __s2.data(), __s2.data() + __s2.length()) < 0);
15350 }
15351
15352
15353 template<typename _Facet>
15354 bool
15355 has_facet(const locale& __loc) throw()
15356 {
15357 const size_t __i = _Facet::id._M_id();
15358 const locale::facet** __facets = __loc._M_impl->_M_facets;
15359 return (__i < __loc._M_impl->_M_facets_size
15360
15361 && dynamic_cast<const _Facet*>(__facets[__i]));
15362
15363
15364
15365 }
15366
15367 template<typename _Facet>
15368 const _Facet&
15369 use_facet(const locale& __loc)
15370 {
15371 const size_t __i = _Facet::id._M_id();
15372 const locale::facet** __facets = __loc._M_impl->_M_facets;
15373 if (__i >= __loc._M_impl->_M_facets_size || !__facets[__i])
15374 __throw_bad_cast();
15375
15376 return dynamic_cast<const _Facet&>(*__facets[__i]);
15377
15378
15379
15380 }
15381
15382
15383
15384 template<typename _CharT>
15385 int
15386 collate<_CharT>::_M_compare(const _CharT*, const _CharT*) const throw ()
15387 { return 0; }
15388
15389
15390 template<typename _CharT>
15391 size_t
15392 collate<_CharT>::_M_transform(_CharT*, const _CharT*, size_t) const throw ()
15393 { return 0; }
15394
15395 template<typename _CharT>
15396 int
15397 collate<_CharT>::
15398 do_compare(const _CharT* __lo1, const _CharT* __hi1,
15399 const _CharT* __lo2, const _CharT* __hi2) const
15400 {
15401
15402
15403 const string_type __one(__lo1, __hi1);
15404 const string_type __two(__lo2, __hi2);
15405
15406 const _CharT* __p = __one.c_str();
15407 const _CharT* __pend = __one.data() + __one.length();
15408 const _CharT* __q = __two.c_str();
15409 const _CharT* __qend = __two.data() + __two.length();
15410
15411
15412
15413
15414 for (;;)
15415 {
15416 const int __res = _M_compare(__p, __q);
15417 if (__res)
15418 return __res;
15419
15420 __p += char_traits<_CharT>::length(__p);
15421 __q += char_traits<_CharT>::length(__q);
15422 if (__p == __pend && __q == __qend)
15423 return 0;
15424 else if (__p == __pend)
15425 return -1;
15426 else if (__q == __qend)
15427 return 1;
15428
15429 __p++;
15430 __q++;
15431 }
15432 }
15433
15434 template<typename _CharT>
15435 typename collate<_CharT>::string_type
15436 collate<_CharT>::
15437 do_transform(const _CharT* __lo, const _CharT* __hi) const
15438 {
15439 string_type __ret;
15440
15441
15442 const string_type __str(__lo, __hi);
15443
15444 const _CharT* __p = __str.c_str();
15445 const _CharT* __pend = __str.data() + __str.length();
15446
15447 size_t __len = (__hi - __lo) * 2;
15448
15449 _CharT* __c = new _CharT[__len];
15450
15451 try
15452 {
15453
15454
15455
15456 for (;;)
15457 {
15458
15459 size_t __res = _M_transform(__c, __p, __len);
15460
15461
15462 if (__res >= __len)
15463 {
15464 __len = __res + 1;
15465 delete [] __c, __c = 0;
15466 __c = new _CharT[__len];
15467 __res = _M_transform(__c, __p, __len);
15468 }
15469
15470 __ret.append(__c, __res);
15471 __p += char_traits<_CharT>::length(__p);
15472 if (__p == __pend)
15473 break;
15474
15475 __p++;
15476 __ret.push_back(_CharT());
15477 }
15478 }
15479 catch(...)
15480 {
15481 delete [] __c;
15482 throw;
15483 }
15484
15485 delete [] __c;
15486
15487 return __ret;
15488 }
15489
15490 template<typename _CharT>
15491 long
15492 collate<_CharT>::
15493 do_hash(const _CharT* __lo, const _CharT* __hi) const
15494 {
15495 unsigned long __val = 0;
15496 for (; __lo < __hi; ++__lo)
15497 __val =
15498 *__lo + ((__val << 7)
15499 | (__val >> (__gnu_cxx::__numeric_traits<unsigned long>::
15500 __digits - 7)));
15501 return static_cast<long>(__val);
15502 }
15503
15504
15505
15506
15507
15508 extern template class collate<char>;
15509 extern template class collate_byname<char>;
15510
15511 extern template
15512 const collate<char>&
15513 use_facet<collate<char> >(const locale&);
15514
15515 extern template
15516 bool
15517 has_facet<collate<char> >(const locale&);
15518
15519
15520 extern template class collate<wchar_t>;
15521 extern template class collate_byname<wchar_t>;
15522
15523 extern template
15524 const collate<wchar_t>&
15525 use_facet<collate<wchar_t> >(const locale&);
15526
15527 extern template
15528 bool
15529 has_facet<collate<wchar_t> >(const locale&);
15530
15531
15532
15533 }
15534 # 816 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_classes.h" 2 3
15535 # 44 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/ios_base.h" 2 3
15536
15537
15538
15539
15540
15541
15542 #define _IOS_BASE_SEEK_CUR 1
15543 #define _IOS_BASE_SEEK_END 2
15544
15545
15546 namespace std __attribute__ ((__visibility__ ("default"))) {
15547
15548
15549
15550
15551
15552 enum _Ios_Fmtflags
15553 {
15554 _S_boolalpha = 1L << 0,
15555 _S_dec = 1L << 1,
15556 _S_fixed = 1L << 2,
15557 _S_hex = 1L << 3,
15558 _S_internal = 1L << 4,
15559 _S_left = 1L << 5,
15560 _S_oct = 1L << 6,
15561 _S_right = 1L << 7,
15562 _S_scientific = 1L << 8,
15563 _S_showbase = 1L << 9,
15564 _S_showpoint = 1L << 10,
15565 _S_showpos = 1L << 11,
15566 _S_skipws = 1L << 12,
15567 _S_unitbuf = 1L << 13,
15568 _S_uppercase = 1L << 14,
15569 _S_adjustfield = _S_left | _S_right | _S_internal,
15570 _S_basefield = _S_dec | _S_oct | _S_hex,
15571 _S_floatfield = _S_scientific | _S_fixed,
15572 _S_ios_fmtflags_end = 1L << 16
15573 };
15574
15575 inline _Ios_Fmtflags
15576 operator&(_Ios_Fmtflags __a, _Ios_Fmtflags __b)
15577 { return _Ios_Fmtflags(static_cast<int>(__a) & static_cast<int>(__b)); }
15578
15579 inline _Ios_Fmtflags
15580 operator|(_Ios_Fmtflags __a, _Ios_Fmtflags __b)
15581 { return _Ios_Fmtflags(static_cast<int>(__a) | static_cast<int>(__b)); }
15582
15583 inline _Ios_Fmtflags
15584 operator^(_Ios_Fmtflags __a, _Ios_Fmtflags __b)
15585 { return _Ios_Fmtflags(static_cast<int>(__a) ^ static_cast<int>(__b)); }
15586
15587 inline _Ios_Fmtflags&
15588 operator|=(_Ios_Fmtflags& __a, _Ios_Fmtflags __b)
15589 { return __a = __a | __b; }
15590
15591 inline _Ios_Fmtflags&
15592 operator&=(_Ios_Fmtflags& __a, _Ios_Fmtflags __b)
15593 { return __a = __a & __b; }
15594
15595 inline _Ios_Fmtflags&
15596 operator^=(_Ios_Fmtflags& __a, _Ios_Fmtflags __b)
15597 { return __a = __a ^ __b; }
15598
15599 inline _Ios_Fmtflags
15600 operator~(_Ios_Fmtflags __a)
15601 { return _Ios_Fmtflags(~static_cast<int>(__a)); }
15602
15603
15604 enum _Ios_Openmode
15605 {
15606 _S_app = 1L << 0,
15607 _S_ate = 1L << 1,
15608 _S_bin = 1L << 2,
15609 _S_in = 1L << 3,
15610 _S_out = 1L << 4,
15611 _S_trunc = 1L << 5,
15612 _S_ios_openmode_end = 1L << 16
15613 };
15614
15615 inline _Ios_Openmode
15616 operator&(_Ios_Openmode __a, _Ios_Openmode __b)
15617 { return _Ios_Openmode(static_cast<int>(__a) & static_cast<int>(__b)); }
15618
15619 inline _Ios_Openmode
15620 operator|(_Ios_Openmode __a, _Ios_Openmode __b)
15621 { return _Ios_Openmode(static_cast<int>(__a) | static_cast<int>(__b)); }
15622
15623 inline _Ios_Openmode
15624 operator^(_Ios_Openmode __a, _Ios_Openmode __b)
15625 { return _Ios_Openmode(static_cast<int>(__a) ^ static_cast<int>(__b)); }
15626
15627 inline _Ios_Openmode&
15628 operator|=(_Ios_Openmode& __a, _Ios_Openmode __b)
15629 { return __a = __a | __b; }
15630
15631 inline _Ios_Openmode&
15632 operator&=(_Ios_Openmode& __a, _Ios_Openmode __b)
15633 { return __a = __a & __b; }
15634
15635 inline _Ios_Openmode&
15636 operator^=(_Ios_Openmode& __a, _Ios_Openmode __b)
15637 { return __a = __a ^ __b; }
15638
15639 inline _Ios_Openmode
15640 operator~(_Ios_Openmode __a)
15641 { return _Ios_Openmode(~static_cast<int>(__a)); }
15642
15643
15644 enum _Ios_Iostate
15645 {
15646 _S_goodbit = 0,
15647 _S_badbit = 1L << 0,
15648 _S_eofbit = 1L << 1,
15649 _S_failbit = 1L << 2,
15650 _S_ios_iostate_end = 1L << 16
15651 };
15652
15653 inline _Ios_Iostate
15654 operator&(_Ios_Iostate __a, _Ios_Iostate __b)
15655 { return _Ios_Iostate(static_cast<int>(__a) & static_cast<int>(__b)); }
15656
15657 inline _Ios_Iostate
15658 operator|(_Ios_Iostate __a, _Ios_Iostate __b)
15659 { return _Ios_Iostate(static_cast<int>(__a) | static_cast<int>(__b)); }
15660
15661 inline _Ios_Iostate
15662 operator^(_Ios_Iostate __a, _Ios_Iostate __b)
15663 { return _Ios_Iostate(static_cast<int>(__a) ^ static_cast<int>(__b)); }
15664
15665 inline _Ios_Iostate&
15666 operator|=(_Ios_Iostate& __a, _Ios_Iostate __b)
15667 { return __a = __a | __b; }
15668
15669 inline _Ios_Iostate&
15670 operator&=(_Ios_Iostate& __a, _Ios_Iostate __b)
15671 { return __a = __a & __b; }
15672
15673 inline _Ios_Iostate&
15674 operator^=(_Ios_Iostate& __a, _Ios_Iostate __b)
15675 { return __a = __a ^ __b; }
15676
15677 inline _Ios_Iostate
15678 operator~(_Ios_Iostate __a)
15679 { return _Ios_Iostate(~static_cast<int>(__a)); }
15680
15681 enum _Ios_Seekdir
15682 {
15683 _S_beg = 0,
15684 _S_cur = 1,
15685 _S_end = 2,
15686 _S_ios_seekdir_end = 1L << 16
15687 };
15688 # 207 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/ios_base.h" 3
15689 class ios_base
15690 {
15691 public:
15692
15693
15694
15695
15696
15697
15698
15699 class failure : public exception
15700 {
15701 public:
15702
15703
15704 explicit
15705 failure(const string& __str) throw();
15706
15707
15708
15709 virtual
15710 ~failure() throw();
15711
15712 virtual const char*
15713 what() const throw();
15714
15715 private:
15716 string _M_msg;
15717 };
15718 # 263 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/ios_base.h" 3
15719 typedef _Ios_Fmtflags fmtflags;
15720
15721
15722 static const fmtflags boolalpha = _S_boolalpha;
15723
15724
15725 static const fmtflags dec = _S_dec;
15726
15727
15728 static const fmtflags fixed = _S_fixed;
15729
15730
15731 static const fmtflags hex = _S_hex;
15732
15733
15734
15735
15736 static const fmtflags internal = _S_internal;
15737
15738
15739
15740 static const fmtflags left = _S_left;
15741
15742
15743 static const fmtflags oct = _S_oct;
15744
15745
15746
15747 static const fmtflags right = _S_right;
15748
15749
15750 static const fmtflags scientific = _S_scientific;
15751
15752
15753
15754 static const fmtflags showbase = _S_showbase;
15755
15756
15757
15758 static const fmtflags showpoint = _S_showpoint;
15759
15760
15761 static const fmtflags showpos = _S_showpos;
15762
15763
15764 static const fmtflags skipws = _S_skipws;
15765
15766
15767 static const fmtflags unitbuf = _S_unitbuf;
15768
15769
15770
15771 static const fmtflags uppercase = _S_uppercase;
15772
15773
15774 static const fmtflags adjustfield = _S_adjustfield;
15775
15776
15777 static const fmtflags basefield = _S_basefield;
15778
15779
15780 static const fmtflags floatfield = _S_floatfield;
15781 # 338 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/ios_base.h" 3
15782 typedef _Ios_Iostate iostate;
15783
15784
15785
15786 static const iostate badbit = _S_badbit;
15787
15788
15789 static const iostate eofbit = _S_eofbit;
15790
15791
15792
15793
15794 static const iostate failbit = _S_failbit;
15795
15796
15797 static const iostate goodbit = _S_goodbit;
15798 # 369 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/ios_base.h" 3
15799 typedef _Ios_Openmode openmode;
15800
15801
15802 static const openmode app = _S_app;
15803
15804
15805 static const openmode ate = _S_ate;
15806
15807
15808
15809
15810 static const openmode binary = _S_bin;
15811
15812
15813 static const openmode in = _S_in;
15814
15815
15816 static const openmode out = _S_out;
15817
15818
15819 static const openmode trunc = _S_trunc;
15820 # 401 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/ios_base.h" 3
15821 typedef _Ios_Seekdir seekdir;
15822
15823
15824 static const seekdir beg = _S_beg;
15825
15826
15827 static const seekdir cur = _S_cur;
15828
15829
15830 static const seekdir end = _S_end;
15831
15832
15833 typedef int io_state;
15834 typedef int open_mode;
15835 typedef int seek_dir;
15836
15837 typedef std::streampos streampos;
15838 typedef std::streamoff streamoff;
15839 # 427 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/ios_base.h" 3
15840 enum event
15841 {
15842 erase_event,
15843 imbue_event,
15844 copyfmt_event
15845 };
15846 # 444 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/ios_base.h" 3
15847 typedef void (*event_callback) (event, ios_base&, int);
15848 # 456 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/ios_base.h" 3
15849 void
15850 register_callback(event_callback __fn, int __index);
15851
15852 protected:
15853 streamsize _M_precision;
15854 streamsize _M_width;
15855 fmtflags _M_flags;
15856 iostate _M_exception;
15857 iostate _M_streambuf_state;
15858
15859
15860
15861 struct _Callback_list
15862 {
15863
15864 _Callback_list* _M_next;
15865 ios_base::event_callback _M_fn;
15866 int _M_index;
15867 _Atomic_word _M_refcount;
15868
15869 _Callback_list(ios_base::event_callback __fn, int __index,
15870 _Callback_list* __cb)
15871 : _M_next(__cb), _M_fn(__fn), _M_index(__index), _M_refcount(0) { }
15872
15873 void
15874 _M_add_reference() { __gnu_cxx::__atomic_add_dispatch(&_M_refcount, 1); }
15875
15876
15877 int
15878 _M_remove_reference()
15879 { return __gnu_cxx::__exchange_and_add_dispatch(&_M_refcount, -1); }
15880 };
15881
15882 _Callback_list* _M_callbacks;
15883
15884 void
15885 _M_call_callbacks(event __ev) throw();
15886
15887 void
15888 _M_dispose_callbacks(void) throw();
15889
15890
15891 struct _Words
15892 {
15893 void* _M_pword;
15894 long _M_iword;
15895 _Words() : _M_pword(0), _M_iword(0) { }
15896 };
15897
15898
15899 _Words _M_word_zero;
15900
15901
15902
15903 enum { _S_local_word_size = 8 };
15904 _Words _M_local_word[_S_local_word_size];
15905
15906
15907 int _M_word_size;
15908 _Words* _M_word;
15909
15910 _Words&
15911 _M_grow_words(int __index, bool __iword);
15912
15913
15914 locale _M_ios_locale;
15915
15916 void
15917 _M_init() throw();
15918
15919 public:
15920
15921
15922
15923
15924
15925 class Init
15926 {
15927 friend class ios_base;
15928 public:
15929 Init();
15930 ~Init();
15931
15932 private:
15933 static _Atomic_word _S_refcount;
15934 static bool _S_synced_with_stdio;
15935 };
15936
15937
15938
15939
15940
15941
15942 fmtflags
15943 flags() const
15944 { return _M_flags; }
15945 # 560 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/ios_base.h" 3
15946 fmtflags
15947 flags(fmtflags __fmtfl)
15948 {
15949 fmtflags __old = _M_flags;
15950 _M_flags = __fmtfl;
15951 return __old;
15952 }
15953 # 576 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/ios_base.h" 3
15954 fmtflags
15955 setf(fmtflags __fmtfl)
15956 {
15957 fmtflags __old = _M_flags;
15958 _M_flags |= __fmtfl;
15959 return __old;
15960 }
15961 # 593 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/ios_base.h" 3
15962 fmtflags
15963 setf(fmtflags __fmtfl, fmtflags __mask)
15964 {
15965 fmtflags __old = _M_flags;
15966 _M_flags &= ~__mask;
15967 _M_flags |= (__fmtfl & __mask);
15968 return __old;
15969 }
15970
15971
15972
15973
15974
15975
15976
15977 void
15978 unsetf(fmtflags __mask)
15979 { _M_flags &= ~__mask; }
15980 # 619 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/ios_base.h" 3
15981 streamsize
15982 precision() const
15983 { return _M_precision; }
15984
15985
15986
15987
15988
15989
15990 streamsize
15991 precision(streamsize __prec)
15992 {
15993 streamsize __old = _M_precision;
15994 _M_precision = __prec;
15995 return __old;
15996 }
15997
15998
15999
16000
16001
16002
16003
16004 streamsize
16005 width() const
16006 { return _M_width; }
16007
16008
16009
16010
16011
16012
16013 streamsize
16014 width(streamsize __wide)
16015 {
16016 streamsize __old = _M_width;
16017 _M_width = __wide;
16018 return __old;
16019 }
16020 # 670 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/ios_base.h" 3
16021 static bool
16022 sync_with_stdio(bool __sync = true);
16023 # 682 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/ios_base.h" 3
16024 locale
16025 imbue(const locale& __loc) throw();
16026 # 693 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/ios_base.h" 3
16027 locale
16028 getloc() const
16029 { return _M_ios_locale; }
16030 # 704 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/ios_base.h" 3
16031 const locale&
16032 _M_getloc() const
16033 { return _M_ios_locale; }
16034 # 723 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/ios_base.h" 3
16035 static int
16036 xalloc() throw();
16037 # 739 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/ios_base.h" 3
16038 long&
16039 iword(int __ix)
16040 {
16041 _Words& __word = (__ix < _M_word_size)
16042 ? _M_word[__ix] : _M_grow_words(__ix, true);
16043 return __word._M_iword;
16044 }
16045 # 760 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/ios_base.h" 3
16046 void*&
16047 pword(int __ix)
16048 {
16049 _Words& __word = (__ix < _M_word_size)
16050 ? _M_word[__ix] : _M_grow_words(__ix, false);
16051 return __word._M_pword;
16052 }
16053 # 777 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/ios_base.h" 3
16054 virtual ~ios_base();
16055
16056 protected:
16057 ios_base() throw ();
16058
16059
16060
16061 private:
16062 ios_base(const ios_base&);
16063
16064 ios_base&
16065 operator=(const ios_base&);
16066 };
16067
16068
16069
16070 inline ios_base&
16071 boolalpha(ios_base& __base)
16072 {
16073 __base.setf(ios_base::boolalpha);
16074 return __base;
16075 }
16076
16077
16078 inline ios_base&
16079 noboolalpha(ios_base& __base)
16080 {
16081 __base.unsetf(ios_base::boolalpha);
16082 return __base;
16083 }
16084
16085
16086 inline ios_base&
16087 showbase(ios_base& __base)
16088 {
16089 __base.setf(ios_base::showbase);
16090 return __base;
16091 }
16092
16093
16094 inline ios_base&
16095 noshowbase(ios_base& __base)
16096 {
16097 __base.unsetf(ios_base::showbase);
16098 return __base;
16099 }
16100
16101
16102 inline ios_base&
16103 showpoint(ios_base& __base)
16104 {
16105 __base.setf(ios_base::showpoint);
16106 return __base;
16107 }
16108
16109
16110 inline ios_base&
16111 noshowpoint(ios_base& __base)
16112 {
16113 __base.unsetf(ios_base::showpoint);
16114 return __base;
16115 }
16116
16117
16118 inline ios_base&
16119 showpos(ios_base& __base)
16120 {
16121 __base.setf(ios_base::showpos);
16122 return __base;
16123 }
16124
16125
16126 inline ios_base&
16127 noshowpos(ios_base& __base)
16128 {
16129 __base.unsetf(ios_base::showpos);
16130 return __base;
16131 }
16132
16133
16134 inline ios_base&
16135 skipws(ios_base& __base)
16136 {
16137 __base.setf(ios_base::skipws);
16138 return __base;
16139 }
16140
16141
16142 inline ios_base&
16143 noskipws(ios_base& __base)
16144 {
16145 __base.unsetf(ios_base::skipws);
16146 return __base;
16147 }
16148
16149
16150 inline ios_base&
16151 uppercase(ios_base& __base)
16152 {
16153 __base.setf(ios_base::uppercase);
16154 return __base;
16155 }
16156
16157
16158 inline ios_base&
16159 nouppercase(ios_base& __base)
16160 {
16161 __base.unsetf(ios_base::uppercase);
16162 return __base;
16163 }
16164
16165
16166 inline ios_base&
16167 unitbuf(ios_base& __base)
16168 {
16169 __base.setf(ios_base::unitbuf);
16170 return __base;
16171 }
16172
16173
16174 inline ios_base&
16175 nounitbuf(ios_base& __base)
16176 {
16177 __base.unsetf(ios_base::unitbuf);
16178 return __base;
16179 }
16180
16181
16182
16183 inline ios_base&
16184 internal(ios_base& __base)
16185 {
16186 __base.setf(ios_base::internal, ios_base::adjustfield);
16187 return __base;
16188 }
16189
16190
16191 inline ios_base&
16192 left(ios_base& __base)
16193 {
16194 __base.setf(ios_base::left, ios_base::adjustfield);
16195 return __base;
16196 }
16197
16198
16199 inline ios_base&
16200 right(ios_base& __base)
16201 {
16202 __base.setf(ios_base::right, ios_base::adjustfield);
16203 return __base;
16204 }
16205
16206
16207
16208 inline ios_base&
16209 dec(ios_base& __base)
16210 {
16211 __base.setf(ios_base::dec, ios_base::basefield);
16212 return __base;
16213 }
16214
16215
16216 inline ios_base&
16217 hex(ios_base& __base)
16218 {
16219 __base.setf(ios_base::hex, ios_base::basefield);
16220 return __base;
16221 }
16222
16223
16224 inline ios_base&
16225 oct(ios_base& __base)
16226 {
16227 __base.setf(ios_base::oct, ios_base::basefield);
16228 return __base;
16229 }
16230
16231
16232
16233 inline ios_base&
16234 fixed(ios_base& __base)
16235 {
16236 __base.setf(ios_base::fixed, ios_base::floatfield);
16237 return __base;
16238 }
16239
16240
16241 inline ios_base&
16242 scientific(ios_base& __base)
16243 {
16244 __base.setf(ios_base::scientific, ios_base::floatfield);
16245 return __base;
16246 }
16247
16248 }
16249
16250 #undef _IOS_BASE_SEEK_CUR
16251 #undef _IOS_BASE_SEEK_END
16252 # 44 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/ios" 2 3
16253 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/streambuf" 1 3
16254 # 35 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/streambuf" 3
16255 #define _GLIBXX_STREAMBUF 1
16256
16257
16258 # 38 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/streambuf" 3
16259 # 46 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/streambuf" 3
16260 namespace std __attribute__ ((__visibility__ ("default"))) {
16261
16262 template<typename _CharT, typename _Traits>
16263 streamsize
16264 __copy_streambufs_eof(basic_streambuf<_CharT, _Traits>*,
16265 basic_streambuf<_CharT, _Traits>*, bool&);
16266 # 114 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/streambuf" 3
16267 template<typename _CharT, typename _Traits>
16268 class basic_streambuf
16269 {
16270 public:
16271
16272
16273
16274
16275
16276
16277 typedef _CharT char_type;
16278 typedef _Traits traits_type;
16279 typedef typename traits_type::int_type int_type;
16280 typedef typename traits_type::pos_type pos_type;
16281 typedef typename traits_type::off_type off_type;
16282
16283
16284
16285
16286 typedef basic_streambuf<char_type, traits_type> __streambuf_type;
16287
16288
16289 friend class basic_ios<char_type, traits_type>;
16290 friend class basic_istream<char_type, traits_type>;
16291 friend class basic_ostream<char_type, traits_type>;
16292 friend class istreambuf_iterator<char_type, traits_type>;
16293 friend class ostreambuf_iterator<char_type, traits_type>;
16294
16295 friend streamsize
16296 __copy_streambufs_eof<>(__streambuf_type*, __streambuf_type*, bool&);
16297
16298 template<bool _IsMove, typename _CharT2>
16299 friend typename __gnu_cxx::__enable_if<__is_char<_CharT2>::__value,
16300 _CharT2*>::__type
16301 __copy_move_a2(istreambuf_iterator<_CharT2>,
16302 istreambuf_iterator<_CharT2>, _CharT2*);
16303
16304 template<typename _CharT2>
16305 friend typename __gnu_cxx::__enable_if<__is_char<_CharT2>::__value,
16306 istreambuf_iterator<_CharT2> >::__type
16307 find(istreambuf_iterator<_CharT2>, istreambuf_iterator<_CharT2>,
16308 const _CharT2&);
16309
16310 template<typename _CharT2, typename _Traits2>
16311 friend basic_istream<_CharT2, _Traits2>&
16312 operator>>(basic_istream<_CharT2, _Traits2>&, _CharT2*);
16313
16314 template<typename _CharT2, typename _Traits2, typename _Alloc>
16315 friend basic_istream<_CharT2, _Traits2>&
16316 operator>>(basic_istream<_CharT2, _Traits2>&,
16317 basic_string<_CharT2, _Traits2, _Alloc>&);
16318
16319 template<typename _CharT2, typename _Traits2, typename _Alloc>
16320 friend basic_istream<_CharT2, _Traits2>&
16321 getline(basic_istream<_CharT2, _Traits2>&,
16322 basic_string<_CharT2, _Traits2, _Alloc>&, _CharT2);
16323
16324 protected:
16325 # 180 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/streambuf" 3
16326 char_type* _M_in_beg;
16327 char_type* _M_in_cur;
16328 char_type* _M_in_end;
16329 char_type* _M_out_beg;
16330 char_type* _M_out_cur;
16331 char_type* _M_out_end;
16332
16333
16334 locale _M_buf_locale;
16335
16336 public:
16337
16338 virtual
16339 ~basic_streambuf()
16340 { }
16341 # 204 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/streambuf" 3
16342 locale
16343 pubimbue(const locale &__loc)
16344 {
16345 locale __tmp(this->getloc());
16346 this->imbue(__loc);
16347 _M_buf_locale = __loc;
16348 return __tmp;
16349 }
16350 # 221 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/streambuf" 3
16351 locale
16352 getloc() const
16353 { return _M_buf_locale; }
16354 # 234 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/streambuf" 3
16355 __streambuf_type*
16356 pubsetbuf(char_type* __s, streamsize __n)
16357 { return this->setbuf(__s, __n); }
16358
16359 pos_type
16360 pubseekoff(off_type __off, ios_base::seekdir __way,
16361 ios_base::openmode __mode = ios_base::in | ios_base::out)
16362 { return this->seekoff(__off, __way, __mode); }
16363
16364 pos_type
16365 pubseekpos(pos_type __sp,
16366 ios_base::openmode __mode = ios_base::in | ios_base::out)
16367 { return this->seekpos(__sp, __mode); }
16368
16369 int
16370 pubsync() { return this->sync(); }
16371 # 261 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/streambuf" 3
16372 streamsize
16373 in_avail()
16374 {
16375 const streamsize __ret = this->egptr() - this->gptr();
16376 return __ret ? __ret : this->showmanyc();
16377 }
16378 # 275 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/streambuf" 3
16379 int_type
16380 snextc()
16381 {
16382 int_type __ret = traits_type::eof();
16383 if (__builtin_expect(!traits_type::eq_int_type(this->sbumpc(),
16384 __ret), true))
16385 __ret = this->sgetc();
16386 return __ret;
16387 }
16388 # 293 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/streambuf" 3
16389 int_type
16390 sbumpc()
16391 {
16392 int_type __ret;
16393 if (__builtin_expect(this->gptr() < this->egptr(), true))
16394 {
16395 __ret = traits_type::to_int_type(*this->gptr());
16396 this->gbump(1);
16397 }
16398 else
16399 __ret = this->uflow();
16400 return __ret;
16401 }
16402 # 315 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/streambuf" 3
16403 int_type
16404 sgetc()
16405 {
16406 int_type __ret;
16407 if (__builtin_expect(this->gptr() < this->egptr(), true))
16408 __ret = traits_type::to_int_type(*this->gptr());
16409 else
16410 __ret = this->underflow();
16411 return __ret;
16412 }
16413 # 334 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/streambuf" 3
16414 streamsize
16415 sgetn(char_type* __s, streamsize __n)
16416 { return this->xsgetn(__s, __n); }
16417 # 349 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/streambuf" 3
16418 int_type
16419 sputbackc(char_type __c)
16420 {
16421 int_type __ret;
16422 const bool __testpos = this->eback() < this->gptr();
16423 if (__builtin_expect(!__testpos ||
16424 !traits_type::eq(__c, this->gptr()[-1]), false))
16425 __ret = this->pbackfail(traits_type::to_int_type(__c));
16426 else
16427 {
16428 this->gbump(-1);
16429 __ret = traits_type::to_int_type(*this->gptr());
16430 }
16431 return __ret;
16432 }
16433 # 374 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/streambuf" 3
16434 int_type
16435 sungetc()
16436 {
16437 int_type __ret;
16438 if (__builtin_expect(this->eback() < this->gptr(), true))
16439 {
16440 this->gbump(-1);
16441 __ret = traits_type::to_int_type(*this->gptr());
16442 }
16443 else
16444 __ret = this->pbackfail();
16445 return __ret;
16446 }
16447 # 401 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/streambuf" 3
16448 int_type
16449 sputc(char_type __c)
16450 {
16451 int_type __ret;
16452 if (__builtin_expect(this->pptr() < this->epptr(), true))
16453 {
16454 *this->pptr() = __c;
16455 this->pbump(1);
16456 __ret = traits_type::to_int_type(__c);
16457 }
16458 else
16459 __ret = this->overflow(traits_type::to_int_type(__c));
16460 return __ret;
16461 }
16462 # 427 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/streambuf" 3
16463 streamsize
16464 sputn(const char_type* __s, streamsize __n)
16465 { return this->xsputn(__s, __n); }
16466
16467 protected:
16468 # 441 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/streambuf" 3
16469 basic_streambuf()
16470 : _M_in_beg(0), _M_in_cur(0), _M_in_end(0),
16471 _M_out_beg(0), _M_out_cur(0), _M_out_end(0),
16472 _M_buf_locale(locale())
16473 { }
16474 # 459 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/streambuf" 3
16475 char_type*
16476 eback() const { return _M_in_beg; }
16477
16478 char_type*
16479 gptr() const { return _M_in_cur; }
16480
16481 char_type*
16482 egptr() const { return _M_in_end; }
16483 # 475 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/streambuf" 3
16484 void
16485 gbump(int __n) { _M_in_cur += __n; }
16486 # 486 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/streambuf" 3
16487 void
16488 setg(char_type* __gbeg, char_type* __gnext, char_type* __gend)
16489 {
16490 _M_in_beg = __gbeg;
16491 _M_in_cur = __gnext;
16492 _M_in_end = __gend;
16493 }
16494 # 506 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/streambuf" 3
16495 char_type*
16496 pbase() const { return _M_out_beg; }
16497
16498 char_type*
16499 pptr() const { return _M_out_cur; }
16500
16501 char_type*
16502 epptr() const { return _M_out_end; }
16503 # 522 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/streambuf" 3
16504 void
16505 pbump(int __n) { _M_out_cur += __n; }
16506 # 532 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/streambuf" 3
16507 void
16508 setp(char_type* __pbeg, char_type* __pend)
16509 {
16510 _M_out_beg = _M_out_cur = __pbeg;
16511 _M_out_end = __pend;
16512 }
16513 # 553 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/streambuf" 3
16514 virtual void
16515 imbue(const locale&)
16516 { }
16517 # 568 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/streambuf" 3
16518 virtual basic_streambuf<char_type,_Traits>*
16519 setbuf(char_type*, streamsize)
16520 { return this; }
16521 # 579 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/streambuf" 3
16522 virtual pos_type
16523 seekoff(off_type, ios_base::seekdir,
16524 ios_base::openmode = ios_base::in | ios_base::out)
16525 { return pos_type(off_type(-1)); }
16526 # 591 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/streambuf" 3
16527 virtual pos_type
16528 seekpos(pos_type,
16529 ios_base::openmode = ios_base::in | ios_base::out)
16530 { return pos_type(off_type(-1)); }
16531 # 604 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/streambuf" 3
16532 virtual int
16533 sync() { return 0; }
16534 # 626 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/streambuf" 3
16535 virtual streamsize
16536 showmanyc() { return 0; }
16537 # 642 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/streambuf" 3
16538 virtual streamsize
16539 xsgetn(char_type* __s, streamsize __n);
16540 # 664 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/streambuf" 3
16541 virtual int_type
16542 underflow()
16543 { return traits_type::eof(); }
16544 # 677 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/streambuf" 3
16545 virtual int_type
16546 uflow()
16547 {
16548 int_type __ret = traits_type::eof();
16549 const bool __testeof = traits_type::eq_int_type(this->underflow(),
16550 __ret);
16551 if (!__testeof)
16552 {
16553 __ret = traits_type::to_int_type(*this->gptr());
16554 this->gbump(1);
16555 }
16556 return __ret;
16557 }
16558 # 701 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/streambuf" 3
16559 virtual int_type
16560 pbackfail(int_type = traits_type::eof())
16561 { return traits_type::eof(); }
16562 # 719 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/streambuf" 3
16563 virtual streamsize
16564 xsputn(const char_type* __s, streamsize __n);
16565 # 745 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/streambuf" 3
16566 virtual int_type
16567 overflow(int_type = traits_type::eof())
16568 { return traits_type::eof(); }
16569
16570
16571
16572 public:
16573 # 760 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/streambuf" 3
16574 void
16575 stossc()
16576 {
16577 if (this->gptr() < this->egptr())
16578 this->gbump(1);
16579 else
16580 this->uflow();
16581 }
16582
16583
16584 private:
16585
16586
16587 basic_streambuf(const __streambuf_type& __sb)
16588 : _M_in_beg(__sb._M_in_beg), _M_in_cur(__sb._M_in_cur),
16589 _M_in_end(__sb._M_in_end), _M_out_beg(__sb._M_out_beg),
16590 _M_out_cur(__sb._M_out_cur), _M_out_end(__sb._M_out_cur),
16591 _M_buf_locale(__sb._M_buf_locale)
16592 { }
16593
16594 __streambuf_type&
16595 operator=(const __streambuf_type&) { return *this; };
16596 };
16597
16598
16599 template<>
16600 streamsize
16601 __copy_streambufs_eof(basic_streambuf<char>* __sbin,
16602 basic_streambuf<char>* __sbout, bool& __ineof);
16603
16604 template<>
16605 streamsize
16606 __copy_streambufs_eof(basic_streambuf<wchar_t>* __sbin,
16607 basic_streambuf<wchar_t>* __sbout, bool& __ineof);
16608
16609
16610 }
16611
16612
16613 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/streambuf.tcc" 1 3
16614 # 36 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/streambuf.tcc" 3
16615 #define _STREAMBUF_TCC 1
16616
16617
16618 # 39 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/streambuf.tcc" 3
16619
16620 namespace std __attribute__ ((__visibility__ ("default"))) {
16621
16622 template<typename _CharT, typename _Traits>
16623 streamsize
16624 basic_streambuf<_CharT, _Traits>::
16625 xsgetn(char_type* __s, streamsize __n)
16626 {
16627 streamsize __ret = 0;
16628 while (__ret < __n)
16629 {
16630 const streamsize __buf_len = this->egptr() - this->gptr();
16631 if (__buf_len)
16632 {
16633 const streamsize __remaining = __n - __ret;
16634 const streamsize __len = std::min(__buf_len, __remaining);
16635 traits_type::copy(__s, this->gptr(), __len);
16636 __ret += __len;
16637 __s += __len;
16638 this->gbump(__len);
16639 }
16640
16641 if (__ret < __n)
16642 {
16643 const int_type __c = this->uflow();
16644 if (!traits_type::eq_int_type(__c, traits_type::eof()))
16645 {
16646 traits_type::assign(*__s++, traits_type::to_char_type(__c));
16647 ++__ret;
16648 }
16649 else
16650 break;
16651 }
16652 }
16653 return __ret;
16654 }
16655
16656 template<typename _CharT, typename _Traits>
16657 streamsize
16658 basic_streambuf<_CharT, _Traits>::
16659 xsputn(const char_type* __s, streamsize __n)
16660 {
16661 streamsize __ret = 0;
16662 while (__ret < __n)
16663 {
16664 const streamsize __buf_len = this->epptr() - this->pptr();
16665 if (__buf_len)
16666 {
16667 const streamsize __remaining = __n - __ret;
16668 const streamsize __len = std::min(__buf_len, __remaining);
16669 traits_type::copy(this->pptr(), __s, __len);
16670 __ret += __len;
16671 __s += __len;
16672 this->pbump(__len);
16673 }
16674
16675 if (__ret < __n)
16676 {
16677 int_type __c = this->overflow(traits_type::to_int_type(*__s));
16678 if (!traits_type::eq_int_type(__c, traits_type::eof()))
16679 {
16680 ++__ret;
16681 ++__s;
16682 }
16683 else
16684 break;
16685 }
16686 }
16687 return __ret;
16688 }
16689
16690
16691
16692
16693 template<typename _CharT, typename _Traits>
16694 streamsize
16695 __copy_streambufs_eof(basic_streambuf<_CharT, _Traits>* __sbin,
16696 basic_streambuf<_CharT, _Traits>* __sbout,
16697 bool& __ineof)
16698 {
16699 streamsize __ret = 0;
16700 __ineof = true;
16701 typename _Traits::int_type __c = __sbin->sgetc();
16702 while (!_Traits::eq_int_type(__c, _Traits::eof()))
16703 {
16704 __c = __sbout->sputc(_Traits::to_char_type(__c));
16705 if (_Traits::eq_int_type(__c, _Traits::eof()))
16706 {
16707 __ineof = false;
16708 break;
16709 }
16710 ++__ret;
16711 __c = __sbin->snextc();
16712 }
16713 return __ret;
16714 }
16715
16716 template<typename _CharT, typename _Traits>
16717 inline streamsize
16718 __copy_streambufs(basic_streambuf<_CharT, _Traits>* __sbin,
16719 basic_streambuf<_CharT, _Traits>* __sbout)
16720 {
16721 bool __ineof;
16722 return __copy_streambufs_eof(__sbin, __sbout, __ineof);
16723 }
16724
16725
16726
16727
16728
16729 extern template class basic_streambuf<char>;
16730 extern template
16731 streamsize
16732 __copy_streambufs(basic_streambuf<char>*,
16733 basic_streambuf<char>*);
16734 extern template
16735 streamsize
16736 __copy_streambufs_eof(basic_streambuf<char>*,
16737 basic_streambuf<char>*, bool&);
16738
16739
16740 extern template class basic_streambuf<wchar_t>;
16741 extern template
16742 streamsize
16743 __copy_streambufs(basic_streambuf<wchar_t>*,
16744 basic_streambuf<wchar_t>*);
16745 extern template
16746 streamsize
16747 __copy_streambufs_eof(basic_streambuf<wchar_t>*,
16748 basic_streambuf<wchar_t>*, bool&);
16749
16750
16751
16752 }
16753 # 800 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/streambuf" 2 3
16754 # 45 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/ios" 2 3
16755 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_ios.h" 1 3
16756 # 33 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_ios.h" 3
16757 #define _BASIC_IOS_H 1
16758
16759
16760 # 36 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_ios.h" 3
16761
16762
16763
16764 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 1 3
16765 # 37 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
16766 #define _LOCALE_FACETS_H 1
16767
16768
16769 # 40 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
16770
16771 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/cwctype" 1 3
16772 # 41 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/cwctype" 3
16773
16774 # 42 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/cwctype" 3
16775
16776
16777
16778
16779 # 1 "/usr/include/wctype.h" 1 3 4
16780 # 30 "/usr/include/wctype.h" 3 4
16781 #define _WCTYPE_H 1
16782
16783
16784 #define __need_wint_t
16785 # 1 "/usr/include/wchar.h" 1 3 4
16786 # 896 "/usr/include/wchar.h" 3 4
16787 #undef __need_mbstate_t
16788 #undef __need_wint_t
16789 # 35 "/usr/include/wctype.h" 2 3 4
16790
16791
16792
16793
16794
16795
16796
16797 #undef __need_iswxxx
16798
16799
16800
16801
16802
16803 #define __iswxxx_defined 1
16804
16805
16806
16807
16808 typedef unsigned long int wctype_t;
16809
16810 # 65 "/usr/include/wctype.h" 3 4
16811 #define _ISwbit(bit) ((bit) < 8 ? (int) ((1UL << (bit)) << 24) : ((bit) < 16 ? (int) ((1UL << (bit)) << 8) : ((bit) < 24 ? (int) ((1UL << (bit)) >> 8) : (int) ((1UL << (bit)) >> 24))))
16812
16813
16814
16815
16816
16817
16818 enum
16819 {
16820 __ISwupper = 0,
16821 __ISwlower = 1,
16822 __ISwalpha = 2,
16823 __ISwdigit = 3,
16824 __ISwxdigit = 4,
16825 __ISwspace = 5,
16826 __ISwprint = 6,
16827 __ISwgraph = 7,
16828 __ISwblank = 8,
16829 __ISwcntrl = 9,
16830 __ISwpunct = 10,
16831 __ISwalnum = 11,
16832
16833 _ISwupper = ((__ISwupper) < 8 ? (int) ((1UL << (__ISwupper)) << 24) : ((__ISwupper) < 16 ? (int) ((1UL << (__ISwupper)) << 8) : ((__ISwupper) < 24 ? (int) ((1UL << (__ISwupper)) >> 8) : (int) ((1UL << (__ISwupper)) >> 24)))),
16834 _ISwlower = ((__ISwlower) < 8 ? (int) ((1UL << (__ISwlower)) << 24) : ((__ISwlower) < 16 ? (int) ((1UL << (__ISwlower)) << 8) : ((__ISwlower) < 24 ? (int) ((1UL << (__ISwlower)) >> 8) : (int) ((1UL << (__ISwlower)) >> 24)))),
16835 _ISwalpha = ((__ISwalpha) < 8 ? (int) ((1UL << (__ISwalpha)) << 24) : ((__ISwalpha) < 16 ? (int) ((1UL << (__ISwalpha)) << 8) : ((__ISwalpha) < 24 ? (int) ((1UL << (__ISwalpha)) >> 8) : (int) ((1UL << (__ISwalpha)) >> 24)))),
16836 _ISwdigit = ((__ISwdigit) < 8 ? (int) ((1UL << (__ISwdigit)) << 24) : ((__ISwdigit) < 16 ? (int) ((1UL << (__ISwdigit)) << 8) : ((__ISwdigit) < 24 ? (int) ((1UL << (__ISwdigit)) >> 8) : (int) ((1UL << (__ISwdigit)) >> 24)))),
16837 _ISwxdigit = ((__ISwxdigit) < 8 ? (int) ((1UL << (__ISwxdigit)) << 24) : ((__ISwxdigit) < 16 ? (int) ((1UL << (__ISwxdigit)) << 8) : ((__ISwxdigit) < 24 ? (int) ((1UL << (__ISwxdigit)) >> 8) : (int) ((1UL << (__ISwxdigit)) >> 24)))),
16838 _ISwspace = ((__ISwspace) < 8 ? (int) ((1UL << (__ISwspace)) << 24) : ((__ISwspace) < 16 ? (int) ((1UL << (__ISwspace)) << 8) : ((__ISwspace) < 24 ? (int) ((1UL << (__ISwspace)) >> 8) : (int) ((1UL << (__ISwspace)) >> 24)))),
16839 _ISwprint = ((__ISwprint) < 8 ? (int) ((1UL << (__ISwprint)) << 24) : ((__ISwprint) < 16 ? (int) ((1UL << (__ISwprint)) << 8) : ((__ISwprint) < 24 ? (int) ((1UL << (__ISwprint)) >> 8) : (int) ((1UL << (__ISwprint)) >> 24)))),
16840 _ISwgraph = ((__ISwgraph) < 8 ? (int) ((1UL << (__ISwgraph)) << 24) : ((__ISwgraph) < 16 ? (int) ((1UL << (__ISwgraph)) << 8) : ((__ISwgraph) < 24 ? (int) ((1UL << (__ISwgraph)) >> 8) : (int) ((1UL << (__ISwgraph)) >> 24)))),
16841 _ISwblank = ((__ISwblank) < 8 ? (int) ((1UL << (__ISwblank)) << 24) : ((__ISwblank) < 16 ? (int) ((1UL << (__ISwblank)) << 8) : ((__ISwblank) < 24 ? (int) ((1UL << (__ISwblank)) >> 8) : (int) ((1UL << (__ISwblank)) >> 24)))),
16842 _ISwcntrl = ((__ISwcntrl) < 8 ? (int) ((1UL << (__ISwcntrl)) << 24) : ((__ISwcntrl) < 16 ? (int) ((1UL << (__ISwcntrl)) << 8) : ((__ISwcntrl) < 24 ? (int) ((1UL << (__ISwcntrl)) >> 8) : (int) ((1UL << (__ISwcntrl)) >> 24)))),
16843 _ISwpunct = ((__ISwpunct) < 8 ? (int) ((1UL << (__ISwpunct)) << 24) : ((__ISwpunct) < 16 ? (int) ((1UL << (__ISwpunct)) << 8) : ((__ISwpunct) < 24 ? (int) ((1UL << (__ISwpunct)) >> 8) : (int) ((1UL << (__ISwpunct)) >> 24)))),
16844 _ISwalnum = ((__ISwalnum) < 8 ? (int) ((1UL << (__ISwalnum)) << 24) : ((__ISwalnum) < 16 ? (int) ((1UL << (__ISwalnum)) << 8) : ((__ISwalnum) < 24 ? (int) ((1UL << (__ISwalnum)) >> 8) : (int) ((1UL << (__ISwalnum)) >> 24))))
16845 };
16846
16847
16848
16849 extern "C" {
16850
16851
16852
16853
16854
16855
16856
16857
16858 extern int iswalnum (wint_t __wc) throw ();
16859
16860
16861
16862
16863
16864 extern int iswalpha (wint_t __wc) throw ();
16865
16866
16867 extern int iswcntrl (wint_t __wc) throw ();
16868
16869
16870
16871 extern int iswdigit (wint_t __wc) throw ();
16872
16873
16874
16875 extern int iswgraph (wint_t __wc) throw ();
16876
16877
16878
16879
16880 extern int iswlower (wint_t __wc) throw ();
16881
16882
16883 extern int iswprint (wint_t __wc) throw ();
16884
16885
16886
16887
16888 extern int iswpunct (wint_t __wc) throw ();
16889
16890
16891
16892
16893 extern int iswspace (wint_t __wc) throw ();
16894
16895
16896
16897
16898 extern int iswupper (wint_t __wc) throw ();
16899
16900
16901
16902
16903 extern int iswxdigit (wint_t __wc) throw ();
16904
16905
16906
16907
16908
16909 extern int iswblank (wint_t __wc) throw ();
16910 # 172 "/usr/include/wctype.h" 3 4
16911 extern wctype_t wctype (__const char *__property) throw ();
16912
16913
16914
16915 extern int iswctype (wint_t __wc, wctype_t __desc) throw ();
16916
16917
16918
16919
16920
16921
16922
16923
16924
16925
16926 typedef __const __int32_t *wctrans_t;
16927
16928
16929
16930
16931
16932
16933
16934 extern wint_t towlower (wint_t __wc) throw ();
16935
16936
16937 extern wint_t towupper (wint_t __wc) throw ();
16938
16939
16940 }
16941 # 214 "/usr/include/wctype.h" 3 4
16942 extern "C" {
16943
16944
16945
16946
16947 extern wctrans_t wctrans (__const char *__property) throw ();
16948
16949
16950 extern wint_t towctrans (wint_t __wc, wctrans_t __desc) throw ();
16951
16952
16953
16954
16955
16956
16957
16958
16959 extern int iswalnum_l (wint_t __wc, __locale_t __locale) throw ();
16960
16961
16962
16963
16964
16965 extern int iswalpha_l (wint_t __wc, __locale_t __locale) throw ();
16966
16967
16968 extern int iswcntrl_l (wint_t __wc, __locale_t __locale) throw ();
16969
16970
16971
16972 extern int iswdigit_l (wint_t __wc, __locale_t __locale) throw ();
16973
16974
16975
16976 extern int iswgraph_l (wint_t __wc, __locale_t __locale) throw ();
16977
16978
16979
16980
16981 extern int iswlower_l (wint_t __wc, __locale_t __locale) throw ();
16982
16983
16984 extern int iswprint_l (wint_t __wc, __locale_t __locale) throw ();
16985
16986
16987
16988
16989 extern int iswpunct_l (wint_t __wc, __locale_t __locale) throw ();
16990
16991
16992
16993
16994 extern int iswspace_l (wint_t __wc, __locale_t __locale) throw ();
16995
16996
16997
16998
16999 extern int iswupper_l (wint_t __wc, __locale_t __locale) throw ();
17000
17001
17002
17003
17004 extern int iswxdigit_l (wint_t __wc, __locale_t __locale) throw ();
17005
17006
17007
17008
17009 extern int iswblank_l (wint_t __wc, __locale_t __locale) throw ();
17010
17011
17012
17013 extern wctype_t wctype_l (__const char *__property, __locale_t __locale)
17014 throw ();
17015
17016
17017
17018 extern int iswctype_l (wint_t __wc, wctype_t __desc, __locale_t __locale)
17019 throw ();
17020
17021
17022
17023
17024
17025
17026
17027 extern wint_t towlower_l (wint_t __wc, __locale_t __locale) throw ();
17028
17029
17030 extern wint_t towupper_l (wint_t __wc, __locale_t __locale) throw ();
17031
17032
17033
17034 extern wctrans_t wctrans_l (__const char *__property, __locale_t __locale)
17035 throw ();
17036
17037
17038 extern wint_t towctrans_l (wint_t __wc, wctrans_t __desc,
17039 __locale_t __locale) throw ();
17040
17041
17042
17043 }
17044 # 47 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/cwctype" 2 3
17045
17046
17047
17048 #define _GLIBCXX_CWCTYPE 1
17049
17050
17051 #undef iswalnum
17052 #undef iswalpha
17053
17054 #undef iswblank
17055
17056 #undef iswcntrl
17057 #undef iswctype
17058 #undef iswdigit
17059 #undef iswgraph
17060 #undef iswlower
17061 #undef iswprint
17062 #undef iswpunct
17063 #undef iswspace
17064 #undef iswupper
17065 #undef iswxdigit
17066 #undef towctrans
17067 #undef towlower
17068 #undef towupper
17069 #undef wctrans
17070 #undef wctype
17071
17072
17073
17074 namespace std __attribute__ ((__visibility__ ("default"))) {
17075
17076 using ::wctrans_t;
17077 using ::wctype_t;
17078 using ::wint_t;
17079
17080 using ::iswalnum;
17081 using ::iswalpha;
17082
17083 using ::iswblank;
17084
17085 using ::iswcntrl;
17086 using ::iswctype;
17087 using ::iswdigit;
17088 using ::iswgraph;
17089 using ::iswlower;
17090 using ::iswprint;
17091 using ::iswpunct;
17092 using ::iswspace;
17093 using ::iswupper;
17094 using ::iswxdigit;
17095 using ::towctrans;
17096 using ::towlower;
17097 using ::towupper;
17098 using ::wctrans;
17099 using ::wctype;
17100
17101 }
17102 # 42 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 2 3
17103 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/cctype" 1 3
17104 # 41 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/cctype" 3
17105
17106 # 42 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/cctype" 3
17107 # 43 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 2 3
17108 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/x86_64-pc-linux-gnu/bits/ctype_base.h" 1 3
17109 # 37 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/x86_64-pc-linux-gnu/bits/ctype_base.h" 3
17110 namespace std __attribute__ ((__visibility__ ("default"))) {
17111
17112
17113 struct ctype_base
17114 {
17115
17116 typedef const int* __to_type;
17117
17118
17119
17120 typedef unsigned short mask;
17121 static const mask upper = _ISupper;
17122 static const mask lower = _ISlower;
17123 static const mask alpha = _ISalpha;
17124 static const mask digit = _ISdigit;
17125 static const mask xdigit = _ISxdigit;
17126 static const mask space = _ISspace;
17127 static const mask print = _ISprint;
17128 static const mask graph = _ISalpha | _ISdigit | _ISpunct;
17129 static const mask cntrl = _IScntrl;
17130 static const mask punct = _ISpunct;
17131 static const mask alnum = _ISalpha | _ISdigit;
17132 };
17133
17134 }
17135 # 44 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 2 3
17136
17137
17138
17139
17140
17141
17142 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/streambuf_iterator.h" 1 3
17143 # 33 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/streambuf_iterator.h" 3
17144 #define _STREAMBUF_ITERATOR_H 1
17145
17146
17147 # 36 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/streambuf_iterator.h" 3
17148
17149
17150
17151
17152 namespace std __attribute__ ((__visibility__ ("default"))) {
17153 # 49 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/streambuf_iterator.h" 3
17154 template<typename _CharT, typename _Traits>
17155 class istreambuf_iterator
17156 : public iterator<input_iterator_tag, _CharT, typename _Traits::off_type,
17157 _CharT*, _CharT&>
17158 {
17159 public:
17160
17161
17162
17163 typedef _CharT char_type;
17164 typedef _Traits traits_type;
17165 typedef typename _Traits::int_type int_type;
17166 typedef basic_streambuf<_CharT, _Traits> streambuf_type;
17167 typedef basic_istream<_CharT, _Traits> istream_type;
17168
17169
17170 template<typename _CharT2>
17171 friend typename __gnu_cxx::__enable_if<__is_char<_CharT2>::__value,
17172 ostreambuf_iterator<_CharT2> >::__type
17173 copy(istreambuf_iterator<_CharT2>, istreambuf_iterator<_CharT2>,
17174 ostreambuf_iterator<_CharT2>);
17175
17176 template<bool _IsMove, typename _CharT2>
17177 friend typename __gnu_cxx::__enable_if<__is_char<_CharT2>::__value,
17178 _CharT2*>::__type
17179 __copy_move_a2(istreambuf_iterator<_CharT2>,
17180 istreambuf_iterator<_CharT2>, _CharT2*);
17181
17182 template<typename _CharT2>
17183 friend typename __gnu_cxx::__enable_if<__is_char<_CharT2>::__value,
17184 istreambuf_iterator<_CharT2> >::__type
17185 find(istreambuf_iterator<_CharT2>, istreambuf_iterator<_CharT2>,
17186 const _CharT2&);
17187
17188 private:
17189
17190
17191
17192
17193
17194
17195
17196 mutable streambuf_type* _M_sbuf;
17197 mutable int_type _M_c;
17198
17199 public:
17200
17201 istreambuf_iterator() throw()
17202 : _M_sbuf(0), _M_c(traits_type::eof()) { }
17203
17204
17205 istreambuf_iterator(istream_type& __s) throw()
17206 : _M_sbuf(__s.rdbuf()), _M_c(traits_type::eof()) { }
17207
17208
17209 istreambuf_iterator(streambuf_type* __s) throw()
17210 : _M_sbuf(__s), _M_c(traits_type::eof()) { }
17211
17212
17213
17214
17215 char_type
17216 operator*() const
17217 {
17218
17219
17220
17221
17222
17223
17224
17225 return traits_type::to_char_type(_M_get());
17226 }
17227
17228
17229 istreambuf_iterator&
17230 operator++()
17231 {
17232
17233
17234 ;
17235 if (_M_sbuf)
17236 {
17237 _M_sbuf->sbumpc();
17238 _M_c = traits_type::eof();
17239 }
17240 return *this;
17241 }
17242
17243
17244 istreambuf_iterator
17245 operator++(int)
17246 {
17247
17248
17249 ;
17250
17251 istreambuf_iterator __old = *this;
17252 if (_M_sbuf)
17253 {
17254 __old._M_c = _M_sbuf->sbumpc();
17255 _M_c = traits_type::eof();
17256 }
17257 return __old;
17258 }
17259
17260
17261
17262
17263
17264 bool
17265 equal(const istreambuf_iterator& __b) const
17266 { return _M_at_eof() == __b._M_at_eof(); }
17267
17268 private:
17269 int_type
17270 _M_get() const
17271 {
17272 const int_type __eof = traits_type::eof();
17273 int_type __ret = __eof;
17274 if (_M_sbuf)
17275 {
17276 if (!traits_type::eq_int_type(_M_c, __eof))
17277 __ret = _M_c;
17278 else if (!traits_type::eq_int_type((__ret = _M_sbuf->sgetc()),
17279 __eof))
17280 _M_c = __ret;
17281 else
17282 _M_sbuf = 0;
17283 }
17284 return __ret;
17285 }
17286
17287 bool
17288 _M_at_eof() const
17289 {
17290 const int_type __eof = traits_type::eof();
17291 return traits_type::eq_int_type(_M_get(), __eof);
17292 }
17293 };
17294
17295 template<typename _CharT, typename _Traits>
17296 inline bool
17297 operator==(const istreambuf_iterator<_CharT, _Traits>& __a,
17298 const istreambuf_iterator<_CharT, _Traits>& __b)
17299 { return __a.equal(__b); }
17300
17301 template<typename _CharT, typename _Traits>
17302 inline bool
17303 operator!=(const istreambuf_iterator<_CharT, _Traits>& __a,
17304 const istreambuf_iterator<_CharT, _Traits>& __b)
17305 { return !__a.equal(__b); }
17306
17307
17308 template<typename _CharT, typename _Traits>
17309 class ostreambuf_iterator
17310 : public iterator<output_iterator_tag, void, void, void, void>
17311 {
17312 public:
17313
17314
17315
17316 typedef _CharT char_type;
17317 typedef _Traits traits_type;
17318 typedef basic_streambuf<_CharT, _Traits> streambuf_type;
17319 typedef basic_ostream<_CharT, _Traits> ostream_type;
17320
17321
17322 template<typename _CharT2>
17323 friend typename __gnu_cxx::__enable_if<__is_char<_CharT2>::__value,
17324 ostreambuf_iterator<_CharT2> >::__type
17325 copy(istreambuf_iterator<_CharT2>, istreambuf_iterator<_CharT2>,
17326 ostreambuf_iterator<_CharT2>);
17327
17328 private:
17329 streambuf_type* _M_sbuf;
17330 bool _M_failed;
17331
17332 public:
17333
17334 ostreambuf_iterator(ostream_type& __s) throw ()
17335 : _M_sbuf(__s.rdbuf()), _M_failed(!_M_sbuf) { }
17336
17337
17338 ostreambuf_iterator(streambuf_type* __s) throw ()
17339 : _M_sbuf(__s), _M_failed(!_M_sbuf) { }
17340
17341
17342 ostreambuf_iterator&
17343 operator=(_CharT __c)
17344 {
17345 if (!_M_failed &&
17346 _Traits::eq_int_type(_M_sbuf->sputc(__c), _Traits::eof()))
17347 _M_failed = true;
17348 return *this;
17349 }
17350
17351
17352 ostreambuf_iterator&
17353 operator*()
17354 { return *this; }
17355
17356
17357 ostreambuf_iterator&
17358 operator++(int)
17359 { return *this; }
17360
17361
17362 ostreambuf_iterator&
17363 operator++()
17364 { return *this; }
17365
17366
17367 bool
17368 failed() const throw()
17369 { return _M_failed; }
17370
17371 ostreambuf_iterator&
17372 _M_put(const _CharT* __ws, streamsize __len)
17373 {
17374 if (__builtin_expect(!_M_failed, true)
17375 && __builtin_expect(this->_M_sbuf->sputn(__ws, __len) != __len,
17376 false))
17377 _M_failed = true;
17378 return *this;
17379 }
17380 };
17381
17382
17383 template<typename _CharT>
17384 typename __gnu_cxx::__enable_if<__is_char<_CharT>::__value,
17385 ostreambuf_iterator<_CharT> >::__type
17386 copy(istreambuf_iterator<_CharT> __first,
17387 istreambuf_iterator<_CharT> __last,
17388 ostreambuf_iterator<_CharT> __result)
17389 {
17390 if (__first._M_sbuf && !__last._M_sbuf && !__result._M_failed)
17391 {
17392 bool __ineof;
17393 __copy_streambufs_eof(__first._M_sbuf, __result._M_sbuf, __ineof);
17394 if (!__ineof)
17395 __result._M_failed = true;
17396 }
17397 return __result;
17398 }
17399
17400 template<bool _IsMove, typename _CharT>
17401 typename __gnu_cxx::__enable_if<__is_char<_CharT>::__value,
17402 ostreambuf_iterator<_CharT> >::__type
17403 __copy_move_a2(_CharT* __first, _CharT* __last,
17404 ostreambuf_iterator<_CharT> __result)
17405 {
17406 const streamsize __num = __last - __first;
17407 if (__num > 0)
17408 __result._M_put(__first, __num);
17409 return __result;
17410 }
17411
17412 template<bool _IsMove, typename _CharT>
17413 typename __gnu_cxx::__enable_if<__is_char<_CharT>::__value,
17414 ostreambuf_iterator<_CharT> >::__type
17415 __copy_move_a2(const _CharT* __first, const _CharT* __last,
17416 ostreambuf_iterator<_CharT> __result)
17417 {
17418 const streamsize __num = __last - __first;
17419 if (__num > 0)
17420 __result._M_put(__first, __num);
17421 return __result;
17422 }
17423
17424 template<bool _IsMove, typename _CharT>
17425 typename __gnu_cxx::__enable_if<__is_char<_CharT>::__value,
17426 _CharT*>::__type
17427 __copy_move_a2(istreambuf_iterator<_CharT> __first,
17428 istreambuf_iterator<_CharT> __last, _CharT* __result)
17429 {
17430 typedef istreambuf_iterator<_CharT> __is_iterator_type;
17431 typedef typename __is_iterator_type::traits_type traits_type;
17432 typedef typename __is_iterator_type::streambuf_type streambuf_type;
17433 typedef typename traits_type::int_type int_type;
17434
17435 if (__first._M_sbuf && !__last._M_sbuf)
17436 {
17437 streambuf_type* __sb = __first._M_sbuf;
17438 int_type __c = __sb->sgetc();
17439 while (!traits_type::eq_int_type(__c, traits_type::eof()))
17440 {
17441 const streamsize __n = __sb->egptr() - __sb->gptr();
17442 if (__n > 1)
17443 {
17444 traits_type::copy(__result, __sb->gptr(), __n);
17445 __sb->gbump(__n);
17446 __result += __n;
17447 __c = __sb->underflow();
17448 }
17449 else
17450 {
17451 *__result++ = traits_type::to_char_type(__c);
17452 __c = __sb->snextc();
17453 }
17454 }
17455 }
17456 return __result;
17457 }
17458
17459 template<typename _CharT>
17460 typename __gnu_cxx::__enable_if<__is_char<_CharT>::__value,
17461 istreambuf_iterator<_CharT> >::__type
17462 find(istreambuf_iterator<_CharT> __first,
17463 istreambuf_iterator<_CharT> __last, const _CharT& __val)
17464 {
17465 typedef istreambuf_iterator<_CharT> __is_iterator_type;
17466 typedef typename __is_iterator_type::traits_type traits_type;
17467 typedef typename __is_iterator_type::streambuf_type streambuf_type;
17468 typedef typename traits_type::int_type int_type;
17469
17470 if (__first._M_sbuf && !__last._M_sbuf)
17471 {
17472 const int_type __ival = traits_type::to_int_type(__val);
17473 streambuf_type* __sb = __first._M_sbuf;
17474 int_type __c = __sb->sgetc();
17475 while (!traits_type::eq_int_type(__c, traits_type::eof())
17476 && !traits_type::eq_int_type(__c, __ival))
17477 {
17478 streamsize __n = __sb->egptr() - __sb->gptr();
17479 if (__n > 1)
17480 {
17481 const _CharT* __p = traits_type::find(__sb->gptr(),
17482 __n, __val);
17483 if (__p)
17484 __n = __p - __sb->gptr();
17485 __sb->gbump(__n);
17486 __c = __sb->sgetc();
17487 }
17488 else
17489 __c = __sb->snextc();
17490 }
17491
17492 if (!traits_type::eq_int_type(__c, traits_type::eof()))
17493 __first._M_c = __c;
17494 else
17495 __first._M_sbuf = 0;
17496 }
17497 return __first;
17498 }
17499
17500
17501
17502 }
17503 # 51 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 2 3
17504
17505 namespace std __attribute__ ((__visibility__ ("default"))) {
17506
17507
17508
17509 #define _GLIBCXX_NUM_FACETS 28
17510
17511
17512
17513
17514
17515
17516
17517 template<typename _Tp>
17518 void
17519 __convert_to_v(const char*, _Tp&, ios_base::iostate&,
17520 const __c_locale&) throw();
17521
17522
17523 template<>
17524 void
17525 __convert_to_v(const char*, float&, ios_base::iostate&,
17526 const __c_locale&) throw();
17527
17528 template<>
17529 void
17530 __convert_to_v(const char*, double&, ios_base::iostate&,
17531 const __c_locale&) throw();
17532
17533 template<>
17534 void
17535 __convert_to_v(const char*, long double&, ios_base::iostate&,
17536 const __c_locale&) throw();
17537
17538
17539
17540 template<typename _CharT, typename _Traits>
17541 struct __pad
17542 {
17543 static void
17544 _S_pad(ios_base& __io, _CharT __fill, _CharT* __news,
17545 const _CharT* __olds, streamsize __newlen, streamsize __oldlen);
17546 };
17547
17548
17549
17550
17551
17552
17553 template<typename _CharT>
17554 _CharT*
17555 __add_grouping(_CharT* __s, _CharT __sep,
17556 const char* __gbeg, size_t __gsize,
17557 const _CharT* __first, const _CharT* __last);
17558
17559
17560
17561
17562 template<typename _CharT>
17563 inline
17564 ostreambuf_iterator<_CharT>
17565 __write(ostreambuf_iterator<_CharT> __s, const _CharT* __ws, int __len)
17566 {
17567 __s._M_put(__ws, __len);
17568 return __s;
17569 }
17570
17571
17572 template<typename _CharT, typename _OutIter>
17573 inline
17574 _OutIter
17575 __write(_OutIter __s, const _CharT* __ws, int __len)
17576 {
17577 for (int __j = 0; __j < __len; __j++, ++__s)
17578 *__s = __ws[__j];
17579 return __s;
17580 }
17581 # 142 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
17582 template<typename _CharT>
17583 class __ctype_abstract_base : public locale::facet, public ctype_base
17584 {
17585 public:
17586
17587
17588 typedef _CharT char_type;
17589 # 160 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
17590 bool
17591 is(mask __m, char_type __c) const
17592 { return this->do_is(__m, __c); }
17593 # 177 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
17594 const char_type*
17595 is(const char_type *__lo, const char_type *__hi, mask *__vec) const
17596 { return this->do_is(__lo, __hi, __vec); }
17597 # 193 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
17598 const char_type*
17599 scan_is(mask __m, const char_type* __lo, const char_type* __hi) const
17600 { return this->do_scan_is(__m, __lo, __hi); }
17601 # 209 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
17602 const char_type*
17603 scan_not(mask __m, const char_type* __lo, const char_type* __hi) const
17604 { return this->do_scan_not(__m, __lo, __hi); }
17605 # 223 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
17606 char_type
17607 toupper(char_type __c) const
17608 { return this->do_toupper(__c); }
17609 # 238 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
17610 const char_type*
17611 toupper(char_type *__lo, const char_type* __hi) const
17612 { return this->do_toupper(__lo, __hi); }
17613 # 252 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
17614 char_type
17615 tolower(char_type __c) const
17616 { return this->do_tolower(__c); }
17617 # 267 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
17618 const char_type*
17619 tolower(char_type* __lo, const char_type* __hi) const
17620 { return this->do_tolower(__lo, __hi); }
17621 # 284 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
17622 char_type
17623 widen(char __c) const
17624 { return this->do_widen(__c); }
17625 # 303 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
17626 const char*
17627 widen(const char* __lo, const char* __hi, char_type* __to) const
17628 { return this->do_widen(__lo, __hi, __to); }
17629 # 322 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
17630 char
17631 narrow(char_type __c, char __dfault) const
17632 { return this->do_narrow(__c, __dfault); }
17633 # 344 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
17634 const char_type*
17635 narrow(const char_type* __lo, const char_type* __hi,
17636 char __dfault, char *__to) const
17637 { return this->do_narrow(__lo, __hi, __dfault, __to); }
17638
17639 protected:
17640 explicit
17641 __ctype_abstract_base(size_t __refs = 0): facet(__refs) { }
17642
17643 virtual
17644 ~__ctype_abstract_base() { }
17645 # 369 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
17646 virtual bool
17647 do_is(mask __m, char_type __c) const = 0;
17648 # 388 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
17649 virtual const char_type*
17650 do_is(const char_type* __lo, const char_type* __hi,
17651 mask* __vec) const = 0;
17652 # 407 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
17653 virtual const char_type*
17654 do_scan_is(mask __m, const char_type* __lo,
17655 const char_type* __hi) const = 0;
17656 # 426 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
17657 virtual const char_type*
17658 do_scan_not(mask __m, const char_type* __lo,
17659 const char_type* __hi) const = 0;
17660 # 444 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
17661 virtual char_type
17662 do_toupper(char_type) const = 0;
17663 # 461 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
17664 virtual const char_type*
17665 do_toupper(char_type* __lo, const char_type* __hi) const = 0;
17666 # 477 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
17667 virtual char_type
17668 do_tolower(char_type) const = 0;
17669 # 494 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
17670 virtual const char_type*
17671 do_tolower(char_type* __lo, const char_type* __hi) const = 0;
17672 # 513 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
17673 virtual char_type
17674 do_widen(char) const = 0;
17675 # 534 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
17676 virtual const char*
17677 do_widen(const char* __lo, const char* __hi,
17678 char_type* __dest) const = 0;
17679 # 556 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
17680 virtual char
17681 do_narrow(char_type, char __dfault) const = 0;
17682 # 580 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
17683 virtual const char_type*
17684 do_narrow(const char_type* __lo, const char_type* __hi,
17685 char __dfault, char* __dest) const = 0;
17686 };
17687 # 603 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
17688 template<typename _CharT>
17689 class ctype : public __ctype_abstract_base<_CharT>
17690 {
17691 public:
17692
17693 typedef _CharT char_type;
17694 typedef typename __ctype_abstract_base<_CharT>::mask mask;
17695
17696
17697 static locale::id id;
17698
17699 explicit
17700 ctype(size_t __refs = 0) : __ctype_abstract_base<_CharT>(__refs) { }
17701
17702 protected:
17703 virtual
17704 ~ctype();
17705
17706 virtual bool
17707 do_is(mask __m, char_type __c) const;
17708
17709 virtual const char_type*
17710 do_is(const char_type* __lo, const char_type* __hi, mask* __vec) const;
17711
17712 virtual const char_type*
17713 do_scan_is(mask __m, const char_type* __lo, const char_type* __hi) const;
17714
17715 virtual const char_type*
17716 do_scan_not(mask __m, const char_type* __lo,
17717 const char_type* __hi) const;
17718
17719 virtual char_type
17720 do_toupper(char_type __c) const;
17721
17722 virtual const char_type*
17723 do_toupper(char_type* __lo, const char_type* __hi) const;
17724
17725 virtual char_type
17726 do_tolower(char_type __c) const;
17727
17728 virtual const char_type*
17729 do_tolower(char_type* __lo, const char_type* __hi) const;
17730
17731 virtual char_type
17732 do_widen(char __c) const;
17733
17734 virtual const char*
17735 do_widen(const char* __lo, const char* __hi, char_type* __dest) const;
17736
17737 virtual char
17738 do_narrow(char_type, char __dfault) const;
17739
17740 virtual const char_type*
17741 do_narrow(const char_type* __lo, const char_type* __hi,
17742 char __dfault, char* __dest) const;
17743 };
17744
17745 template<typename _CharT>
17746 locale::id ctype<_CharT>::id;
17747 # 672 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
17748 template<>
17749 class ctype<char> : public locale::facet, public ctype_base
17750 {
17751 public:
17752
17753
17754 typedef char char_type;
17755
17756 protected:
17757
17758 __c_locale _M_c_locale_ctype;
17759 bool _M_del;
17760 __to_type _M_toupper;
17761 __to_type _M_tolower;
17762 const mask* _M_table;
17763 mutable char _M_widen_ok;
17764 mutable char _M_widen[1 + static_cast<unsigned char>(-1)];
17765 mutable char _M_narrow[1 + static_cast<unsigned char>(-1)];
17766 mutable char _M_narrow_ok;
17767
17768
17769 public:
17770
17771 static locale::id id;
17772
17773 static const size_t table_size = 1 + static_cast<unsigned char>(-1);
17774 # 709 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
17775 explicit
17776 ctype(const mask* __table = 0, bool __del = false, size_t __refs = 0);
17777 # 722 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
17778 explicit
17779 ctype(__c_locale __cloc, const mask* __table = 0, bool __del = false,
17780 size_t __refs = 0);
17781 # 735 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
17782 inline bool
17783 is(mask __m, char __c) const;
17784 # 750 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
17785 inline const char*
17786 is(const char* __lo, const char* __hi, mask* __vec) const;
17787 # 764 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
17788 inline const char*
17789 scan_is(mask __m, const char* __lo, const char* __hi) const;
17790 # 778 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
17791 inline const char*
17792 scan_not(mask __m, const char* __lo, const char* __hi) const;
17793 # 793 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
17794 char_type
17795 toupper(char_type __c) const
17796 { return this->do_toupper(__c); }
17797 # 810 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
17798 const char_type*
17799 toupper(char_type *__lo, const char_type* __hi) const
17800 { return this->do_toupper(__lo, __hi); }
17801 # 826 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
17802 char_type
17803 tolower(char_type __c) const
17804 { return this->do_tolower(__c); }
17805 # 843 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
17806 const char_type*
17807 tolower(char_type* __lo, const char_type* __hi) const
17808 { return this->do_tolower(__lo, __hi); }
17809 # 863 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
17810 char_type
17811 widen(char __c) const
17812 {
17813 if (_M_widen_ok)
17814 return _M_widen[static_cast<unsigned char>(__c)];
17815 this->_M_widen_init();
17816 return this->do_widen(__c);
17817 }
17818 # 890 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
17819 const char*
17820 widen(const char* __lo, const char* __hi, char_type* __to) const
17821 {
17822 if (_M_widen_ok == 1)
17823 {
17824 __builtin_memcpy(__to, __lo, __hi - __lo);
17825 return __hi;
17826 }
17827 if (!_M_widen_ok)
17828 _M_widen_init();
17829 return this->do_widen(__lo, __hi, __to);
17830 }
17831 # 921 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
17832 char
17833 narrow(char_type __c, char __dfault) const
17834 {
17835 if (_M_narrow[static_cast<unsigned char>(__c)])
17836 return _M_narrow[static_cast<unsigned char>(__c)];
17837 const char __t = do_narrow(__c, __dfault);
17838 if (__t != __dfault)
17839 _M_narrow[static_cast<unsigned char>(__c)] = __t;
17840 return __t;
17841 }
17842 # 954 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
17843 const char_type*
17844 narrow(const char_type* __lo, const char_type* __hi,
17845 char __dfault, char *__to) const
17846 {
17847 if (__builtin_expect(_M_narrow_ok == 1, true))
17848 {
17849 __builtin_memcpy(__to, __lo, __hi - __lo);
17850 return __hi;
17851 }
17852 if (!_M_narrow_ok)
17853 _M_narrow_init();
17854 return this->do_narrow(__lo, __hi, __dfault, __to);
17855 }
17856
17857
17858
17859
17860
17861 const mask*
17862 table() const throw()
17863 { return _M_table; }
17864
17865
17866 static const mask*
17867 classic_table() throw();
17868 protected:
17869
17870
17871
17872
17873
17874
17875
17876 virtual
17877 ~ctype();
17878 # 1003 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
17879 virtual char_type
17880 do_toupper(char_type) const;
17881 # 1020 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
17882 virtual const char_type*
17883 do_toupper(char_type* __lo, const char_type* __hi) const;
17884 # 1036 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
17885 virtual char_type
17886 do_tolower(char_type) const;
17887 # 1053 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
17888 virtual const char_type*
17889 do_tolower(char_type* __lo, const char_type* __hi) const;
17890 # 1073 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
17891 virtual char_type
17892 do_widen(char __c) const
17893 { return __c; }
17894 # 1096 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
17895 virtual const char*
17896 do_widen(const char* __lo, const char* __hi, char_type* __dest) const
17897 {
17898 __builtin_memcpy(__dest, __lo, __hi - __lo);
17899 return __hi;
17900 }
17901 # 1122 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
17902 virtual char
17903 do_narrow(char_type __c, char) const
17904 { return __c; }
17905 # 1148 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
17906 virtual const char_type*
17907 do_narrow(const char_type* __lo, const char_type* __hi,
17908 char, char* __dest) const
17909 {
17910 __builtin_memcpy(__dest, __lo, __hi - __lo);
17911 return __hi;
17912 }
17913
17914 private:
17915 void _M_narrow_init() const;
17916 void _M_widen_init() const;
17917 };
17918 # 1173 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
17919 template<>
17920 class ctype<wchar_t> : public __ctype_abstract_base<wchar_t>
17921 {
17922 public:
17923
17924
17925 typedef wchar_t char_type;
17926 typedef wctype_t __wmask_type;
17927
17928 protected:
17929 __c_locale _M_c_locale_ctype;
17930
17931
17932 bool _M_narrow_ok;
17933 char _M_narrow[128];
17934 wint_t _M_widen[1 + static_cast<unsigned char>(-1)];
17935
17936
17937 mask _M_bit[16];
17938 __wmask_type _M_wmask[16];
17939
17940 public:
17941
17942
17943 static locale::id id;
17944 # 1206 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
17945 explicit
17946 ctype(size_t __refs = 0);
17947 # 1217 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
17948 explicit
17949 ctype(__c_locale __cloc, size_t __refs = 0);
17950
17951 protected:
17952 __wmask_type
17953 _M_convert_to_wmask(const mask __m) const throw();
17954
17955
17956 virtual
17957 ~ctype();
17958 # 1241 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
17959 virtual bool
17960 do_is(mask __m, char_type __c) const;
17961 # 1260 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
17962 virtual const char_type*
17963 do_is(const char_type* __lo, const char_type* __hi, mask* __vec) const;
17964 # 1278 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
17965 virtual const char_type*
17966 do_scan_is(mask __m, const char_type* __lo, const char_type* __hi) const;
17967 # 1296 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
17968 virtual const char_type*
17969 do_scan_not(mask __m, const char_type* __lo,
17970 const char_type* __hi) const;
17971 # 1313 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
17972 virtual char_type
17973 do_toupper(char_type) const;
17974 # 1330 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
17975 virtual const char_type*
17976 do_toupper(char_type* __lo, const char_type* __hi) const;
17977 # 1346 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
17978 virtual char_type
17979 do_tolower(char_type) const;
17980 # 1363 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
17981 virtual const char_type*
17982 do_tolower(char_type* __lo, const char_type* __hi) const;
17983 # 1383 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
17984 virtual char_type
17985 do_widen(char) const;
17986 # 1405 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
17987 virtual const char*
17988 do_widen(const char* __lo, const char* __hi, char_type* __dest) const;
17989 # 1428 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
17990 virtual char
17991 do_narrow(char_type, char __dfault) const;
17992 # 1454 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
17993 virtual const char_type*
17994 do_narrow(const char_type* __lo, const char_type* __hi,
17995 char __dfault, char* __dest) const;
17996
17997
17998 void
17999 _M_initialize_ctype() throw();
18000 };
18001
18002
18003
18004 template<typename _CharT>
18005 class ctype_byname : public ctype<_CharT>
18006 {
18007 public:
18008 typedef typename ctype<_CharT>::mask mask;
18009
18010 explicit
18011 ctype_byname(const char* __s, size_t __refs = 0);
18012
18013 protected:
18014 virtual
18015 ~ctype_byname() { };
18016 };
18017
18018
18019 template<>
18020 class ctype_byname<char> : public ctype<char>
18021 {
18022 public:
18023 explicit
18024 ctype_byname(const char* __s, size_t __refs = 0);
18025
18026 protected:
18027 virtual
18028 ~ctype_byname();
18029 };
18030
18031
18032 template<>
18033 class ctype_byname<wchar_t> : public ctype<wchar_t>
18034 {
18035 public:
18036 explicit
18037 ctype_byname(const char* __s, size_t __refs = 0);
18038
18039 protected:
18040 virtual
18041 ~ctype_byname();
18042 };
18043
18044
18045 }
18046
18047
18048 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/x86_64-pc-linux-gnu/bits/ctype_inline.h" 1 3
18049 # 37 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/x86_64-pc-linux-gnu/bits/ctype_inline.h" 3
18050 namespace std __attribute__ ((__visibility__ ("default"))) {
18051
18052 bool
18053 ctype<char>::
18054 is(mask __m, char __c) const
18055 { return _M_table[static_cast<unsigned char>(__c)] & __m; }
18056
18057 const char*
18058 ctype<char>::
18059 is(const char* __low, const char* __high, mask* __vec) const
18060 {
18061 while (__low < __high)
18062 *__vec++ = _M_table[static_cast<unsigned char>(*__low++)];
18063 return __high;
18064 }
18065
18066 const char*
18067 ctype<char>::
18068 scan_is(mask __m, const char* __low, const char* __high) const
18069 {
18070 while (__low < __high
18071 && !(_M_table[static_cast<unsigned char>(*__low)] & __m))
18072 ++__low;
18073 return __low;
18074 }
18075
18076 const char*
18077 ctype<char>::
18078 scan_not(mask __m, const char* __low, const char* __high) const
18079 {
18080 while (__low < __high
18081 && (_M_table[static_cast<unsigned char>(*__low)] & __m) != 0)
18082 ++__low;
18083 return __low;
18084 }
18085
18086 }
18087 # 1510 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 2 3
18088
18089 namespace std __attribute__ ((__visibility__ ("default"))) {
18090
18091
18092 class __num_base
18093 {
18094 public:
18095
18096
18097 enum
18098 {
18099 _S_ominus,
18100 _S_oplus,
18101 _S_ox,
18102 _S_oX,
18103 _S_odigits,
18104 _S_odigits_end = _S_odigits + 16,
18105 _S_oudigits = _S_odigits_end,
18106 _S_oudigits_end = _S_oudigits + 16,
18107 _S_oe = _S_odigits + 14,
18108 _S_oE = _S_oudigits + 14,
18109 _S_oend = _S_oudigits_end
18110 };
18111
18112
18113
18114
18115
18116
18117 static const char* _S_atoms_out;
18118
18119
18120
18121 static const char* _S_atoms_in;
18122
18123 enum
18124 {
18125 _S_iminus,
18126 _S_iplus,
18127 _S_ix,
18128 _S_iX,
18129 _S_izero,
18130 _S_ie = _S_izero + 14,
18131 _S_iE = _S_izero + 20,
18132 _S_iend = 26
18133 };
18134
18135
18136
18137 static void
18138 _S_format_float(const ios_base& __io, char* __fptr, char __mod) throw();
18139 };
18140
18141 template<typename _CharT>
18142 struct __numpunct_cache : public locale::facet
18143 {
18144 const char* _M_grouping;
18145 size_t _M_grouping_size;
18146 bool _M_use_grouping;
18147 const _CharT* _M_truename;
18148 size_t _M_truename_size;
18149 const _CharT* _M_falsename;
18150 size_t _M_falsename_size;
18151 _CharT _M_decimal_point;
18152 _CharT _M_thousands_sep;
18153
18154
18155
18156
18157
18158 _CharT _M_atoms_out[__num_base::_S_oend];
18159
18160
18161
18162
18163
18164 _CharT _M_atoms_in[__num_base::_S_iend];
18165
18166 bool _M_allocated;
18167
18168 __numpunct_cache(size_t __refs = 0) : facet(__refs),
18169 _M_grouping(__null), _M_grouping_size(0), _M_use_grouping(false),
18170 _M_truename(__null), _M_truename_size(0), _M_falsename(__null),
18171 _M_falsename_size(0), _M_decimal_point(_CharT()),
18172 _M_thousands_sep(_CharT()), _M_allocated(false)
18173 { }
18174
18175 ~__numpunct_cache();
18176
18177 void
18178 _M_cache(const locale& __loc);
18179
18180 private:
18181 __numpunct_cache&
18182 operator=(const __numpunct_cache&);
18183
18184 explicit
18185 __numpunct_cache(const __numpunct_cache&);
18186 };
18187
18188 template<typename _CharT>
18189 __numpunct_cache<_CharT>::~__numpunct_cache()
18190 {
18191 if (_M_allocated)
18192 {
18193 delete [] _M_grouping;
18194 delete [] _M_truename;
18195 delete [] _M_falsename;
18196 }
18197 }
18198 # 1635 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
18199 template<typename _CharT>
18200 class numpunct : public locale::facet
18201 {
18202 public:
18203
18204
18205
18206 typedef _CharT char_type;
18207 typedef basic_string<_CharT> string_type;
18208
18209 typedef __numpunct_cache<_CharT> __cache_type;
18210
18211 protected:
18212 __cache_type* _M_data;
18213
18214 public:
18215
18216 static locale::id id;
18217
18218
18219
18220
18221
18222
18223 explicit
18224 numpunct(size_t __refs = 0) : facet(__refs), _M_data(__null)
18225 { _M_initialize_numpunct(); }
18226 # 1672 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
18227 explicit
18228 numpunct(__cache_type* __cache, size_t __refs = 0)
18229 : facet(__refs), _M_data(__cache)
18230 { _M_initialize_numpunct(); }
18231 # 1686 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
18232 explicit
18233 numpunct(__c_locale __cloc, size_t __refs = 0)
18234 : facet(__refs), _M_data(__null)
18235 { _M_initialize_numpunct(__cloc); }
18236 # 1700 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
18237 char_type
18238 decimal_point() const
18239 { return this->do_decimal_point(); }
18240 # 1713 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
18241 char_type
18242 thousands_sep() const
18243 { return this->do_thousands_sep(); }
18244 # 1744 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
18245 string
18246 grouping() const
18247 { return this->do_grouping(); }
18248 # 1757 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
18249 string_type
18250 truename() const
18251 { return this->do_truename(); }
18252 # 1770 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
18253 string_type
18254 falsename() const
18255 { return this->do_falsename(); }
18256
18257 protected:
18258
18259 virtual
18260 ~numpunct();
18261 # 1787 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
18262 virtual char_type
18263 do_decimal_point() const
18264 { return _M_data->_M_decimal_point; }
18265 # 1799 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
18266 virtual char_type
18267 do_thousands_sep() const
18268 { return _M_data->_M_thousands_sep; }
18269 # 1812 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
18270 virtual string
18271 do_grouping() const
18272 { return _M_data->_M_grouping; }
18273 # 1825 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
18274 virtual string_type
18275 do_truename() const
18276 { return _M_data->_M_truename; }
18277 # 1838 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
18278 virtual string_type
18279 do_falsename() const
18280 { return _M_data->_M_falsename; }
18281
18282
18283 void
18284 _M_initialize_numpunct(__c_locale __cloc = __null);
18285 };
18286
18287 template<typename _CharT>
18288 locale::id numpunct<_CharT>::id;
18289
18290 template<>
18291 numpunct<char>::~numpunct();
18292
18293 template<>
18294 void
18295 numpunct<char>::_M_initialize_numpunct(__c_locale __cloc);
18296
18297
18298 template<>
18299 numpunct<wchar_t>::~numpunct();
18300
18301 template<>
18302 void
18303 numpunct<wchar_t>::_M_initialize_numpunct(__c_locale __cloc);
18304
18305
18306
18307 template<typename _CharT>
18308 class numpunct_byname : public numpunct<_CharT>
18309 {
18310 public:
18311 typedef _CharT char_type;
18312 typedef basic_string<_CharT> string_type;
18313
18314 explicit
18315 numpunct_byname(const char* __s, size_t __refs = 0)
18316 : numpunct<_CharT>(__refs)
18317 {
18318 if (__builtin_strcmp(__s, "C") != 0
18319 && __builtin_strcmp(__s, "POSIX") != 0)
18320 {
18321 __c_locale __tmp;
18322 this->_S_create_c_locale(__tmp, __s);
18323 this->_M_initialize_numpunct(__tmp);
18324 this->_S_destroy_c_locale(__tmp);
18325 }
18326 }
18327
18328 protected:
18329 virtual
18330 ~numpunct_byname() { }
18331 };
18332
18333
18334 # 1908 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
18335 template<typename _CharT, typename _InIter>
18336 class num_get : public locale::facet
18337 {
18338 public:
18339
18340
18341
18342 typedef _CharT char_type;
18343 typedef _InIter iter_type;
18344
18345
18346
18347 static locale::id id;
18348 # 1929 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
18349 explicit
18350 num_get(size_t __refs = 0) : facet(__refs) { }
18351 # 1955 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
18352 iter_type
18353 get(iter_type __in, iter_type __end, ios_base& __io,
18354 ios_base::iostate& __err, bool& __v) const
18355 { return this->do_get(__in, __end, __io, __err, __v); }
18356 # 1991 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
18357 iter_type
18358 get(iter_type __in, iter_type __end, ios_base& __io,
18359 ios_base::iostate& __err, long& __v) const
18360 { return this->do_get(__in, __end, __io, __err, __v); }
18361
18362 iter_type
18363 get(iter_type __in, iter_type __end, ios_base& __io,
18364 ios_base::iostate& __err, unsigned short& __v) const
18365 { return this->do_get(__in, __end, __io, __err, __v); }
18366
18367 iter_type
18368 get(iter_type __in, iter_type __end, ios_base& __io,
18369 ios_base::iostate& __err, unsigned int& __v) const
18370 { return this->do_get(__in, __end, __io, __err, __v); }
18371
18372 iter_type
18373 get(iter_type __in, iter_type __end, ios_base& __io,
18374 ios_base::iostate& __err, unsigned long& __v) const
18375 { return this->do_get(__in, __end, __io, __err, __v); }
18376
18377
18378 iter_type
18379 get(iter_type __in, iter_type __end, ios_base& __io,
18380 ios_base::iostate& __err, long long& __v) const
18381 { return this->do_get(__in, __end, __io, __err, __v); }
18382
18383 iter_type
18384 get(iter_type __in, iter_type __end, ios_base& __io,
18385 ios_base::iostate& __err, unsigned long long& __v) const
18386 { return this->do_get(__in, __end, __io, __err, __v); }
18387 # 2050 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
18388 iter_type
18389 get(iter_type __in, iter_type __end, ios_base& __io,
18390 ios_base::iostate& __err, float& __v) const
18391 { return this->do_get(__in, __end, __io, __err, __v); }
18392
18393 iter_type
18394 get(iter_type __in, iter_type __end, ios_base& __io,
18395 ios_base::iostate& __err, double& __v) const
18396 { return this->do_get(__in, __end, __io, __err, __v); }
18397
18398 iter_type
18399 get(iter_type __in, iter_type __end, ios_base& __io,
18400 ios_base::iostate& __err, long double& __v) const
18401 { return this->do_get(__in, __end, __io, __err, __v); }
18402 # 2092 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
18403 iter_type
18404 get(iter_type __in, iter_type __end, ios_base& __io,
18405 ios_base::iostate& __err, void*& __v) const
18406 { return this->do_get(__in, __end, __io, __err, __v); }
18407
18408 protected:
18409
18410 virtual ~num_get() { }
18411
18412 iter_type
18413 _M_extract_float(iter_type, iter_type, ios_base&, ios_base::iostate&,
18414 string&) const;
18415
18416 template<typename _ValueT>
18417 iter_type
18418 _M_extract_int(iter_type, iter_type, ios_base&, ios_base::iostate&,
18419 _ValueT&) const;
18420
18421 template<typename _CharT2>
18422 typename __gnu_cxx::__enable_if<__is_char<_CharT2>::__value, int>::__type
18423 _M_find(const _CharT2*, size_t __len, _CharT2 __c) const
18424 {
18425 int __ret = -1;
18426 if (__len <= 10)
18427 {
18428 if (__c >= _CharT2('0') && __c < _CharT2(_CharT2('0') + __len))
18429 __ret = __c - _CharT2('0');
18430 }
18431 else
18432 {
18433 if (__c >= _CharT2('0') && __c <= _CharT2('9'))
18434 __ret = __c - _CharT2('0');
18435 else if (__c >= _CharT2('a') && __c <= _CharT2('f'))
18436 __ret = 10 + (__c - _CharT2('a'));
18437 else if (__c >= _CharT2('A') && __c <= _CharT2('F'))
18438 __ret = 10 + (__c - _CharT2('A'));
18439 }
18440 return __ret;
18441 }
18442
18443 template<typename _CharT2>
18444 typename __gnu_cxx::__enable_if<!__is_char<_CharT2>::__value,
18445 int>::__type
18446 _M_find(const _CharT2* __zero, size_t __len, _CharT2 __c) const
18447 {
18448 int __ret = -1;
18449 const char_type* __q = char_traits<_CharT2>::find(__zero, __len, __c);
18450 if (__q)
18451 {
18452 __ret = __q - __zero;
18453 if (__ret > 15)
18454 __ret -= 6;
18455 }
18456 return __ret;
18457 }
18458 # 2163 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
18459 virtual iter_type
18460 do_get(iter_type, iter_type, ios_base&, ios_base::iostate&, bool&) const;
18461
18462 virtual iter_type
18463 do_get(iter_type __beg, iter_type __end, ios_base& __io,
18464 ios_base::iostate& __err, long& __v) const
18465 { return _M_extract_int(__beg, __end, __io, __err, __v); }
18466
18467 virtual iter_type
18468 do_get(iter_type __beg, iter_type __end, ios_base& __io,
18469 ios_base::iostate& __err, unsigned short& __v) const
18470 { return _M_extract_int(__beg, __end, __io, __err, __v); }
18471
18472 virtual iter_type
18473 do_get(iter_type __beg, iter_type __end, ios_base& __io,
18474 ios_base::iostate& __err, unsigned int& __v) const
18475 { return _M_extract_int(__beg, __end, __io, __err, __v); }
18476
18477 virtual iter_type
18478 do_get(iter_type __beg, iter_type __end, ios_base& __io,
18479 ios_base::iostate& __err, unsigned long& __v) const
18480 { return _M_extract_int(__beg, __end, __io, __err, __v); }
18481
18482
18483 virtual iter_type
18484 do_get(iter_type __beg, iter_type __end, ios_base& __io,
18485 ios_base::iostate& __err, long long& __v) const
18486 { return _M_extract_int(__beg, __end, __io, __err, __v); }
18487
18488 virtual iter_type
18489 do_get(iter_type __beg, iter_type __end, ios_base& __io,
18490 ios_base::iostate& __err, unsigned long long& __v) const
18491 { return _M_extract_int(__beg, __end, __io, __err, __v); }
18492
18493
18494 virtual iter_type
18495 do_get(iter_type, iter_type, ios_base&, ios_base::iostate& __err,
18496 float&) const;
18497
18498 virtual iter_type
18499 do_get(iter_type, iter_type, ios_base&, ios_base::iostate& __err,
18500 double&) const;
18501
18502
18503
18504
18505
18506
18507
18508 virtual iter_type
18509 do_get(iter_type, iter_type, ios_base&, ios_base::iostate& __err,
18510 long double&) const;
18511
18512
18513 virtual iter_type
18514 do_get(iter_type, iter_type, ios_base&, ios_base::iostate& __err,
18515 void*&) const;
18516 # 2228 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
18517 };
18518
18519 template<typename _CharT, typename _InIter>
18520 locale::id num_get<_CharT, _InIter>::id;
18521 # 2246 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
18522 template<typename _CharT, typename _OutIter>
18523 class num_put : public locale::facet
18524 {
18525 public:
18526
18527
18528
18529 typedef _CharT char_type;
18530 typedef _OutIter iter_type;
18531
18532
18533
18534 static locale::id id;
18535 # 2267 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
18536 explicit
18537 num_put(size_t __refs = 0) : facet(__refs) { }
18538 # 2285 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
18539 iter_type
18540 put(iter_type __s, ios_base& __f, char_type __fill, bool __v) const
18541 { return this->do_put(__s, __f, __fill, __v); }
18542 # 2327 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
18543 iter_type
18544 put(iter_type __s, ios_base& __f, char_type __fill, long __v) const
18545 { return this->do_put(__s, __f, __fill, __v); }
18546
18547 iter_type
18548 put(iter_type __s, ios_base& __f, char_type __fill,
18549 unsigned long __v) const
18550 { return this->do_put(__s, __f, __fill, __v); }
18551
18552
18553 iter_type
18554 put(iter_type __s, ios_base& __f, char_type __fill, long long __v) const
18555 { return this->do_put(__s, __f, __fill, __v); }
18556
18557 iter_type
18558 put(iter_type __s, ios_base& __f, char_type __fill,
18559 unsigned long long __v) const
18560 { return this->do_put(__s, __f, __fill, __v); }
18561 # 2390 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
18562 iter_type
18563 put(iter_type __s, ios_base& __f, char_type __fill, double __v) const
18564 { return this->do_put(__s, __f, __fill, __v); }
18565
18566 iter_type
18567 put(iter_type __s, ios_base& __f, char_type __fill,
18568 long double __v) const
18569 { return this->do_put(__s, __f, __fill, __v); }
18570 # 2415 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
18571 iter_type
18572 put(iter_type __s, ios_base& __f, char_type __fill,
18573 const void* __v) const
18574 { return this->do_put(__s, __f, __fill, __v); }
18575
18576 protected:
18577 template<typename _ValueT>
18578 iter_type
18579 _M_insert_float(iter_type, ios_base& __io, char_type __fill,
18580 char __mod, _ValueT __v) const;
18581
18582 void
18583 _M_group_float(const char* __grouping, size_t __grouping_size,
18584 char_type __sep, const char_type* __p, char_type* __new,
18585 char_type* __cs, int& __len) const;
18586
18587 template<typename _ValueT>
18588 iter_type
18589 _M_insert_int(iter_type, ios_base& __io, char_type __fill,
18590 _ValueT __v) const;
18591
18592 void
18593 _M_group_int(const char* __grouping, size_t __grouping_size,
18594 char_type __sep, ios_base& __io, char_type* __new,
18595 char_type* __cs, int& __len) const;
18596
18597 void
18598 _M_pad(char_type __fill, streamsize __w, ios_base& __io,
18599 char_type* __new, const char_type* __cs, int& __len) const;
18600
18601
18602 virtual
18603 ~num_put() { };
18604 # 2463 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 3
18605 virtual iter_type
18606 do_put(iter_type, ios_base&, char_type __fill, bool __v) const;
18607
18608 virtual iter_type
18609 do_put(iter_type __s, ios_base& __io, char_type __fill, long __v) const
18610 { return _M_insert_int(__s, __io, __fill, __v); }
18611
18612 virtual iter_type
18613 do_put(iter_type __s, ios_base& __io, char_type __fill,
18614 unsigned long __v) const
18615 { return _M_insert_int(__s, __io, __fill, __v); }
18616
18617
18618 virtual iter_type
18619 do_put(iter_type __s, ios_base& __io, char_type __fill,
18620 long long __v) const
18621 { return _M_insert_int(__s, __io, __fill, __v); }
18622
18623 virtual iter_type
18624 do_put(iter_type __s, ios_base& __io, char_type __fill,
18625 unsigned long long __v) const
18626 { return _M_insert_int(__s, __io, __fill, __v); }
18627
18628
18629 virtual iter_type
18630 do_put(iter_type, ios_base&, char_type __fill, double __v) const;
18631
18632
18633
18634
18635
18636
18637 virtual iter_type
18638 do_put(iter_type, ios_base&, char_type __fill, long double __v) const;
18639
18640
18641 virtual iter_type
18642 do_put(iter_type, ios_base&, char_type __fill, const void* __v) const;
18643
18644
18645
18646
18647
18648
18649
18650 };
18651
18652 template <typename _CharT, typename _OutIter>
18653 locale::id num_put<_CharT, _OutIter>::id;
18654
18655
18656
18657
18658
18659
18660
18661
18662
18663 template<typename _CharT>
18664 inline bool
18665 isspace(_CharT __c, const locale& __loc)
18666 { return use_facet<ctype<_CharT> >(__loc).is(ctype_base::space, __c); }
18667
18668
18669 template<typename _CharT>
18670 inline bool
18671 isprint(_CharT __c, const locale& __loc)
18672 { return use_facet<ctype<_CharT> >(__loc).is(ctype_base::print, __c); }
18673
18674
18675 template<typename _CharT>
18676 inline bool
18677 iscntrl(_CharT __c, const locale& __loc)
18678 { return use_facet<ctype<_CharT> >(__loc).is(ctype_base::cntrl, __c); }
18679
18680
18681 template<typename _CharT>
18682 inline bool
18683 isupper(_CharT __c, const locale& __loc)
18684 { return use_facet<ctype<_CharT> >(__loc).is(ctype_base::upper, __c); }
18685
18686
18687 template<typename _CharT>
18688 inline bool
18689 islower(_CharT __c, const locale& __loc)
18690 { return use_facet<ctype<_CharT> >(__loc).is(ctype_base::lower, __c); }
18691
18692
18693 template<typename _CharT>
18694 inline bool
18695 isalpha(_CharT __c, const locale& __loc)
18696 { return use_facet<ctype<_CharT> >(__loc).is(ctype_base::alpha, __c); }
18697
18698
18699 template<typename _CharT>
18700 inline bool
18701 isdigit(_CharT __c, const locale& __loc)
18702 { return use_facet<ctype<_CharT> >(__loc).is(ctype_base::digit, __c); }
18703
18704
18705 template<typename _CharT>
18706 inline bool
18707 ispunct(_CharT __c, const locale& __loc)
18708 { return use_facet<ctype<_CharT> >(__loc).is(ctype_base::punct, __c); }
18709
18710
18711 template<typename _CharT>
18712 inline bool
18713 isxdigit(_CharT __c, const locale& __loc)
18714 { return use_facet<ctype<_CharT> >(__loc).is(ctype_base::xdigit, __c); }
18715
18716
18717 template<typename _CharT>
18718 inline bool
18719 isalnum(_CharT __c, const locale& __loc)
18720 { return use_facet<ctype<_CharT> >(__loc).is(ctype_base::alnum, __c); }
18721
18722
18723 template<typename _CharT>
18724 inline bool
18725 isgraph(_CharT __c, const locale& __loc)
18726 { return use_facet<ctype<_CharT> >(__loc).is(ctype_base::graph, __c); }
18727
18728
18729 template<typename _CharT>
18730 inline _CharT
18731 toupper(_CharT __c, const locale& __loc)
18732 { return use_facet<ctype<_CharT> >(__loc).toupper(__c); }
18733
18734
18735 template<typename _CharT>
18736 inline _CharT
18737 tolower(_CharT __c, const locale& __loc)
18738 { return use_facet<ctype<_CharT> >(__loc).tolower(__c); }
18739
18740 }
18741
18742
18743 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.tcc" 1 3
18744 # 33 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.tcc" 3
18745 #define _LOCALE_FACETS_TCC 1
18746
18747
18748 # 36 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.tcc" 3
18749
18750 namespace std __attribute__ ((__visibility__ ("default"))) {
18751
18752
18753
18754 template<typename _Facet>
18755 struct __use_cache
18756 {
18757 const _Facet*
18758 operator() (const locale& __loc) const;
18759 };
18760
18761
18762 template<typename _CharT>
18763 struct __use_cache<__numpunct_cache<_CharT> >
18764 {
18765 const __numpunct_cache<_CharT>*
18766 operator() (const locale& __loc) const
18767 {
18768 const size_t __i = numpunct<_CharT>::id._M_id();
18769 const locale::facet** __caches = __loc._M_impl->_M_caches;
18770 if (!__caches[__i])
18771 {
18772 __numpunct_cache<_CharT>* __tmp = __null;
18773 try
18774 {
18775 __tmp = new __numpunct_cache<_CharT>;
18776 __tmp->_M_cache(__loc);
18777 }
18778 catch(...)
18779 {
18780 delete __tmp;
18781 throw;
18782 }
18783 __loc._M_impl->_M_install_cache(__tmp, __i);
18784 }
18785 return static_cast<const __numpunct_cache<_CharT>*>(__caches[__i]);
18786 }
18787 };
18788
18789 template<typename _CharT>
18790 void
18791 __numpunct_cache<_CharT>::_M_cache(const locale& __loc)
18792 {
18793 _M_allocated = true;
18794
18795 const numpunct<_CharT>& __np = use_facet<numpunct<_CharT> >(__loc);
18796
18797 char* __grouping = 0;
18798 _CharT* __truename = 0;
18799 _CharT* __falsename = 0;
18800 try
18801 {
18802 _M_grouping_size = __np.grouping().size();
18803 __grouping = new char[_M_grouping_size];
18804 __np.grouping().copy(__grouping, _M_grouping_size);
18805 _M_grouping = __grouping;
18806 _M_use_grouping = (_M_grouping_size
18807 && static_cast<signed char>(_M_grouping[0]) > 0
18808 && (_M_grouping[0]
18809 != __gnu_cxx::__numeric_traits<char>::__max));
18810
18811 _M_truename_size = __np.truename().size();
18812 __truename = new _CharT[_M_truename_size];
18813 __np.truename().copy(__truename, _M_truename_size);
18814 _M_truename = __truename;
18815
18816 _M_falsename_size = __np.falsename().size();
18817 __falsename = new _CharT[_M_falsename_size];
18818 __np.falsename().copy(__falsename, _M_falsename_size);
18819 _M_falsename = __falsename;
18820
18821 _M_decimal_point = __np.decimal_point();
18822 _M_thousands_sep = __np.thousands_sep();
18823
18824 const ctype<_CharT>& __ct = use_facet<ctype<_CharT> >(__loc);
18825 __ct.widen(__num_base::_S_atoms_out,
18826 __num_base::_S_atoms_out
18827 + __num_base::_S_oend, _M_atoms_out);
18828 __ct.widen(__num_base::_S_atoms_in,
18829 __num_base::_S_atoms_in
18830 + __num_base::_S_iend, _M_atoms_in);
18831 }
18832 catch(...)
18833 {
18834 delete [] __grouping;
18835 delete [] __truename;
18836 delete [] __falsename;
18837 throw;
18838 }
18839 }
18840 # 136 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.tcc" 3
18841 __attribute__ ((__pure__)) bool
18842 __verify_grouping(const char* __grouping, size_t __grouping_size,
18843 const string& __grouping_tmp) throw ();
18844
18845
18846
18847 template<typename _CharT, typename _InIter>
18848 _InIter
18849 num_get<_CharT, _InIter>::
18850 _M_extract_float(_InIter __beg, _InIter __end, ios_base& __io,
18851 ios_base::iostate& __err, string& __xtrc) const
18852 {
18853 typedef char_traits<_CharT> __traits_type;
18854 typedef __numpunct_cache<_CharT> __cache_type;
18855 __use_cache<__cache_type> __uc;
18856 const locale& __loc = __io._M_getloc();
18857 const __cache_type* __lc = __uc(__loc);
18858 const _CharT* __lit = __lc->_M_atoms_in;
18859 char_type __c = char_type();
18860
18861
18862 bool __testeof = __beg == __end;
18863
18864
18865 if (!__testeof)
18866 {
18867 __c = *__beg;
18868 const bool __plus = __c == __lit[__num_base::_S_iplus];
18869 if ((__plus || __c == __lit[__num_base::_S_iminus])
18870 && !(__lc->_M_use_grouping && __c == __lc->_M_thousands_sep)
18871 && !(__c == __lc->_M_decimal_point))
18872 {
18873 __xtrc += __plus ? '+' : '-';
18874 if (++__beg != __end)
18875 __c = *__beg;
18876 else
18877 __testeof = true;
18878 }
18879 }
18880
18881
18882 bool __found_mantissa = false;
18883 int __sep_pos = 0;
18884 while (!__testeof)
18885 {
18886 if ((__lc->_M_use_grouping && __c == __lc->_M_thousands_sep)
18887 || __c == __lc->_M_decimal_point)
18888 break;
18889 else if (__c == __lit[__num_base::_S_izero])
18890 {
18891 if (!__found_mantissa)
18892 {
18893 __xtrc += '0';
18894 __found_mantissa = true;
18895 }
18896 ++__sep_pos;
18897
18898 if (++__beg != __end)
18899 __c = *__beg;
18900 else
18901 __testeof = true;
18902 }
18903 else
18904 break;
18905 }
18906
18907
18908 bool __found_dec = false;
18909 bool __found_sci = false;
18910 string __found_grouping;
18911 if (__lc->_M_use_grouping)
18912 __found_grouping.reserve(32);
18913 const char_type* __lit_zero = __lit + __num_base::_S_izero;
18914
18915 if (!__lc->_M_allocated)
18916
18917 while (!__testeof)
18918 {
18919 const int __digit = _M_find(__lit_zero, 10, __c);
18920 if (__digit != -1)
18921 {
18922 __xtrc += '0' + __digit;
18923 __found_mantissa = true;
18924 }
18925 else if (__c == __lc->_M_decimal_point
18926 && !__found_dec && !__found_sci)
18927 {
18928 __xtrc += '.';
18929 __found_dec = true;
18930 }
18931 else if ((__c == __lit[__num_base::_S_ie]
18932 || __c == __lit[__num_base::_S_iE])
18933 && !__found_sci && __found_mantissa)
18934 {
18935
18936 __xtrc += 'e';
18937 __found_sci = true;
18938
18939
18940 if (++__beg != __end)
18941 {
18942 __c = *__beg;
18943 const bool __plus = __c == __lit[__num_base::_S_iplus];
18944 if (__plus || __c == __lit[__num_base::_S_iminus])
18945 __xtrc += __plus ? '+' : '-';
18946 else
18947 continue;
18948 }
18949 else
18950 {
18951 __testeof = true;
18952 break;
18953 }
18954 }
18955 else
18956 break;
18957
18958 if (++__beg != __end)
18959 __c = *__beg;
18960 else
18961 __testeof = true;
18962 }
18963 else
18964 while (!__testeof)
18965 {
18966
18967
18968 if (__lc->_M_use_grouping && __c == __lc->_M_thousands_sep)
18969 {
18970 if (!__found_dec && !__found_sci)
18971 {
18972
18973
18974 if (__sep_pos)
18975 {
18976 __found_grouping += static_cast<char>(__sep_pos);
18977 __sep_pos = 0;
18978 }
18979 else
18980 {
18981
18982
18983 __xtrc.clear();
18984 break;
18985 }
18986 }
18987 else
18988 break;
18989 }
18990 else if (__c == __lc->_M_decimal_point)
18991 {
18992 if (!__found_dec && !__found_sci)
18993 {
18994
18995
18996
18997 if (__found_grouping.size())
18998 __found_grouping += static_cast<char>(__sep_pos);
18999 __xtrc += '.';
19000 __found_dec = true;
19001 }
19002 else
19003 break;
19004 }
19005 else
19006 {
19007 const char_type* __q =
19008 __traits_type::find(__lit_zero, 10, __c);
19009 if (__q)
19010 {
19011 __xtrc += '0' + (__q - __lit_zero);
19012 __found_mantissa = true;
19013 ++__sep_pos;
19014 }
19015 else if ((__c == __lit[__num_base::_S_ie]
19016 || __c == __lit[__num_base::_S_iE])
19017 && !__found_sci && __found_mantissa)
19018 {
19019
19020 if (__found_grouping.size() && !__found_dec)
19021 __found_grouping += static_cast<char>(__sep_pos);
19022 __xtrc += 'e';
19023 __found_sci = true;
19024
19025
19026 if (++__beg != __end)
19027 {
19028 __c = *__beg;
19029 const bool __plus = __c == __lit[__num_base::_S_iplus];
19030 if ((__plus || __c == __lit[__num_base::_S_iminus])
19031 && !(__lc->_M_use_grouping
19032 && __c == __lc->_M_thousands_sep)
19033 && !(__c == __lc->_M_decimal_point))
19034 __xtrc += __plus ? '+' : '-';
19035 else
19036 continue;
19037 }
19038 else
19039 {
19040 __testeof = true;
19041 break;
19042 }
19043 }
19044 else
19045 break;
19046 }
19047
19048 if (++__beg != __end)
19049 __c = *__beg;
19050 else
19051 __testeof = true;
19052 }
19053
19054
19055
19056 if (__found_grouping.size())
19057 {
19058
19059 if (!__found_dec && !__found_sci)
19060 __found_grouping += static_cast<char>(__sep_pos);
19061
19062 if (!std::__verify_grouping(__lc->_M_grouping,
19063 __lc->_M_grouping_size,
19064 __found_grouping))
19065 __err = ios_base::failbit;
19066 }
19067
19068 return __beg;
19069 }
19070
19071 template<typename _CharT, typename _InIter>
19072 template<typename _ValueT>
19073 _InIter
19074 num_get<_CharT, _InIter>::
19075 _M_extract_int(_InIter __beg, _InIter __end, ios_base& __io,
19076 ios_base::iostate& __err, _ValueT& __v) const
19077 {
19078 typedef char_traits<_CharT> __traits_type;
19079 using __gnu_cxx::__add_unsigned;
19080 typedef typename __add_unsigned<_ValueT>::__type __unsigned_type;
19081 typedef __numpunct_cache<_CharT> __cache_type;
19082 __use_cache<__cache_type> __uc;
19083 const locale& __loc = __io._M_getloc();
19084 const __cache_type* __lc = __uc(__loc);
19085 const _CharT* __lit = __lc->_M_atoms_in;
19086 char_type __c = char_type();
19087
19088
19089 const ios_base::fmtflags __basefield = __io.flags()
19090 & ios_base::basefield;
19091 const bool __oct = __basefield == ios_base::oct;
19092 int __base = __oct ? 8 : (__basefield == ios_base::hex ? 16 : 10);
19093
19094
19095 bool __testeof = __beg == __end;
19096
19097
19098 bool __negative = false;
19099 if (!__testeof)
19100 {
19101 __c = *__beg;
19102 __negative = __c == __lit[__num_base::_S_iminus];
19103 if ((__negative || __c == __lit[__num_base::_S_iplus])
19104 && !(__lc->_M_use_grouping && __c == __lc->_M_thousands_sep)
19105 && !(__c == __lc->_M_decimal_point))
19106 {
19107 if (++__beg != __end)
19108 __c = *__beg;
19109 else
19110 __testeof = true;
19111 }
19112 }
19113
19114
19115
19116 bool __found_zero = false;
19117 int __sep_pos = 0;
19118 while (!__testeof)
19119 {
19120 if ((__lc->_M_use_grouping && __c == __lc->_M_thousands_sep)
19121 || __c == __lc->_M_decimal_point)
19122 break;
19123 else if (__c == __lit[__num_base::_S_izero]
19124 && (!__found_zero || __base == 10))
19125 {
19126 __found_zero = true;
19127 ++__sep_pos;
19128 if (__basefield == 0)
19129 __base = 8;
19130 if (__base == 8)
19131 __sep_pos = 0;
19132 }
19133 else if (__found_zero
19134 && (__c == __lit[__num_base::_S_ix]
19135 || __c == __lit[__num_base::_S_iX]))
19136 {
19137 if (__basefield == 0)
19138 __base = 16;
19139 if (__base == 16)
19140 {
19141 __found_zero = false;
19142 __sep_pos = 0;
19143 }
19144 else
19145 break;
19146 }
19147 else
19148 break;
19149
19150 if (++__beg != __end)
19151 {
19152 __c = *__beg;
19153 if (!__found_zero)
19154 break;
19155 }
19156 else
19157 __testeof = true;
19158 }
19159
19160
19161
19162 const size_t __len = (__base == 16 ? __num_base::_S_iend
19163 - __num_base::_S_izero : __base);
19164
19165
19166 string __found_grouping;
19167 if (__lc->_M_use_grouping)
19168 __found_grouping.reserve(32);
19169 bool __testfail = false;
19170 bool __testoverflow = false;
19171 const __unsigned_type __max =
19172 (__negative && __gnu_cxx::__numeric_traits<_ValueT>::__is_signed)
19173 ? -__gnu_cxx::__numeric_traits<_ValueT>::__min
19174 : __gnu_cxx::__numeric_traits<_ValueT>::__max;
19175 const __unsigned_type __smax = __max / __base;
19176 __unsigned_type __result = 0;
19177 int __digit = 0;
19178 const char_type* __lit_zero = __lit + __num_base::_S_izero;
19179
19180 if (!__lc->_M_allocated)
19181
19182 while (!__testeof)
19183 {
19184 __digit = _M_find(__lit_zero, __len, __c);
19185 if (__digit == -1)
19186 break;
19187
19188 if (__result > __smax)
19189 __testoverflow = true;
19190 else
19191 {
19192 __result *= __base;
19193 __testoverflow |= __result > __max - __digit;
19194 __result += __digit;
19195 ++__sep_pos;
19196 }
19197
19198 if (++__beg != __end)
19199 __c = *__beg;
19200 else
19201 __testeof = true;
19202 }
19203 else
19204 while (!__testeof)
19205 {
19206
19207
19208 if (__lc->_M_use_grouping && __c == __lc->_M_thousands_sep)
19209 {
19210
19211
19212 if (__sep_pos)
19213 {
19214 __found_grouping += static_cast<char>(__sep_pos);
19215 __sep_pos = 0;
19216 }
19217 else
19218 {
19219 __testfail = true;
19220 break;
19221 }
19222 }
19223 else if (__c == __lc->_M_decimal_point)
19224 break;
19225 else
19226 {
19227 const char_type* __q =
19228 __traits_type::find(__lit_zero, __len, __c);
19229 if (!__q)
19230 break;
19231
19232 __digit = __q - __lit_zero;
19233 if (__digit > 15)
19234 __digit -= 6;
19235 if (__result > __smax)
19236 __testoverflow = true;
19237 else
19238 {
19239 __result *= __base;
19240 __testoverflow |= __result > __max - __digit;
19241 __result += __digit;
19242 ++__sep_pos;
19243 }
19244 }
19245
19246 if (++__beg != __end)
19247 __c = *__beg;
19248 else
19249 __testeof = true;
19250 }
19251
19252
19253
19254 if (__found_grouping.size())
19255 {
19256
19257 __found_grouping += static_cast<char>(__sep_pos);
19258
19259 if (!std::__verify_grouping(__lc->_M_grouping,
19260 __lc->_M_grouping_size,
19261 __found_grouping))
19262 __err = ios_base::failbit;
19263 }
19264
19265
19266
19267 if ((!__sep_pos && !__found_zero && !__found_grouping.size())
19268 || __testfail)
19269 {
19270 __v = 0;
19271 __err = ios_base::failbit;
19272 }
19273 else if (__testoverflow)
19274 {
19275 if (__negative
19276 && __gnu_cxx::__numeric_traits<_ValueT>::__is_signed)
19277 __v = __gnu_cxx::__numeric_traits<_ValueT>::__min;
19278 else
19279 __v = __gnu_cxx::__numeric_traits<_ValueT>::__max;
19280 __err = ios_base::failbit;
19281 }
19282 else
19283 __v = __negative ? -__result : __result;
19284
19285 if (__testeof)
19286 __err |= ios_base::eofbit;
19287 return __beg;
19288 }
19289
19290
19291
19292 template<typename _CharT, typename _InIter>
19293 _InIter
19294 num_get<_CharT, _InIter>::
19295 do_get(iter_type __beg, iter_type __end, ios_base& __io,
19296 ios_base::iostate& __err, bool& __v) const
19297 {
19298 if (!(__io.flags() & ios_base::boolalpha))
19299 {
19300
19301
19302
19303 long __l = -1;
19304 __beg = _M_extract_int(__beg, __end, __io, __err, __l);
19305 if (__l == 0 || __l == 1)
19306 __v = bool(__l);
19307 else
19308 {
19309
19310
19311 __v = true;
19312 __err = ios_base::failbit;
19313 if (__beg == __end)
19314 __err |= ios_base::eofbit;
19315 }
19316 }
19317 else
19318 {
19319
19320 typedef __numpunct_cache<_CharT> __cache_type;
19321 __use_cache<__cache_type> __uc;
19322 const locale& __loc = __io._M_getloc();
19323 const __cache_type* __lc = __uc(__loc);
19324
19325 bool __testf = true;
19326 bool __testt = true;
19327 bool __donef = __lc->_M_falsename_size == 0;
19328 bool __donet = __lc->_M_truename_size == 0;
19329 bool __testeof = false;
19330 size_t __n = 0;
19331 while (!__donef || !__donet)
19332 {
19333 if (__beg == __end)
19334 {
19335 __testeof = true;
19336 break;
19337 }
19338
19339 const char_type __c = *__beg;
19340
19341 if (!__donef)
19342 __testf = __c == __lc->_M_falsename[__n];
19343
19344 if (!__testf && __donet)
19345 break;
19346
19347 if (!__donet)
19348 __testt = __c == __lc->_M_truename[__n];
19349
19350 if (!__testt && __donef)
19351 break;
19352
19353 if (!__testt && !__testf)
19354 break;
19355
19356 ++__n;
19357 ++__beg;
19358
19359 __donef = !__testf || __n >= __lc->_M_falsename_size;
19360 __donet = !__testt || __n >= __lc->_M_truename_size;
19361 }
19362 if (__testf && __n == __lc->_M_falsename_size && __n)
19363 {
19364 __v = false;
19365 if (__testt && __n == __lc->_M_truename_size)
19366 __err = ios_base::failbit;
19367 else
19368 __err = __testeof ? ios_base::eofbit : ios_base::goodbit;
19369 }
19370 else if (__testt && __n == __lc->_M_truename_size && __n)
19371 {
19372 __v = true;
19373 __err = __testeof ? ios_base::eofbit : ios_base::goodbit;
19374 }
19375 else
19376 {
19377
19378
19379 __v = false;
19380 __err = ios_base::failbit;
19381 if (__testeof)
19382 __err |= ios_base::eofbit;
19383 }
19384 }
19385 return __beg;
19386 }
19387
19388 template<typename _CharT, typename _InIter>
19389 _InIter
19390 num_get<_CharT, _InIter>::
19391 do_get(iter_type __beg, iter_type __end, ios_base& __io,
19392 ios_base::iostate& __err, float& __v) const
19393 {
19394 string __xtrc;
19395 __xtrc.reserve(32);
19396 __beg = _M_extract_float(__beg, __end, __io, __err, __xtrc);
19397 std::__convert_to_v(__xtrc.c_str(), __v, __err, _S_get_c_locale());
19398 if (__beg == __end)
19399 __err |= ios_base::eofbit;
19400 return __beg;
19401 }
19402
19403 template<typename _CharT, typename _InIter>
19404 _InIter
19405 num_get<_CharT, _InIter>::
19406 do_get(iter_type __beg, iter_type __end, ios_base& __io,
19407 ios_base::iostate& __err, double& __v) const
19408 {
19409 string __xtrc;
19410 __xtrc.reserve(32);
19411 __beg = _M_extract_float(__beg, __end, __io, __err, __xtrc);
19412 std::__convert_to_v(__xtrc.c_str(), __v, __err, _S_get_c_locale());
19413 if (__beg == __end)
19414 __err |= ios_base::eofbit;
19415 return __beg;
19416 }
19417 # 730 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.tcc" 3
19418 template<typename _CharT, typename _InIter>
19419 _InIter
19420 num_get<_CharT, _InIter>::
19421 do_get(iter_type __beg, iter_type __end, ios_base& __io,
19422 ios_base::iostate& __err, long double& __v) const
19423 {
19424 string __xtrc;
19425 __xtrc.reserve(32);
19426 __beg = _M_extract_float(__beg, __end, __io, __err, __xtrc);
19427 std::__convert_to_v(__xtrc.c_str(), __v, __err, _S_get_c_locale());
19428 if (__beg == __end)
19429 __err |= ios_base::eofbit;
19430 return __beg;
19431 }
19432
19433 template<typename _CharT, typename _InIter>
19434 _InIter
19435 num_get<_CharT, _InIter>::
19436 do_get(iter_type __beg, iter_type __end, ios_base& __io,
19437 ios_base::iostate& __err, void*& __v) const
19438 {
19439
19440 typedef ios_base::fmtflags fmtflags;
19441 const fmtflags __fmt = __io.flags();
19442 __io.flags((__fmt & ~ios_base::basefield) | ios_base::hex);
19443
19444 typedef __gnu_cxx::__conditional_type<(sizeof(void*)
19445 <= sizeof(unsigned long)),
19446 unsigned long, unsigned long long>::__type _UIntPtrType;
19447
19448 _UIntPtrType __ul;
19449 __beg = _M_extract_int(__beg, __end, __io, __err, __ul);
19450
19451
19452 __io.flags(__fmt);
19453
19454 __v = reinterpret_cast<void*>(__ul);
19455 return __beg;
19456 }
19457
19458
19459
19460 template<typename _CharT, typename _OutIter>
19461 void
19462 num_put<_CharT, _OutIter>::
19463 _M_pad(_CharT __fill, streamsize __w, ios_base& __io,
19464 _CharT* __new, const _CharT* __cs, int& __len) const
19465 {
19466
19467
19468 __pad<_CharT, char_traits<_CharT> >::_S_pad(__io, __fill, __new,
19469 __cs, __w, __len);
19470 __len = static_cast<int>(__w);
19471 }
19472
19473
19474
19475 template<typename _CharT, typename _ValueT>
19476 int
19477 __int_to_char(_CharT* __bufend, _ValueT __v, const _CharT* __lit,
19478 ios_base::fmtflags __flags, bool __dec)
19479 {
19480 _CharT* __buf = __bufend;
19481 if (__builtin_expect(__dec, true))
19482 {
19483
19484 do
19485 {
19486 *--__buf = __lit[(__v % 10) + __num_base::_S_odigits];
19487 __v /= 10;
19488 }
19489 while (__v != 0);
19490 }
19491 else if ((__flags & ios_base::basefield) == ios_base::oct)
19492 {
19493
19494 do
19495 {
19496 *--__buf = __lit[(__v & 0x7) + __num_base::_S_odigits];
19497 __v >>= 3;
19498 }
19499 while (__v != 0);
19500 }
19501 else
19502 {
19503
19504 const bool __uppercase = __flags & ios_base::uppercase;
19505 const int __case_offset = __uppercase ? __num_base::_S_oudigits
19506 : __num_base::_S_odigits;
19507 do
19508 {
19509 *--__buf = __lit[(__v & 0xf) + __case_offset];
19510 __v >>= 4;
19511 }
19512 while (__v != 0);
19513 }
19514 return __bufend - __buf;
19515 }
19516
19517
19518
19519 template<typename _CharT, typename _OutIter>
19520 void
19521 num_put<_CharT, _OutIter>::
19522 _M_group_int(const char* __grouping, size_t __grouping_size, _CharT __sep,
19523 ios_base&, _CharT* __new, _CharT* __cs, int& __len) const
19524 {
19525 _CharT* __p = std::__add_grouping(__new, __sep, __grouping,
19526 __grouping_size, __cs, __cs + __len);
19527 __len = __p - __new;
19528 }
19529
19530 template<typename _CharT, typename _OutIter>
19531 template<typename _ValueT>
19532 _OutIter
19533 num_put<_CharT, _OutIter>::
19534 _M_insert_int(_OutIter __s, ios_base& __io, _CharT __fill,
19535 _ValueT __v) const
19536 {
19537 using __gnu_cxx::__add_unsigned;
19538 typedef typename __add_unsigned<_ValueT>::__type __unsigned_type;
19539 typedef __numpunct_cache<_CharT> __cache_type;
19540 __use_cache<__cache_type> __uc;
19541 const locale& __loc = __io._M_getloc();
19542 const __cache_type* __lc = __uc(__loc);
19543 const _CharT* __lit = __lc->_M_atoms_out;
19544 const ios_base::fmtflags __flags = __io.flags();
19545
19546
19547 const int __ilen = 5 * sizeof(_ValueT);
19548 _CharT* __cs = static_cast<_CharT*>(__builtin_alloca(sizeof(_CharT)
19549 * __ilen));
19550
19551
19552
19553 const ios_base::fmtflags __basefield = __flags & ios_base::basefield;
19554 const bool __dec = (__basefield != ios_base::oct
19555 && __basefield != ios_base::hex);
19556 const __unsigned_type __u = ((__v > 0 || !__dec)
19557 ? __unsigned_type(__v)
19558 : -__unsigned_type(__v));
19559 int __len = __int_to_char(__cs + __ilen, __u, __lit, __flags, __dec);
19560 __cs += __ilen - __len;
19561
19562
19563 if (__lc->_M_use_grouping)
19564 {
19565
19566
19567 _CharT* __cs2 = static_cast<_CharT*>(__builtin_alloca(sizeof(_CharT)
19568 * (__len + 1)
19569 * 2));
19570 _M_group_int(__lc->_M_grouping, __lc->_M_grouping_size,
19571 __lc->_M_thousands_sep, __io, __cs2 + 2, __cs, __len);
19572 __cs = __cs2 + 2;
19573 }
19574
19575
19576 if (__builtin_expect(__dec, true))
19577 {
19578
19579 if (__v >= 0)
19580 {
19581 if (bool(__flags & ios_base::showpos)
19582 && __gnu_cxx::__numeric_traits<_ValueT>::__is_signed)
19583 *--__cs = __lit[__num_base::_S_oplus], ++__len;
19584 }
19585 else
19586 *--__cs = __lit[__num_base::_S_ominus], ++__len;
19587 }
19588 else if (bool(__flags & ios_base::showbase) && __v)
19589 {
19590 if (__basefield == ios_base::oct)
19591 *--__cs = __lit[__num_base::_S_odigits], ++__len;
19592 else
19593 {
19594
19595 const bool __uppercase = __flags & ios_base::uppercase;
19596 *--__cs = __lit[__num_base::_S_ox + __uppercase];
19597
19598 *--__cs = __lit[__num_base::_S_odigits];
19599 __len += 2;
19600 }
19601 }
19602
19603
19604 const streamsize __w = __io.width();
19605 if (__w > static_cast<streamsize>(__len))
19606 {
19607 _CharT* __cs3 = static_cast<_CharT*>(__builtin_alloca(sizeof(_CharT)
19608 * __w));
19609 _M_pad(__fill, __w, __io, __cs3, __cs, __len);
19610 __cs = __cs3;
19611 }
19612 __io.width(0);
19613
19614
19615
19616 return std::__write(__s, __cs, __len);
19617 }
19618
19619 template<typename _CharT, typename _OutIter>
19620 void
19621 num_put<_CharT, _OutIter>::
19622 _M_group_float(const char* __grouping, size_t __grouping_size,
19623 _CharT __sep, const _CharT* __p, _CharT* __new,
19624 _CharT* __cs, int& __len) const
19625 {
19626
19627
19628
19629 const int __declen = __p ? __p - __cs : __len;
19630 _CharT* __p2 = std::__add_grouping(__new, __sep, __grouping,
19631 __grouping_size,
19632 __cs, __cs + __declen);
19633
19634
19635 int __newlen = __p2 - __new;
19636 if (__p)
19637 {
19638 char_traits<_CharT>::copy(__p2, __p, __len - __declen);
19639 __newlen += __len - __declen;
19640 }
19641 __len = __newlen;
19642 }
19643 # 966 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.tcc" 3
19644 template<typename _CharT, typename _OutIter>
19645 template<typename _ValueT>
19646 _OutIter
19647 num_put<_CharT, _OutIter>::
19648 _M_insert_float(_OutIter __s, ios_base& __io, _CharT __fill, char __mod,
19649 _ValueT __v) const
19650 {
19651 typedef __numpunct_cache<_CharT> __cache_type;
19652 __use_cache<__cache_type> __uc;
19653 const locale& __loc = __io._M_getloc();
19654 const __cache_type* __lc = __uc(__loc);
19655
19656
19657 const streamsize __prec = __io.precision() < 0 ? 6 : __io.precision();
19658
19659 const int __max_digits =
19660 __gnu_cxx::__numeric_traits<_ValueT>::__digits10;
19661
19662
19663 int __len;
19664
19665 char __fbuf[16];
19666 __num_base::_S_format_float(__io, __fbuf, __mod);
19667
19668
19669
19670
19671 int __cs_size = __max_digits * 3;
19672 char* __cs = static_cast<char*>(__builtin_alloca(__cs_size));
19673 __len = std::__convert_from_v(_S_get_c_locale(), __cs, __cs_size,
19674 __fbuf, __prec, __v);
19675
19676
19677 if (__len >= __cs_size)
19678 {
19679 __cs_size = __len + 1;
19680 __cs = static_cast<char*>(__builtin_alloca(__cs_size));
19681 __len = std::__convert_from_v(_S_get_c_locale(), __cs, __cs_size,
19682 __fbuf, __prec, __v);
19683 }
19684 # 1027 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.tcc" 3
19685 const ctype<_CharT>& __ctype = use_facet<ctype<_CharT> >(__loc);
19686
19687 _CharT* __ws = static_cast<_CharT*>(__builtin_alloca(sizeof(_CharT)
19688 * __len));
19689 __ctype.widen(__cs, __cs + __len, __ws);
19690
19691
19692 _CharT* __wp = 0;
19693 const char* __p = char_traits<char>::find(__cs, __len, '.');
19694 if (__p)
19695 {
19696 __wp = __ws + (__p - __cs);
19697 *__wp = __lc->_M_decimal_point;
19698 }
19699
19700
19701
19702
19703 if (__lc->_M_use_grouping
19704 && (__wp || __len < 3 || (__cs[1] <= '9' && __cs[2] <= '9'
19705 && __cs[1] >= '0' && __cs[2] >= '0')))
19706 {
19707
19708
19709 _CharT* __ws2 = static_cast<_CharT*>(__builtin_alloca(sizeof(_CharT)
19710 * __len * 2));
19711
19712 streamsize __off = 0;
19713 if (__cs[0] == '-' || __cs[0] == '+')
19714 {
19715 __off = 1;
19716 __ws2[0] = __ws[0];
19717 __len -= 1;
19718 }
19719
19720 _M_group_float(__lc->_M_grouping, __lc->_M_grouping_size,
19721 __lc->_M_thousands_sep, __wp, __ws2 + __off,
19722 __ws + __off, __len);
19723 __len += __off;
19724
19725 __ws = __ws2;
19726 }
19727
19728
19729 const streamsize __w = __io.width();
19730 if (__w > static_cast<streamsize>(__len))
19731 {
19732 _CharT* __ws3 = static_cast<_CharT*>(__builtin_alloca(sizeof(_CharT)
19733 * __w));
19734 _M_pad(__fill, __w, __io, __ws3, __ws, __len);
19735 __ws = __ws3;
19736 }
19737 __io.width(0);
19738
19739
19740
19741 return std::__write(__s, __ws, __len);
19742 }
19743
19744 template<typename _CharT, typename _OutIter>
19745 _OutIter
19746 num_put<_CharT, _OutIter>::
19747 do_put(iter_type __s, ios_base& __io, char_type __fill, bool __v) const
19748 {
19749 const ios_base::fmtflags __flags = __io.flags();
19750 if ((__flags & ios_base::boolalpha) == 0)
19751 {
19752 const long __l = __v;
19753 __s = _M_insert_int(__s, __io, __fill, __l);
19754 }
19755 else
19756 {
19757 typedef __numpunct_cache<_CharT> __cache_type;
19758 __use_cache<__cache_type> __uc;
19759 const locale& __loc = __io._M_getloc();
19760 const __cache_type* __lc = __uc(__loc);
19761
19762 const _CharT* __name = __v ? __lc->_M_truename
19763 : __lc->_M_falsename;
19764 int __len = __v ? __lc->_M_truename_size
19765 : __lc->_M_falsename_size;
19766
19767 const streamsize __w = __io.width();
19768 if (__w > static_cast<streamsize>(__len))
19769 {
19770 const streamsize __plen = __w - __len;
19771 _CharT* __ps
19772 = static_cast<_CharT*>(__builtin_alloca(sizeof(_CharT)
19773 * __plen));
19774
19775 char_traits<_CharT>::assign(__ps, __plen, __fill);
19776 __io.width(0);
19777
19778 if ((__flags & ios_base::adjustfield) == ios_base::left)
19779 {
19780 __s = std::__write(__s, __name, __len);
19781 __s = std::__write(__s, __ps, __plen);
19782 }
19783 else
19784 {
19785 __s = std::__write(__s, __ps, __plen);
19786 __s = std::__write(__s, __name, __len);
19787 }
19788 return __s;
19789 }
19790 __io.width(0);
19791 __s = std::__write(__s, __name, __len);
19792 }
19793 return __s;
19794 }
19795
19796 template<typename _CharT, typename _OutIter>
19797 _OutIter
19798 num_put<_CharT, _OutIter>::
19799 do_put(iter_type __s, ios_base& __io, char_type __fill, double __v) const
19800 { return _M_insert_float(__s, __io, __fill, char(), __v); }
19801 # 1152 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.tcc" 3
19802 template<typename _CharT, typename _OutIter>
19803 _OutIter
19804 num_put<_CharT, _OutIter>::
19805 do_put(iter_type __s, ios_base& __io, char_type __fill,
19806 long double __v) const
19807 { return _M_insert_float(__s, __io, __fill, 'L', __v); }
19808
19809 template<typename _CharT, typename _OutIter>
19810 _OutIter
19811 num_put<_CharT, _OutIter>::
19812 do_put(iter_type __s, ios_base& __io, char_type __fill,
19813 const void* __v) const
19814 {
19815 const ios_base::fmtflags __flags = __io.flags();
19816 const ios_base::fmtflags __fmt = ~(ios_base::basefield
19817 | ios_base::uppercase);
19818 __io.flags((__flags & __fmt) | (ios_base::hex | ios_base::showbase));
19819
19820 typedef __gnu_cxx::__conditional_type<(sizeof(const void*)
19821 <= sizeof(unsigned long)),
19822 unsigned long, unsigned long long>::__type _UIntPtrType;
19823
19824 __s = _M_insert_int(__s, __io, __fill,
19825 reinterpret_cast<_UIntPtrType>(__v));
19826 __io.flags(__flags);
19827 return __s;
19828 }
19829
19830
19831 # 1189 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.tcc" 3
19832 template<typename _CharT, typename _Traits>
19833 void
19834 __pad<_CharT, _Traits>::_S_pad(ios_base& __io, _CharT __fill,
19835 _CharT* __news, const _CharT* __olds,
19836 streamsize __newlen, streamsize __oldlen)
19837 {
19838 const size_t __plen = static_cast<size_t>(__newlen - __oldlen);
19839 const ios_base::fmtflags __adjust = __io.flags() & ios_base::adjustfield;
19840
19841
19842 if (__adjust == ios_base::left)
19843 {
19844 _Traits::copy(__news, __olds, __oldlen);
19845 _Traits::assign(__news + __oldlen, __plen, __fill);
19846 return;
19847 }
19848
19849 size_t __mod = 0;
19850 if (__adjust == ios_base::internal)
19851 {
19852
19853
19854
19855 const locale& __loc = __io._M_getloc();
19856 const ctype<_CharT>& __ctype = use_facet<ctype<_CharT> >(__loc);
19857
19858 if (__ctype.widen('-') == __olds[0]
19859 || __ctype.widen('+') == __olds[0])
19860 {
19861 __news[0] = __olds[0];
19862 __mod = 1;
19863 ++__news;
19864 }
19865 else if (__ctype.widen('0') == __olds[0]
19866 && __oldlen > 1
19867 && (__ctype.widen('x') == __olds[1]
19868 || __ctype.widen('X') == __olds[1]))
19869 {
19870 __news[0] = __olds[0];
19871 __news[1] = __olds[1];
19872 __mod = 2;
19873 __news += 2;
19874 }
19875
19876 }
19877 _Traits::assign(__news, __plen, __fill);
19878 _Traits::copy(__news + __plen, __olds + __mod, __oldlen - __mod);
19879 }
19880
19881 template<typename _CharT>
19882 _CharT*
19883 __add_grouping(_CharT* __s, _CharT __sep,
19884 const char* __gbeg, size_t __gsize,
19885 const _CharT* __first, const _CharT* __last)
19886 {
19887 size_t __idx = 0;
19888 size_t __ctr = 0;
19889
19890 while (__last - __first > __gbeg[__idx]
19891 && static_cast<signed char>(__gbeg[__idx]) > 0
19892 && __gbeg[__idx] != __gnu_cxx::__numeric_traits<char>::__max)
19893 {
19894 __last -= __gbeg[__idx];
19895 __idx < __gsize - 1 ? ++__idx : ++__ctr;
19896 }
19897
19898 while (__first != __last)
19899 *__s++ = *__first++;
19900
19901 while (__ctr--)
19902 {
19903 *__s++ = __sep;
19904 for (char __i = __gbeg[__idx]; __i > 0; --__i)
19905 *__s++ = *__first++;
19906 }
19907
19908 while (__idx--)
19909 {
19910 *__s++ = __sep;
19911 for (char __i = __gbeg[__idx]; __i > 0; --__i)
19912 *__s++ = *__first++;
19913 }
19914
19915 return __s;
19916 }
19917
19918
19919
19920
19921
19922 extern template class numpunct<char>;
19923 extern template class numpunct_byname<char>;
19924 extern template class num_get<char>;
19925 extern template class num_put<char>;
19926 extern template class ctype_byname<char>;
19927
19928 extern template
19929 const ctype<char>&
19930 use_facet<ctype<char> >(const locale&);
19931
19932 extern template
19933 const numpunct<char>&
19934 use_facet<numpunct<char> >(const locale&);
19935
19936 extern template
19937 const num_put<char>&
19938 use_facet<num_put<char> >(const locale&);
19939
19940 extern template
19941 const num_get<char>&
19942 use_facet<num_get<char> >(const locale&);
19943
19944 extern template
19945 bool
19946 has_facet<ctype<char> >(const locale&);
19947
19948 extern template
19949 bool
19950 has_facet<numpunct<char> >(const locale&);
19951
19952 extern template
19953 bool
19954 has_facet<num_put<char> >(const locale&);
19955
19956 extern template
19957 bool
19958 has_facet<num_get<char> >(const locale&);
19959
19960
19961 extern template class numpunct<wchar_t>;
19962 extern template class numpunct_byname<wchar_t>;
19963 extern template class num_get<wchar_t>;
19964 extern template class num_put<wchar_t>;
19965 extern template class ctype_byname<wchar_t>;
19966
19967 extern template
19968 const ctype<wchar_t>&
19969 use_facet<ctype<wchar_t> >(const locale&);
19970
19971 extern template
19972 const numpunct<wchar_t>&
19973 use_facet<numpunct<wchar_t> >(const locale&);
19974
19975 extern template
19976 const num_put<wchar_t>&
19977 use_facet<num_put<wchar_t> >(const locale&);
19978
19979 extern template
19980 const num_get<wchar_t>&
19981 use_facet<num_get<wchar_t> >(const locale&);
19982
19983 extern template
19984 bool
19985 has_facet<ctype<wchar_t> >(const locale&);
19986
19987 extern template
19988 bool
19989 has_facet<numpunct<wchar_t> >(const locale&);
19990
19991 extern template
19992 bool
19993 has_facet<num_put<wchar_t> >(const locale&);
19994
19995 extern template
19996 bool
19997 has_facet<num_get<wchar_t> >(const locale&);
19998
19999
20000
20001 }
20002 # 2602 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/locale_facets.h" 2 3
20003 # 40 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_ios.h" 2 3
20004
20005
20006 namespace std __attribute__ ((__visibility__ ("default"))) {
20007
20008 template<typename _Facet>
20009 inline const _Facet&
20010 __check_facet(const _Facet* __f)
20011 {
20012 if (!__f)
20013 __throw_bad_cast();
20014 return *__f;
20015 }
20016 # 61 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_ios.h" 3
20017 template<typename _CharT, typename _Traits>
20018 class basic_ios : public ios_base
20019 {
20020 public:
20021
20022
20023
20024
20025
20026
20027 typedef _CharT char_type;
20028 typedef typename _Traits::int_type int_type;
20029 typedef typename _Traits::pos_type pos_type;
20030 typedef typename _Traits::off_type off_type;
20031 typedef _Traits traits_type;
20032
20033
20034
20035
20036
20037
20038 typedef ctype<_CharT> __ctype_type;
20039 typedef num_put<_CharT, ostreambuf_iterator<_CharT, _Traits> >
20040 __num_put_type;
20041 typedef num_get<_CharT, istreambuf_iterator<_CharT, _Traits> >
20042 __num_get_type;
20043
20044
20045
20046 protected:
20047 basic_ostream<_CharT, _Traits>* _M_tie;
20048 mutable char_type _M_fill;
20049 mutable bool _M_fill_init;
20050 basic_streambuf<_CharT, _Traits>* _M_streambuf;
20051
20052
20053 const __ctype_type* _M_ctype;
20054
20055 const __num_put_type* _M_num_put;
20056
20057 const __num_get_type* _M_num_get;
20058
20059 public:
20060
20061
20062
20063
20064
20065
20066
20067 operator void*() const
20068 { return this->fail() ? 0 : const_cast<basic_ios*>(this); }
20069
20070 bool
20071 operator!() const
20072 { return this->fail(); }
20073 # 126 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_ios.h" 3
20074 iostate
20075 rdstate() const
20076 { return _M_streambuf_state; }
20077 # 137 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_ios.h" 3
20078 void
20079 clear(iostate __state = goodbit);
20080
20081
20082
20083
20084
20085
20086
20087 void
20088 setstate(iostate __state)
20089 { this->clear(this->rdstate() | __state); }
20090
20091
20092
20093
20094 void
20095 _M_setstate(iostate __state)
20096 {
20097
20098
20099 _M_streambuf_state |= __state;
20100 if (this->exceptions() & __state)
20101 throw;
20102 }
20103
20104
20105
20106
20107
20108
20109
20110 bool
20111 good() const
20112 { return this->rdstate() == 0; }
20113
20114
20115
20116
20117
20118
20119
20120 bool
20121 eof() const
20122 { return (this->rdstate() & eofbit) != 0; }
20123 # 190 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_ios.h" 3
20124 bool
20125 fail() const
20126 { return (this->rdstate() & (badbit | failbit)) != 0; }
20127
20128
20129
20130
20131
20132
20133
20134 bool
20135 bad() const
20136 { return (this->rdstate() & badbit) != 0; }
20137 # 211 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_ios.h" 3
20138 iostate
20139 exceptions() const
20140 { return _M_exception; }
20141 # 246 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_ios.h" 3
20142 void
20143 exceptions(iostate __except)
20144 {
20145 _M_exception = __except;
20146 this->clear(_M_streambuf_state);
20147 }
20148
20149
20150
20151
20152
20153
20154
20155 explicit
20156 basic_ios(basic_streambuf<_CharT, _Traits>* __sb)
20157 : ios_base(), _M_tie(0), _M_fill(), _M_fill_init(false), _M_streambuf(0),
20158 _M_ctype(0), _M_num_put(0), _M_num_get(0)
20159 { this->init(__sb); }
20160
20161
20162
20163
20164
20165
20166
20167 virtual
20168 ~basic_ios() { }
20169 # 284 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_ios.h" 3
20170 basic_ostream<_CharT, _Traits>*
20171 tie() const
20172 { return _M_tie; }
20173 # 296 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_ios.h" 3
20174 basic_ostream<_CharT, _Traits>*
20175 tie(basic_ostream<_CharT, _Traits>* __tiestr)
20176 {
20177 basic_ostream<_CharT, _Traits>* __old = _M_tie;
20178 _M_tie = __tiestr;
20179 return __old;
20180 }
20181
20182
20183
20184
20185
20186
20187
20188 basic_streambuf<_CharT, _Traits>*
20189 rdbuf() const
20190 { return _M_streambuf; }
20191 # 336 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_ios.h" 3
20192 basic_streambuf<_CharT, _Traits>*
20193 rdbuf(basic_streambuf<_CharT, _Traits>* __sb);
20194 # 350 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_ios.h" 3
20195 basic_ios&
20196 copyfmt(const basic_ios& __rhs);
20197
20198
20199
20200
20201
20202
20203
20204 char_type
20205 fill() const
20206 {
20207 if (!_M_fill_init)
20208 {
20209 _M_fill = this->widen(' ');
20210 _M_fill_init = true;
20211 }
20212 return _M_fill;
20213 }
20214 # 379 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_ios.h" 3
20215 char_type
20216 fill(char_type __ch)
20217 {
20218 char_type __old = this->fill();
20219 _M_fill = __ch;
20220 return __old;
20221 }
20222 # 399 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_ios.h" 3
20223 locale
20224 imbue(const locale& __loc);
20225 # 419 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_ios.h" 3
20226 char
20227 narrow(char_type __c, char __dfault) const
20228 { return __check_facet(_M_ctype).narrow(__c, __dfault); }
20229 # 438 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_ios.h" 3
20230 char_type
20231 widen(char __c) const
20232 { return __check_facet(_M_ctype).widen(__c); }
20233
20234 protected:
20235
20236
20237
20238
20239
20240
20241
20242 basic_ios()
20243 : ios_base(), _M_tie(0), _M_fill(char_type()), _M_fill_init(false),
20244 _M_streambuf(0), _M_ctype(0), _M_num_put(0), _M_num_get(0)
20245 { }
20246
20247
20248
20249
20250
20251
20252
20253 void
20254 init(basic_streambuf<_CharT, _Traits>* __sb);
20255
20256 void
20257 _M_cache_locale(const locale& __loc);
20258 };
20259
20260 }
20261
20262
20263 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_ios.tcc" 1 3
20264 # 32 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_ios.tcc" 3
20265 #define _BASIC_IOS_TCC 1
20266
20267
20268 # 35 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_ios.tcc" 3
20269
20270 namespace std __attribute__ ((__visibility__ ("default"))) {
20271
20272 template<typename _CharT, typename _Traits>
20273 void
20274 basic_ios<_CharT, _Traits>::clear(iostate __state)
20275 {
20276 if (this->rdbuf())
20277 _M_streambuf_state = __state;
20278 else
20279 _M_streambuf_state = __state | badbit;
20280 if (this->exceptions() & this->rdstate())
20281 __throw_ios_failure(("basic_ios::clear"));
20282 }
20283
20284 template<typename _CharT, typename _Traits>
20285 basic_streambuf<_CharT, _Traits>*
20286 basic_ios<_CharT, _Traits>::rdbuf(basic_streambuf<_CharT, _Traits>* __sb)
20287 {
20288 basic_streambuf<_CharT, _Traits>* __old = _M_streambuf;
20289 _M_streambuf = __sb;
20290 this->clear();
20291 return __old;
20292 }
20293
20294 template<typename _CharT, typename _Traits>
20295 basic_ios<_CharT, _Traits>&
20296 basic_ios<_CharT, _Traits>::copyfmt(const basic_ios& __rhs)
20297 {
20298
20299
20300 if (this != &__rhs)
20301 {
20302
20303
20304
20305
20306 _Words* __words = (__rhs._M_word_size <= _S_local_word_size) ?
20307 _M_local_word : new _Words[__rhs._M_word_size];
20308
20309
20310 _Callback_list* __cb = __rhs._M_callbacks;
20311 if (__cb)
20312 __cb->_M_add_reference();
20313 _M_call_callbacks(erase_event);
20314 if (_M_word != _M_local_word)
20315 {
20316 delete [] _M_word;
20317 _M_word = 0;
20318 }
20319 _M_dispose_callbacks();
20320
20321
20322 _M_callbacks = __cb;
20323 for (int __i = 0; __i < __rhs._M_word_size; ++__i)
20324 __words[__i] = __rhs._M_word[__i];
20325 _M_word = __words;
20326 _M_word_size = __rhs._M_word_size;
20327
20328 this->flags(__rhs.flags());
20329 this->width(__rhs.width());
20330 this->precision(__rhs.precision());
20331 this->tie(__rhs.tie());
20332 this->fill(__rhs.fill());
20333 _M_ios_locale = __rhs.getloc();
20334 _M_cache_locale(_M_ios_locale);
20335
20336 _M_call_callbacks(copyfmt_event);
20337
20338
20339 this->exceptions(__rhs.exceptions());
20340 }
20341 return *this;
20342 }
20343
20344
20345 template<typename _CharT, typename _Traits>
20346 locale
20347 basic_ios<_CharT, _Traits>::imbue(const locale& __loc)
20348 {
20349 locale __old(this->getloc());
20350 ios_base::imbue(__loc);
20351 _M_cache_locale(__loc);
20352 if (this->rdbuf() != 0)
20353 this->rdbuf()->pubimbue(__loc);
20354 return __old;
20355 }
20356
20357 template<typename _CharT, typename _Traits>
20358 void
20359 basic_ios<_CharT, _Traits>::init(basic_streambuf<_CharT, _Traits>* __sb)
20360 {
20361
20362 ios_base::_M_init();
20363
20364
20365 _M_cache_locale(_M_ios_locale);
20366 # 145 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_ios.tcc" 3
20367 _M_fill = _CharT();
20368 _M_fill_init = false;
20369
20370 _M_tie = 0;
20371 _M_exception = goodbit;
20372 _M_streambuf = __sb;
20373 _M_streambuf_state = __sb ? goodbit : badbit;
20374 }
20375
20376 template<typename _CharT, typename _Traits>
20377 void
20378 basic_ios<_CharT, _Traits>::_M_cache_locale(const locale& __loc)
20379 {
20380 if (__builtin_expect(has_facet<__ctype_type>(__loc), true))
20381 _M_ctype = &use_facet<__ctype_type>(__loc);
20382 else
20383 _M_ctype = 0;
20384
20385 if (__builtin_expect(has_facet<__num_put_type>(__loc), true))
20386 _M_num_put = &use_facet<__num_put_type>(__loc);
20387 else
20388 _M_num_put = 0;
20389
20390 if (__builtin_expect(has_facet<__num_get_type>(__loc), true))
20391 _M_num_get = &use_facet<__num_get_type>(__loc);
20392 else
20393 _M_num_get = 0;
20394 }
20395
20396
20397
20398
20399
20400 extern template class basic_ios<char>;
20401
20402
20403 extern template class basic_ios<wchar_t>;
20404
20405
20406
20407 }
20408 # 472 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/basic_ios.h" 2 3
20409 # 46 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/ios" 2 3
20410 # 41 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/ostream" 2 3
20411
20412
20413 namespace std __attribute__ ((__visibility__ ("default"))) {
20414 # 54 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/ostream" 3
20415 template<typename _CharT, typename _Traits>
20416 class basic_ostream : virtual public basic_ios<_CharT, _Traits>
20417 {
20418 public:
20419
20420 typedef _CharT char_type;
20421 typedef typename _Traits::int_type int_type;
20422 typedef typename _Traits::pos_type pos_type;
20423 typedef typename _Traits::off_type off_type;
20424 typedef _Traits traits_type;
20425
20426
20427 typedef basic_streambuf<_CharT, _Traits> __streambuf_type;
20428 typedef basic_ios<_CharT, _Traits> __ios_type;
20429 typedef basic_ostream<_CharT, _Traits> __ostream_type;
20430 typedef num_put<_CharT, ostreambuf_iterator<_CharT, _Traits> >
20431 __num_put_type;
20432 typedef ctype<_CharT> __ctype_type;
20433 # 81 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/ostream" 3
20434 explicit
20435 basic_ostream(__streambuf_type* __sb)
20436 { this->init(__sb); }
20437
20438
20439
20440
20441
20442
20443 virtual
20444 ~basic_ostream() { }
20445
20446
20447 class sentry;
20448 friend class sentry;
20449 # 107 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/ostream" 3
20450 __ostream_type&
20451 operator<<(__ostream_type& (*__pf)(__ostream_type&))
20452 {
20453
20454
20455
20456 return __pf(*this);
20457 }
20458
20459 __ostream_type&
20460 operator<<(__ios_type& (*__pf)(__ios_type&))
20461 {
20462
20463
20464
20465 __pf(*this);
20466 return *this;
20467 }
20468
20469 __ostream_type&
20470 operator<<(ios_base& (*__pf) (ios_base&))
20471 {
20472
20473
20474
20475 __pf(*this);
20476 return *this;
20477 }
20478 # 164 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/ostream" 3
20479 __ostream_type&
20480 operator<<(long __n)
20481 { return _M_insert(__n); }
20482
20483 __ostream_type&
20484 operator<<(unsigned long __n)
20485 { return _M_insert(__n); }
20486
20487 __ostream_type&
20488 operator<<(bool __n)
20489 { return _M_insert(__n); }
20490
20491 __ostream_type&
20492 operator<<(short __n);
20493
20494 __ostream_type&
20495 operator<<(unsigned short __n)
20496 {
20497
20498
20499 return _M_insert(static_cast<unsigned long>(__n));
20500 }
20501
20502 __ostream_type&
20503 operator<<(int __n);
20504
20505 __ostream_type&
20506 operator<<(unsigned int __n)
20507 {
20508
20509
20510 return _M_insert(static_cast<unsigned long>(__n));
20511 }
20512
20513
20514 __ostream_type&
20515 operator<<(long long __n)
20516 { return _M_insert(__n); }
20517
20518 __ostream_type&
20519 operator<<(unsigned long long __n)
20520 { return _M_insert(__n); }
20521
20522
20523 __ostream_type&
20524 operator<<(double __f)
20525 { return _M_insert(__f); }
20526
20527 __ostream_type&
20528 operator<<(float __f)
20529 {
20530
20531
20532 return _M_insert(static_cast<double>(__f));
20533 }
20534
20535 __ostream_type&
20536 operator<<(long double __f)
20537 { return _M_insert(__f); }
20538
20539 __ostream_type&
20540 operator<<(const void* __p)
20541 { return _M_insert(__p); }
20542 # 249 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/ostream" 3
20543 __ostream_type&
20544 operator<<(__streambuf_type* __sb);
20545 # 282 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/ostream" 3
20546 __ostream_type&
20547 put(char_type __c);
20548
20549
20550 void
20551 _M_write(const char_type* __s, streamsize __n)
20552 {
20553 const streamsize __put = this->rdbuf()->sputn(__s, __n);
20554 if (__put != __n)
20555 this->setstate(ios_base::badbit);
20556 }
20557 # 310 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/ostream" 3
20558 __ostream_type&
20559 write(const char_type* __s, streamsize __n);
20560 # 323 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/ostream" 3
20561 __ostream_type&
20562 flush();
20563 # 334 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/ostream" 3
20564 pos_type
20565 tellp();
20566 # 345 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/ostream" 3
20567 __ostream_type&
20568 seekp(pos_type);
20569 # 357 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/ostream" 3
20570 __ostream_type&
20571 seekp(off_type, ios_base::seekdir);
20572
20573 protected:
20574 basic_ostream()
20575 { this->init(0); }
20576
20577 template<typename _ValueT>
20578 __ostream_type&
20579 _M_insert(_ValueT __v);
20580 };
20581 # 376 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/ostream" 3
20582 template <typename _CharT, typename _Traits>
20583 class basic_ostream<_CharT, _Traits>::sentry
20584 {
20585
20586 bool _M_ok;
20587 basic_ostream<_CharT, _Traits>& _M_os;
20588
20589 public:
20590 # 395 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/ostream" 3
20591 explicit
20592 sentry(basic_ostream<_CharT, _Traits>& __os);
20593 # 405 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/ostream" 3
20594 ~sentry()
20595 {
20596
20597 if (bool(_M_os.flags() & ios_base::unitbuf) && !uncaught_exception())
20598 {
20599
20600 if (_M_os.rdbuf() && _M_os.rdbuf()->pubsync() == -1)
20601 _M_os.setstate(ios_base::badbit);
20602 }
20603 }
20604 # 426 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/ostream" 3
20605 operator bool() const
20606 { return _M_ok; }
20607 };
20608 # 447 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/ostream" 3
20609 template<typename _CharT, typename _Traits>
20610 inline basic_ostream<_CharT, _Traits>&
20611 operator<<(basic_ostream<_CharT, _Traits>& __out, _CharT __c)
20612 { return __ostream_insert(__out, &__c, 1); }
20613
20614 template<typename _CharT, typename _Traits>
20615 inline basic_ostream<_CharT, _Traits>&
20616 operator<<(basic_ostream<_CharT, _Traits>& __out, char __c)
20617 { return (__out << __out.widen(__c)); }
20618
20619
20620 template <class _Traits>
20621 inline basic_ostream<char, _Traits>&
20622 operator<<(basic_ostream<char, _Traits>& __out, char __c)
20623 { return __ostream_insert(__out, &__c, 1); }
20624
20625
20626 template<class _Traits>
20627 inline basic_ostream<char, _Traits>&
20628 operator<<(basic_ostream<char, _Traits>& __out, signed char __c)
20629 { return (__out << static_cast<char>(__c)); }
20630
20631 template<class _Traits>
20632 inline basic_ostream<char, _Traits>&
20633 operator<<(basic_ostream<char, _Traits>& __out, unsigned char __c)
20634 { return (__out << static_cast<char>(__c)); }
20635 # 489 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/ostream" 3
20636 template<typename _CharT, typename _Traits>
20637 inline basic_ostream<_CharT, _Traits>&
20638 operator<<(basic_ostream<_CharT, _Traits>& __out, const _CharT* __s)
20639 {
20640 if (!__s)
20641 __out.setstate(ios_base::badbit);
20642 else
20643 __ostream_insert(__out, __s,
20644 static_cast<streamsize>(_Traits::length(__s)));
20645 return __out;
20646 }
20647
20648 template<typename _CharT, typename _Traits>
20649 basic_ostream<_CharT, _Traits> &
20650 operator<<(basic_ostream<_CharT, _Traits>& __out, const char* __s);
20651
20652
20653 template<class _Traits>
20654 inline basic_ostream<char, _Traits>&
20655 operator<<(basic_ostream<char, _Traits>& __out, const char* __s)
20656 {
20657 if (!__s)
20658 __out.setstate(ios_base::badbit);
20659 else
20660 __ostream_insert(__out, __s,
20661 static_cast<streamsize>(_Traits::length(__s)));
20662 return __out;
20663 }
20664
20665
20666 template<class _Traits>
20667 inline basic_ostream<char, _Traits>&
20668 operator<<(basic_ostream<char, _Traits>& __out, const signed char* __s)
20669 { return (__out << reinterpret_cast<const char*>(__s)); }
20670
20671 template<class _Traits>
20672 inline basic_ostream<char, _Traits> &
20673 operator<<(basic_ostream<char, _Traits>& __out, const unsigned char* __s)
20674 { return (__out << reinterpret_cast<const char*>(__s)); }
20675 # 539 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/ostream" 3
20676 template<typename _CharT, typename _Traits>
20677 inline basic_ostream<_CharT, _Traits>&
20678 endl(basic_ostream<_CharT, _Traits>& __os)
20679 { return flush(__os.put(__os.widen('\n'))); }
20680
20681
20682
20683
20684
20685
20686
20687 template<typename _CharT, typename _Traits>
20688 inline basic_ostream<_CharT, _Traits>&
20689 ends(basic_ostream<_CharT, _Traits>& __os)
20690 { return __os.put(_CharT()); }
20691
20692
20693
20694
20695
20696
20697 template<typename _CharT, typename _Traits>
20698 inline basic_ostream<_CharT, _Traits>&
20699 flush(basic_ostream<_CharT, _Traits>& __os)
20700 { return __os.flush(); }
20701 # 583 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/ostream" 3
20702 }
20703
20704
20705 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/ostream.tcc" 1 3
20706 # 37 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/ostream.tcc" 3
20707 #define _OSTREAM_TCC 1
20708
20709
20710 # 40 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/ostream.tcc" 3
20711
20712
20713
20714 namespace std __attribute__ ((__visibility__ ("default"))) {
20715
20716 template<typename _CharT, typename _Traits>
20717 basic_ostream<_CharT, _Traits>::sentry::
20718 sentry(basic_ostream<_CharT, _Traits>& __os)
20719 : _M_ok(false), _M_os(__os)
20720 {
20721
20722 if (__os.tie() && __os.good())
20723 __os.tie()->flush();
20724
20725 if (__os.good())
20726 _M_ok = true;
20727 else
20728 __os.setstate(ios_base::failbit);
20729 }
20730
20731 template<typename _CharT, typename _Traits>
20732 template<typename _ValueT>
20733 basic_ostream<_CharT, _Traits>&
20734 basic_ostream<_CharT, _Traits>::
20735 _M_insert(_ValueT __v)
20736 {
20737 sentry __cerb(*this);
20738 if (__cerb)
20739 {
20740 ios_base::iostate __err = ios_base::goodbit;
20741 try
20742 {
20743 const __num_put_type& __np = __check_facet(this->_M_num_put);
20744 if (__np.put(*this, *this, this->fill(), __v).failed())
20745 __err |= ios_base::badbit;
20746 }
20747 catch(__cxxabiv1::__forced_unwind&)
20748 {
20749 this->_M_setstate(ios_base::badbit);
20750 throw;
20751 }
20752 catch(...)
20753 { this->_M_setstate(ios_base::badbit); }
20754 if (__err)
20755 this->setstate(__err);
20756 }
20757 return *this;
20758 }
20759
20760 template<typename _CharT, typename _Traits>
20761 basic_ostream<_CharT, _Traits>&
20762 basic_ostream<_CharT, _Traits>::
20763 operator<<(short __n)
20764 {
20765
20766
20767 const ios_base::fmtflags __fmt = this->flags() & ios_base::basefield;
20768 if (__fmt == ios_base::oct || __fmt == ios_base::hex)
20769 return _M_insert(static_cast<long>(static_cast<unsigned short>(__n)));
20770 else
20771 return _M_insert(static_cast<long>(__n));
20772 }
20773
20774 template<typename _CharT, typename _Traits>
20775 basic_ostream<_CharT, _Traits>&
20776 basic_ostream<_CharT, _Traits>::
20777 operator<<(int __n)
20778 {
20779
20780
20781 const ios_base::fmtflags __fmt = this->flags() & ios_base::basefield;
20782 if (__fmt == ios_base::oct || __fmt == ios_base::hex)
20783 return _M_insert(static_cast<long>(static_cast<unsigned int>(__n)));
20784 else
20785 return _M_insert(static_cast<long>(__n));
20786 }
20787
20788 template<typename _CharT, typename _Traits>
20789 basic_ostream<_CharT, _Traits>&
20790 basic_ostream<_CharT, _Traits>::
20791 operator<<(__streambuf_type* __sbin)
20792 {
20793 ios_base::iostate __err = ios_base::goodbit;
20794 sentry __cerb(*this);
20795 if (__cerb && __sbin)
20796 {
20797 try
20798 {
20799 if (!__copy_streambufs(__sbin, this->rdbuf()))
20800 __err |= ios_base::failbit;
20801 }
20802 catch(__cxxabiv1::__forced_unwind&)
20803 {
20804 this->_M_setstate(ios_base::badbit);
20805 throw;
20806 }
20807 catch(...)
20808 { this->_M_setstate(ios_base::failbit); }
20809 }
20810 else if (!__sbin)
20811 __err |= ios_base::badbit;
20812 if (__err)
20813 this->setstate(__err);
20814 return *this;
20815 }
20816
20817 template<typename _CharT, typename _Traits>
20818 basic_ostream<_CharT, _Traits>&
20819 basic_ostream<_CharT, _Traits>::
20820 put(char_type __c)
20821 {
20822
20823
20824
20825
20826
20827
20828 sentry __cerb(*this);
20829 if (__cerb)
20830 {
20831 ios_base::iostate __err = ios_base::goodbit;
20832 try
20833 {
20834 const int_type __put = this->rdbuf()->sputc(__c);
20835 if (traits_type::eq_int_type(__put, traits_type::eof()))
20836 __err |= ios_base::badbit;
20837 }
20838 catch(__cxxabiv1::__forced_unwind&)
20839 {
20840 this->_M_setstate(ios_base::badbit);
20841 throw;
20842 }
20843 catch(...)
20844 { this->_M_setstate(ios_base::badbit); }
20845 if (__err)
20846 this->setstate(__err);
20847 }
20848 return *this;
20849 }
20850
20851 template<typename _CharT, typename _Traits>
20852 basic_ostream<_CharT, _Traits>&
20853 basic_ostream<_CharT, _Traits>::
20854 write(const _CharT* __s, streamsize __n)
20855 {
20856
20857
20858
20859
20860
20861
20862
20863 sentry __cerb(*this);
20864 if (__cerb)
20865 {
20866 try
20867 { _M_write(__s, __n); }
20868 catch(__cxxabiv1::__forced_unwind&)
20869 {
20870 this->_M_setstate(ios_base::badbit);
20871 throw;
20872 }
20873 catch(...)
20874 { this->_M_setstate(ios_base::badbit); }
20875 }
20876 return *this;
20877 }
20878
20879 template<typename _CharT, typename _Traits>
20880 basic_ostream<_CharT, _Traits>&
20881 basic_ostream<_CharT, _Traits>::
20882 flush()
20883 {
20884
20885
20886
20887 ios_base::iostate __err = ios_base::goodbit;
20888 try
20889 {
20890 if (this->rdbuf() && this->rdbuf()->pubsync() == -1)
20891 __err |= ios_base::badbit;
20892 }
20893 catch(__cxxabiv1::__forced_unwind&)
20894 {
20895 this->_M_setstate(ios_base::badbit);
20896 throw;
20897 }
20898 catch(...)
20899 { this->_M_setstate(ios_base::badbit); }
20900 if (__err)
20901 this->setstate(__err);
20902 return *this;
20903 }
20904
20905 template<typename _CharT, typename _Traits>
20906 typename basic_ostream<_CharT, _Traits>::pos_type
20907 basic_ostream<_CharT, _Traits>::
20908 tellp()
20909 {
20910 pos_type __ret = pos_type(-1);
20911 try
20912 {
20913 if (!this->fail())
20914 __ret = this->rdbuf()->pubseekoff(0, ios_base::cur, ios_base::out);
20915 }
20916 catch(__cxxabiv1::__forced_unwind&)
20917 {
20918 this->_M_setstate(ios_base::badbit);
20919 throw;
20920 }
20921 catch(...)
20922 { this->_M_setstate(ios_base::badbit); }
20923 return __ret;
20924 }
20925
20926 template<typename _CharT, typename _Traits>
20927 basic_ostream<_CharT, _Traits>&
20928 basic_ostream<_CharT, _Traits>::
20929 seekp(pos_type __pos)
20930 {
20931 ios_base::iostate __err = ios_base::goodbit;
20932 try
20933 {
20934 if (!this->fail())
20935 {
20936
20937
20938 const pos_type __p = this->rdbuf()->pubseekpos(__pos,
20939 ios_base::out);
20940
20941
20942 if (__p == pos_type(off_type(-1)))
20943 __err |= ios_base::failbit;
20944 }
20945 }
20946 catch(__cxxabiv1::__forced_unwind&)
20947 {
20948 this->_M_setstate(ios_base::badbit);
20949 throw;
20950 }
20951 catch(...)
20952 { this->_M_setstate(ios_base::badbit); }
20953 if (__err)
20954 this->setstate(__err);
20955 return *this;
20956 }
20957
20958 template<typename _CharT, typename _Traits>
20959 basic_ostream<_CharT, _Traits>&
20960 basic_ostream<_CharT, _Traits>::
20961 seekp(off_type __off, ios_base::seekdir __dir)
20962 {
20963 ios_base::iostate __err = ios_base::goodbit;
20964 try
20965 {
20966 if (!this->fail())
20967 {
20968
20969
20970 const pos_type __p = this->rdbuf()->pubseekoff(__off, __dir,
20971 ios_base::out);
20972
20973
20974 if (__p == pos_type(off_type(-1)))
20975 __err |= ios_base::failbit;
20976 }
20977 }
20978 catch(__cxxabiv1::__forced_unwind&)
20979 {
20980 this->_M_setstate(ios_base::badbit);
20981 throw;
20982 }
20983 catch(...)
20984 { this->_M_setstate(ios_base::badbit); }
20985 if (__err)
20986 this->setstate(__err);
20987 return *this;
20988 }
20989
20990 template<typename _CharT, typename _Traits>
20991 basic_ostream<_CharT, _Traits>&
20992 operator<<(basic_ostream<_CharT, _Traits>& __out, const char* __s)
20993 {
20994 if (!__s)
20995 __out.setstate(ios_base::badbit);
20996 else
20997 {
20998
20999
21000 const size_t __clen = char_traits<char>::length(__s);
21001 try
21002 {
21003 struct __ptr_guard
21004 {
21005 _CharT *__p;
21006 __ptr_guard (_CharT *__ip): __p(__ip) { }
21007 ~__ptr_guard() { delete[] __p; }
21008 _CharT* __get() { return __p; }
21009 } __pg (new _CharT[__clen]);
21010
21011 _CharT *__ws = __pg.__get();
21012 for (size_t __i = 0; __i < __clen; ++__i)
21013 __ws[__i] = __out.widen(__s[__i]);
21014 __ostream_insert(__out, __ws, __clen);
21015 }
21016 catch(__cxxabiv1::__forced_unwind&)
21017 {
21018 __out._M_setstate(ios_base::badbit);
21019 throw;
21020 }
21021 catch(...)
21022 { __out._M_setstate(ios_base::badbit); }
21023 }
21024 return __out;
21025 }
21026
21027
21028
21029
21030
21031 extern template class basic_ostream<char>;
21032 extern template ostream& endl(ostream&);
21033 extern template ostream& ends(ostream&);
21034 extern template ostream& flush(ostream&);
21035 extern template ostream& operator<<(ostream&, char);
21036 extern template ostream& operator<<(ostream&, unsigned char);
21037 extern template ostream& operator<<(ostream&, signed char);
21038 extern template ostream& operator<<(ostream&, const char*);
21039 extern template ostream& operator<<(ostream&, const unsigned char*);
21040 extern template ostream& operator<<(ostream&, const signed char*);
21041
21042 extern template ostream& ostream::_M_insert(long);
21043 extern template ostream& ostream::_M_insert(unsigned long);
21044 extern template ostream& ostream::_M_insert(bool);
21045
21046 extern template ostream& ostream::_M_insert(long long);
21047 extern template ostream& ostream::_M_insert(unsigned long long);
21048
21049 extern template ostream& ostream::_M_insert(double);
21050 extern template ostream& ostream::_M_insert(long double);
21051 extern template ostream& ostream::_M_insert(const void*);
21052
21053
21054 extern template class basic_ostream<wchar_t>;
21055 extern template wostream& endl(wostream&);
21056 extern template wostream& ends(wostream&);
21057 extern template wostream& flush(wostream&);
21058 extern template wostream& operator<<(wostream&, wchar_t);
21059 extern template wostream& operator<<(wostream&, char);
21060 extern template wostream& operator<<(wostream&, const wchar_t*);
21061 extern template wostream& operator<<(wostream&, const char*);
21062
21063 extern template wostream& wostream::_M_insert(long);
21064 extern template wostream& wostream::_M_insert(unsigned long);
21065 extern template wostream& wostream::_M_insert(bool);
21066
21067 extern template wostream& wostream::_M_insert(long long);
21068 extern template wostream& wostream::_M_insert(unsigned long long);
21069
21070 extern template wostream& wostream::_M_insert(double);
21071 extern template wostream& wostream::_M_insert(long double);
21072 extern template wostream& wostream::_M_insert(const void*);
21073
21074
21075
21076 }
21077 # 587 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/ostream" 2 3
21078 # 41 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/iostream" 2 3
21079 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/istream" 1 3
21080 # 36 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/istream" 3
21081 #define _GLIBCXX_ISTREAM 1
21082
21083
21084 # 39 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/istream" 3
21085
21086
21087
21088
21089 namespace std __attribute__ ((__visibility__ ("default"))) {
21090 # 54 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/istream" 3
21091 template<typename _CharT, typename _Traits>
21092 class basic_istream : virtual public basic_ios<_CharT, _Traits>
21093 {
21094 public:
21095
21096 typedef _CharT char_type;
21097 typedef typename _Traits::int_type int_type;
21098 typedef typename _Traits::pos_type pos_type;
21099 typedef typename _Traits::off_type off_type;
21100 typedef _Traits traits_type;
21101
21102
21103 typedef basic_streambuf<_CharT, _Traits> __streambuf_type;
21104 typedef basic_ios<_CharT, _Traits> __ios_type;
21105 typedef basic_istream<_CharT, _Traits> __istream_type;
21106 typedef num_get<_CharT, istreambuf_iterator<_CharT, _Traits> >
21107 __num_get_type;
21108 typedef ctype<_CharT> __ctype_type;
21109
21110 protected:
21111
21112
21113
21114
21115
21116 streamsize _M_gcount;
21117
21118 public:
21119 # 90 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/istream" 3
21120 explicit
21121 basic_istream(__streambuf_type* __sb)
21122 : _M_gcount(streamsize(0))
21123 { this->init(__sb); }
21124
21125
21126
21127
21128
21129
21130 virtual
21131 ~basic_istream()
21132 { _M_gcount = streamsize(0); }
21133
21134
21135 class sentry;
21136 friend class sentry;
21137 # 119 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/istream" 3
21138 __istream_type&
21139 operator>>(__istream_type& (*__pf)(__istream_type&))
21140 { return __pf(*this); }
21141
21142 __istream_type&
21143 operator>>(__ios_type& (*__pf)(__ios_type&))
21144 {
21145 __pf(*this);
21146 return *this;
21147 }
21148
21149 __istream_type&
21150 operator>>(ios_base& (*__pf)(ios_base&))
21151 {
21152 __pf(*this);
21153 return *this;
21154 }
21155 # 166 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/istream" 3
21156 __istream_type&
21157 operator>>(bool& __n)
21158 { return _M_extract(__n); }
21159
21160 __istream_type&
21161 operator>>(short& __n);
21162
21163 __istream_type&
21164 operator>>(unsigned short& __n)
21165 { return _M_extract(__n); }
21166
21167 __istream_type&
21168 operator>>(int& __n);
21169
21170 __istream_type&
21171 operator>>(unsigned int& __n)
21172 { return _M_extract(__n); }
21173
21174 __istream_type&
21175 operator>>(long& __n)
21176 { return _M_extract(__n); }
21177
21178 __istream_type&
21179 operator>>(unsigned long& __n)
21180 { return _M_extract(__n); }
21181
21182
21183 __istream_type&
21184 operator>>(long long& __n)
21185 { return _M_extract(__n); }
21186
21187 __istream_type&
21188 operator>>(unsigned long long& __n)
21189 { return _M_extract(__n); }
21190
21191
21192 __istream_type&
21193 operator>>(float& __f)
21194 { return _M_extract(__f); }
21195
21196 __istream_type&
21197 operator>>(double& __f)
21198 { return _M_extract(__f); }
21199
21200 __istream_type&
21201 operator>>(long double& __f)
21202 { return _M_extract(__f); }
21203
21204 __istream_type&
21205 operator>>(void*& __p)
21206 { return _M_extract(__p); }
21207 # 238 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/istream" 3
21208 __istream_type&
21209 operator>>(__streambuf_type* __sb);
21210 # 248 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/istream" 3
21211 streamsize
21212 gcount() const
21213 { return _M_gcount; }
21214 # 280 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/istream" 3
21215 int_type
21216 get();
21217 # 294 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/istream" 3
21218 __istream_type&
21219 get(char_type& __c);
21220 # 321 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/istream" 3
21221 __istream_type&
21222 get(char_type* __s, streamsize __n, char_type __delim);
21223 # 332 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/istream" 3
21224 __istream_type&
21225 get(char_type* __s, streamsize __n)
21226 { return this->get(__s, __n, this->widen('\n')); }
21227 # 355 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/istream" 3
21228 __istream_type&
21229 get(__streambuf_type& __sb, char_type __delim);
21230 # 365 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/istream" 3
21231 __istream_type&
21232 get(__streambuf_type& __sb)
21233 { return this->get(__sb, this->widen('\n')); }
21234 # 394 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/istream" 3
21235 __istream_type&
21236 getline(char_type* __s, streamsize __n, char_type __delim);
21237 # 405 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/istream" 3
21238 __istream_type&
21239 getline(char_type* __s, streamsize __n)
21240 { return this->getline(__s, __n, this->widen('\n')); }
21241 # 429 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/istream" 3
21242 __istream_type&
21243 ignore();
21244
21245 __istream_type&
21246 ignore(streamsize __n);
21247
21248 __istream_type&
21249 ignore(streamsize __n, int_type __delim);
21250 # 446 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/istream" 3
21251 int_type
21252 peek();
21253 # 464 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/istream" 3
21254 __istream_type&
21255 read(char_type* __s, streamsize __n);
21256 # 483 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/istream" 3
21257 streamsize
21258 readsome(char_type* __s, streamsize __n);
21259 # 499 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/istream" 3
21260 __istream_type&
21261 putback(char_type __c);
21262 # 514 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/istream" 3
21263 __istream_type&
21264 unget();
21265 # 532 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/istream" 3
21266 int
21267 sync();
21268 # 546 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/istream" 3
21269 pos_type
21270 tellg();
21271 # 561 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/istream" 3
21272 __istream_type&
21273 seekg(pos_type);
21274 # 577 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/istream" 3
21275 __istream_type&
21276 seekg(off_type, ios_base::seekdir);
21277
21278
21279 protected:
21280 basic_istream()
21281 : _M_gcount(streamsize(0))
21282 { this->init(0); }
21283
21284 template<typename _ValueT>
21285 __istream_type&
21286 _M_extract(_ValueT& __v);
21287 };
21288
21289
21290 template<>
21291 basic_istream<char>&
21292 basic_istream<char>::
21293 getline(char_type* __s, streamsize __n, char_type __delim);
21294
21295 template<>
21296 basic_istream<char>&
21297 basic_istream<char>::
21298 ignore(streamsize __n);
21299
21300 template<>
21301 basic_istream<char>&
21302 basic_istream<char>::
21303 ignore(streamsize __n, int_type __delim);
21304
21305
21306 template<>
21307 basic_istream<wchar_t>&
21308 basic_istream<wchar_t>::
21309 getline(char_type* __s, streamsize __n, char_type __delim);
21310
21311 template<>
21312 basic_istream<wchar_t>&
21313 basic_istream<wchar_t>::
21314 ignore(streamsize __n);
21315
21316 template<>
21317 basic_istream<wchar_t>&
21318 basic_istream<wchar_t>::
21319 ignore(streamsize __n, int_type __delim);
21320 # 632 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/istream" 3
21321 template<typename _CharT, typename _Traits>
21322 class basic_istream<_CharT, _Traits>::sentry
21323 {
21324
21325 bool _M_ok;
21326
21327 public:
21328
21329 typedef _Traits traits_type;
21330 typedef basic_streambuf<_CharT, _Traits> __streambuf_type;
21331 typedef basic_istream<_CharT, _Traits> __istream_type;
21332 typedef typename __istream_type::__ctype_type __ctype_type;
21333 typedef typename _Traits::int_type __int_type;
21334 # 668 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/istream" 3
21335 explicit
21336 sentry(basic_istream<_CharT, _Traits>& __is, bool __noskipws = false);
21337 # 681 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/istream" 3
21338 operator bool() const
21339 { return _M_ok; }
21340 };
21341 # 698 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/istream" 3
21342 template<typename _CharT, typename _Traits>
21343 basic_istream<_CharT, _Traits>&
21344 operator>>(basic_istream<_CharT, _Traits>& __in, _CharT& __c);
21345
21346 template<class _Traits>
21347 inline basic_istream<char, _Traits>&
21348 operator>>(basic_istream<char, _Traits>& __in, unsigned char& __c)
21349 { return (__in >> reinterpret_cast<char&>(__c)); }
21350
21351 template<class _Traits>
21352 inline basic_istream<char, _Traits>&
21353 operator>>(basic_istream<char, _Traits>& __in, signed char& __c)
21354 { return (__in >> reinterpret_cast<char&>(__c)); }
21355 # 740 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/istream" 3
21356 template<typename _CharT, typename _Traits>
21357 basic_istream<_CharT, _Traits>&
21358 operator>>(basic_istream<_CharT, _Traits>& __in, _CharT* __s);
21359
21360
21361 template<>
21362 basic_istream<char>&
21363 operator>>(basic_istream<char>& __in, char* __s);
21364
21365 template<class _Traits>
21366 inline basic_istream<char, _Traits>&
21367 operator>>(basic_istream<char, _Traits>& __in, unsigned char* __s)
21368 { return (__in >> reinterpret_cast<char*>(__s)); }
21369
21370 template<class _Traits>
21371 inline basic_istream<char, _Traits>&
21372 operator>>(basic_istream<char, _Traits>& __in, signed char* __s)
21373 { return (__in >> reinterpret_cast<char*>(__s)); }
21374 # 768 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/istream" 3
21375 template<typename _CharT, typename _Traits>
21376 class basic_iostream
21377 : public basic_istream<_CharT, _Traits>,
21378 public basic_ostream<_CharT, _Traits>
21379 {
21380 public:
21381
21382
21383
21384 typedef _CharT char_type;
21385 typedef typename _Traits::int_type int_type;
21386 typedef typename _Traits::pos_type pos_type;
21387 typedef typename _Traits::off_type off_type;
21388 typedef _Traits traits_type;
21389
21390
21391 typedef basic_istream<_CharT, _Traits> __istream_type;
21392 typedef basic_ostream<_CharT, _Traits> __ostream_type;
21393
21394
21395
21396
21397
21398
21399
21400 explicit
21401 basic_iostream(basic_streambuf<_CharT, _Traits>* __sb)
21402 : __istream_type(__sb), __ostream_type(__sb) { }
21403
21404
21405
21406
21407 virtual
21408 ~basic_iostream() { }
21409
21410 protected:
21411 basic_iostream()
21412 : __istream_type(), __ostream_type() { }
21413 };
21414 # 829 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/istream" 3
21415 template<typename _CharT, typename _Traits>
21416 basic_istream<_CharT, _Traits>&
21417 ws(basic_istream<_CharT, _Traits>& __is);
21418 # 851 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/istream" 3
21419 }
21420
21421
21422 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/istream.tcc" 1 3
21423 # 37 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/istream.tcc" 3
21424 #define _ISTREAM_TCC 1
21425
21426
21427 # 40 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/istream.tcc" 3
21428
21429
21430
21431 namespace std __attribute__ ((__visibility__ ("default"))) {
21432
21433 template<typename _CharT, typename _Traits>
21434 basic_istream<_CharT, _Traits>::sentry::
21435 sentry(basic_istream<_CharT, _Traits>& __in, bool __noskip) : _M_ok(false)
21436 {
21437 ios_base::iostate __err = ios_base::goodbit;
21438 if (__in.good())
21439 {
21440 if (__in.tie())
21441 __in.tie()->flush();
21442 if (!__noskip && bool(__in.flags() & ios_base::skipws))
21443 {
21444 const __int_type __eof = traits_type::eof();
21445 __streambuf_type* __sb = __in.rdbuf();
21446 __int_type __c = __sb->sgetc();
21447
21448 const __ctype_type& __ct = __check_facet(__in._M_ctype);
21449 while (!traits_type::eq_int_type(__c, __eof)
21450 && __ct.is(ctype_base::space,
21451 traits_type::to_char_type(__c)))
21452 __c = __sb->snextc();
21453
21454
21455
21456
21457 if (traits_type::eq_int_type(__c, __eof))
21458 __err |= ios_base::eofbit;
21459 }
21460 }
21461
21462 if (__in.good() && __err == ios_base::goodbit)
21463 _M_ok = true;
21464 else
21465 {
21466 __err |= ios_base::failbit;
21467 __in.setstate(__err);
21468 }
21469 }
21470
21471 template<typename _CharT, typename _Traits>
21472 template<typename _ValueT>
21473 basic_istream<_CharT, _Traits>&
21474 basic_istream<_CharT, _Traits>::
21475 _M_extract(_ValueT& __v)
21476 {
21477 sentry __cerb(*this, false);
21478 if (__cerb)
21479 {
21480 ios_base::iostate __err = ios_base::goodbit;
21481 try
21482 {
21483 const __num_get_type& __ng = __check_facet(this->_M_num_get);
21484 __ng.get(*this, 0, *this, __err, __v);
21485 }
21486 catch(__cxxabiv1::__forced_unwind&)
21487 {
21488 this->_M_setstate(ios_base::badbit);
21489 throw;
21490 }
21491 catch(...)
21492 { this->_M_setstate(ios_base::badbit); }
21493 if (__err)
21494 this->setstate(__err);
21495 }
21496 return *this;
21497 }
21498
21499 template<typename _CharT, typename _Traits>
21500 basic_istream<_CharT, _Traits>&
21501 basic_istream<_CharT, _Traits>::
21502 operator>>(short& __n)
21503 {
21504
21505
21506 sentry __cerb(*this, false);
21507 if (__cerb)
21508 {
21509 ios_base::iostate __err = ios_base::goodbit;
21510 try
21511 {
21512 long __l;
21513 const __num_get_type& __ng = __check_facet(this->_M_num_get);
21514 __ng.get(*this, 0, *this, __err, __l);
21515
21516
21517
21518 if (__l < __gnu_cxx::__numeric_traits<short>::__min)
21519 {
21520 __err |= ios_base::failbit;
21521 __n = __gnu_cxx::__numeric_traits<short>::__min;
21522 }
21523 else if (__l > __gnu_cxx::__numeric_traits<short>::__max)
21524 {
21525 __err |= ios_base::failbit;
21526 __n = __gnu_cxx::__numeric_traits<short>::__max;
21527 }
21528 else
21529 __n = short(__l);
21530 }
21531 catch(__cxxabiv1::__forced_unwind&)
21532 {
21533 this->_M_setstate(ios_base::badbit);
21534 throw;
21535 }
21536 catch(...)
21537 { this->_M_setstate(ios_base::badbit); }
21538 if (__err)
21539 this->setstate(__err);
21540 }
21541 return *this;
21542 }
21543
21544 template<typename _CharT, typename _Traits>
21545 basic_istream<_CharT, _Traits>&
21546 basic_istream<_CharT, _Traits>::
21547 operator>>(int& __n)
21548 {
21549
21550
21551 sentry __cerb(*this, false);
21552 if (__cerb)
21553 {
21554 ios_base::iostate __err = ios_base::goodbit;
21555 try
21556 {
21557 long __l;
21558 const __num_get_type& __ng = __check_facet(this->_M_num_get);
21559 __ng.get(*this, 0, *this, __err, __l);
21560
21561
21562
21563 if (__l < __gnu_cxx::__numeric_traits<int>::__min)
21564 {
21565 __err |= ios_base::failbit;
21566 __n = __gnu_cxx::__numeric_traits<int>::__min;
21567 }
21568 else if (__l > __gnu_cxx::__numeric_traits<int>::__max)
21569 {
21570 __err |= ios_base::failbit;
21571 __n = __gnu_cxx::__numeric_traits<int>::__max;
21572 }
21573 else
21574 __n = int(__l);
21575 }
21576 catch(__cxxabiv1::__forced_unwind&)
21577 {
21578 this->_M_setstate(ios_base::badbit);
21579 throw;
21580 }
21581 catch(...)
21582 { this->_M_setstate(ios_base::badbit); }
21583 if (__err)
21584 this->setstate(__err);
21585 }
21586 return *this;
21587 }
21588
21589 template<typename _CharT, typename _Traits>
21590 basic_istream<_CharT, _Traits>&
21591 basic_istream<_CharT, _Traits>::
21592 operator>>(__streambuf_type* __sbout)
21593 {
21594 ios_base::iostate __err = ios_base::goodbit;
21595 sentry __cerb(*this, false);
21596 if (__cerb && __sbout)
21597 {
21598 try
21599 {
21600 bool __ineof;
21601 if (!__copy_streambufs_eof(this->rdbuf(), __sbout, __ineof))
21602 __err |= ios_base::failbit;
21603 if (__ineof)
21604 __err |= ios_base::eofbit;
21605 }
21606 catch(__cxxabiv1::__forced_unwind&)
21607 {
21608 this->_M_setstate(ios_base::failbit);
21609 throw;
21610 }
21611 catch(...)
21612 { this->_M_setstate(ios_base::failbit); }
21613 }
21614 else if (!__sbout)
21615 __err |= ios_base::failbit;
21616 if (__err)
21617 this->setstate(__err);
21618 return *this;
21619 }
21620
21621 template<typename _CharT, typename _Traits>
21622 typename basic_istream<_CharT, _Traits>::int_type
21623 basic_istream<_CharT, _Traits>::
21624 get(void)
21625 {
21626 const int_type __eof = traits_type::eof();
21627 int_type __c = __eof;
21628 _M_gcount = 0;
21629 ios_base::iostate __err = ios_base::goodbit;
21630 sentry __cerb(*this, true);
21631 if (__cerb)
21632 {
21633 try
21634 {
21635 __c = this->rdbuf()->sbumpc();
21636
21637 if (!traits_type::eq_int_type(__c, __eof))
21638 _M_gcount = 1;
21639 else
21640 __err |= ios_base::eofbit;
21641 }
21642 catch(__cxxabiv1::__forced_unwind&)
21643 {
21644 this->_M_setstate(ios_base::badbit);
21645 throw;
21646 }
21647 catch(...)
21648 { this->_M_setstate(ios_base::badbit); }
21649 }
21650 if (!_M_gcount)
21651 __err |= ios_base::failbit;
21652 if (__err)
21653 this->setstate(__err);
21654 return __c;
21655 }
21656
21657 template<typename _CharT, typename _Traits>
21658 basic_istream<_CharT, _Traits>&
21659 basic_istream<_CharT, _Traits>::
21660 get(char_type& __c)
21661 {
21662 _M_gcount = 0;
21663 ios_base::iostate __err = ios_base::goodbit;
21664 sentry __cerb(*this, true);
21665 if (__cerb)
21666 {
21667 try
21668 {
21669 const int_type __cb = this->rdbuf()->sbumpc();
21670
21671 if (!traits_type::eq_int_type(__cb, traits_type::eof()))
21672 {
21673 _M_gcount = 1;
21674 __c = traits_type::to_char_type(__cb);
21675 }
21676 else
21677 __err |= ios_base::eofbit;
21678 }
21679 catch(__cxxabiv1::__forced_unwind&)
21680 {
21681 this->_M_setstate(ios_base::badbit);
21682 throw;
21683 }
21684 catch(...)
21685 { this->_M_setstate(ios_base::badbit); }
21686 }
21687 if (!_M_gcount)
21688 __err |= ios_base::failbit;
21689 if (__err)
21690 this->setstate(__err);
21691 return *this;
21692 }
21693
21694 template<typename _CharT, typename _Traits>
21695 basic_istream<_CharT, _Traits>&
21696 basic_istream<_CharT, _Traits>::
21697 get(char_type* __s, streamsize __n, char_type __delim)
21698 {
21699 _M_gcount = 0;
21700 ios_base::iostate __err = ios_base::goodbit;
21701 sentry __cerb(*this, true);
21702 if (__cerb)
21703 {
21704 try
21705 {
21706 const int_type __idelim = traits_type::to_int_type(__delim);
21707 const int_type __eof = traits_type::eof();
21708 __streambuf_type* __sb = this->rdbuf();
21709 int_type __c = __sb->sgetc();
21710
21711 while (_M_gcount + 1 < __n
21712 && !traits_type::eq_int_type(__c, __eof)
21713 && !traits_type::eq_int_type(__c, __idelim))
21714 {
21715 *__s++ = traits_type::to_char_type(__c);
21716 ++_M_gcount;
21717 __c = __sb->snextc();
21718 }
21719 if (traits_type::eq_int_type(__c, __eof))
21720 __err |= ios_base::eofbit;
21721 }
21722 catch(__cxxabiv1::__forced_unwind&)
21723 {
21724 this->_M_setstate(ios_base::badbit);
21725 throw;
21726 }
21727 catch(...)
21728 { this->_M_setstate(ios_base::badbit); }
21729 }
21730
21731
21732 if (__n > 0)
21733 *__s = char_type();
21734 if (!_M_gcount)
21735 __err |= ios_base::failbit;
21736 if (__err)
21737 this->setstate(__err);
21738 return *this;
21739 }
21740
21741 template<typename _CharT, typename _Traits>
21742 basic_istream<_CharT, _Traits>&
21743 basic_istream<_CharT, _Traits>::
21744 get(__streambuf_type& __sb, char_type __delim)
21745 {
21746 _M_gcount = 0;
21747 ios_base::iostate __err = ios_base::goodbit;
21748 sentry __cerb(*this, true);
21749 if (__cerb)
21750 {
21751 try
21752 {
21753 const int_type __idelim = traits_type::to_int_type(__delim);
21754 const int_type __eof = traits_type::eof();
21755 __streambuf_type* __this_sb = this->rdbuf();
21756 int_type __c = __this_sb->sgetc();
21757 char_type __c2 = traits_type::to_char_type(__c);
21758
21759 while (!traits_type::eq_int_type(__c, __eof)
21760 && !traits_type::eq_int_type(__c, __idelim)
21761 && !traits_type::eq_int_type(__sb.sputc(__c2), __eof))
21762 {
21763 ++_M_gcount;
21764 __c = __this_sb->snextc();
21765 __c2 = traits_type::to_char_type(__c);
21766 }
21767 if (traits_type::eq_int_type(__c, __eof))
21768 __err |= ios_base::eofbit;
21769 }
21770 catch(__cxxabiv1::__forced_unwind&)
21771 {
21772 this->_M_setstate(ios_base::badbit);
21773 throw;
21774 }
21775 catch(...)
21776 { this->_M_setstate(ios_base::badbit); }
21777 }
21778 if (!_M_gcount)
21779 __err |= ios_base::failbit;
21780 if (__err)
21781 this->setstate(__err);
21782 return *this;
21783 }
21784
21785 template<typename _CharT, typename _Traits>
21786 basic_istream<_CharT, _Traits>&
21787 basic_istream<_CharT, _Traits>::
21788 getline(char_type* __s, streamsize __n, char_type __delim)
21789 {
21790 _M_gcount = 0;
21791 ios_base::iostate __err = ios_base::goodbit;
21792 sentry __cerb(*this, true);
21793 if (__cerb)
21794 {
21795 try
21796 {
21797 const int_type __idelim = traits_type::to_int_type(__delim);
21798 const int_type __eof = traits_type::eof();
21799 __streambuf_type* __sb = this->rdbuf();
21800 int_type __c = __sb->sgetc();
21801
21802 while (_M_gcount + 1 < __n
21803 && !traits_type::eq_int_type(__c, __eof)
21804 && !traits_type::eq_int_type(__c, __idelim))
21805 {
21806 *__s++ = traits_type::to_char_type(__c);
21807 __c = __sb->snextc();
21808 ++_M_gcount;
21809 }
21810 if (traits_type::eq_int_type(__c, __eof))
21811 __err |= ios_base::eofbit;
21812 else
21813 {
21814 if (traits_type::eq_int_type(__c, __idelim))
21815 {
21816 __sb->sbumpc();
21817 ++_M_gcount;
21818 }
21819 else
21820 __err |= ios_base::failbit;
21821 }
21822 }
21823 catch(__cxxabiv1::__forced_unwind&)
21824 {
21825 this->_M_setstate(ios_base::badbit);
21826 throw;
21827 }
21828 catch(...)
21829 { this->_M_setstate(ios_base::badbit); }
21830 }
21831
21832
21833 if (__n > 0)
21834 *__s = char_type();
21835 if (!_M_gcount)
21836 __err |= ios_base::failbit;
21837 if (__err)
21838 this->setstate(__err);
21839 return *this;
21840 }
21841
21842
21843
21844
21845 template<typename _CharT, typename _Traits>
21846 basic_istream<_CharT, _Traits>&
21847 basic_istream<_CharT, _Traits>::
21848 ignore(void)
21849 {
21850 _M_gcount = 0;
21851 sentry __cerb(*this, true);
21852 if (__cerb)
21853 {
21854 ios_base::iostate __err = ios_base::goodbit;
21855 try
21856 {
21857 const int_type __eof = traits_type::eof();
21858 __streambuf_type* __sb = this->rdbuf();
21859
21860 if (traits_type::eq_int_type(__sb->sbumpc(), __eof))
21861 __err |= ios_base::eofbit;
21862 else
21863 _M_gcount = 1;
21864 }
21865 catch(__cxxabiv1::__forced_unwind&)
21866 {
21867 this->_M_setstate(ios_base::badbit);
21868 throw;
21869 }
21870 catch(...)
21871 { this->_M_setstate(ios_base::badbit); }
21872 if (__err)
21873 this->setstate(__err);
21874 }
21875 return *this;
21876 }
21877
21878 template<typename _CharT, typename _Traits>
21879 basic_istream<_CharT, _Traits>&
21880 basic_istream<_CharT, _Traits>::
21881 ignore(streamsize __n)
21882 {
21883 _M_gcount = 0;
21884 sentry __cerb(*this, true);
21885 if (__cerb && __n > 0)
21886 {
21887 ios_base::iostate __err = ios_base::goodbit;
21888 try
21889 {
21890 const int_type __eof = traits_type::eof();
21891 __streambuf_type* __sb = this->rdbuf();
21892 int_type __c = __sb->sgetc();
21893 # 513 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/istream.tcc" 3
21894 bool __large_ignore = false;
21895 while (true)
21896 {
21897 while (_M_gcount < __n
21898 && !traits_type::eq_int_type(__c, __eof))
21899 {
21900 ++_M_gcount;
21901 __c = __sb->snextc();
21902 }
21903 if (__n == __gnu_cxx::__numeric_traits<streamsize>::__max
21904 && !traits_type::eq_int_type(__c, __eof))
21905 {
21906 _M_gcount =
21907 __gnu_cxx::__numeric_traits<streamsize>::__min;
21908 __large_ignore = true;
21909 }
21910 else
21911 break;
21912 }
21913
21914 if (__large_ignore)
21915 _M_gcount = __gnu_cxx::__numeric_traits<streamsize>::__max;
21916
21917 if (traits_type::eq_int_type(__c, __eof))
21918 __err |= ios_base::eofbit;
21919 }
21920 catch(__cxxabiv1::__forced_unwind&)
21921 {
21922 this->_M_setstate(ios_base::badbit);
21923 throw;
21924 }
21925 catch(...)
21926 { this->_M_setstate(ios_base::badbit); }
21927 if (__err)
21928 this->setstate(__err);
21929 }
21930 return *this;
21931 }
21932
21933 template<typename _CharT, typename _Traits>
21934 basic_istream<_CharT, _Traits>&
21935 basic_istream<_CharT, _Traits>::
21936 ignore(streamsize __n, int_type __delim)
21937 {
21938 _M_gcount = 0;
21939 sentry __cerb(*this, true);
21940 if (__cerb && __n > 0)
21941 {
21942 ios_base::iostate __err = ios_base::goodbit;
21943 try
21944 {
21945 const int_type __eof = traits_type::eof();
21946 __streambuf_type* __sb = this->rdbuf();
21947 int_type __c = __sb->sgetc();
21948
21949
21950 bool __large_ignore = false;
21951 while (true)
21952 {
21953 while (_M_gcount < __n
21954 && !traits_type::eq_int_type(__c, __eof)
21955 && !traits_type::eq_int_type(__c, __delim))
21956 {
21957 ++_M_gcount;
21958 __c = __sb->snextc();
21959 }
21960 if (__n == __gnu_cxx::__numeric_traits<streamsize>::__max
21961 && !traits_type::eq_int_type(__c, __eof)
21962 && !traits_type::eq_int_type(__c, __delim))
21963 {
21964 _M_gcount =
21965 __gnu_cxx::__numeric_traits<streamsize>::__min;
21966 __large_ignore = true;
21967 }
21968 else
21969 break;
21970 }
21971
21972 if (__large_ignore)
21973 _M_gcount = __gnu_cxx::__numeric_traits<streamsize>::__max;
21974
21975 if (traits_type::eq_int_type(__c, __eof))
21976 __err |= ios_base::eofbit;
21977 else if (traits_type::eq_int_type(__c, __delim))
21978 {
21979 if (_M_gcount
21980 < __gnu_cxx::__numeric_traits<streamsize>::__max)
21981 ++_M_gcount;
21982 __sb->sbumpc();
21983 }
21984 }
21985 catch(__cxxabiv1::__forced_unwind&)
21986 {
21987 this->_M_setstate(ios_base::badbit);
21988 throw;
21989 }
21990 catch(...)
21991 { this->_M_setstate(ios_base::badbit); }
21992 if (__err)
21993 this->setstate(__err);
21994 }
21995 return *this;
21996 }
21997
21998 template<typename _CharT, typename _Traits>
21999 typename basic_istream<_CharT, _Traits>::int_type
22000 basic_istream<_CharT, _Traits>::
22001 peek(void)
22002 {
22003 int_type __c = traits_type::eof();
22004 _M_gcount = 0;
22005 sentry __cerb(*this, true);
22006 if (__cerb)
22007 {
22008 ios_base::iostate __err = ios_base::goodbit;
22009 try
22010 {
22011 __c = this->rdbuf()->sgetc();
22012 if (traits_type::eq_int_type(__c, traits_type::eof()))
22013 __err |= ios_base::eofbit;
22014 }
22015 catch(__cxxabiv1::__forced_unwind&)
22016 {
22017 this->_M_setstate(ios_base::badbit);
22018 throw;
22019 }
22020 catch(...)
22021 { this->_M_setstate(ios_base::badbit); }
22022 if (__err)
22023 this->setstate(__err);
22024 }
22025 return __c;
22026 }
22027
22028 template<typename _CharT, typename _Traits>
22029 basic_istream<_CharT, _Traits>&
22030 basic_istream<_CharT, _Traits>::
22031 read(char_type* __s, streamsize __n)
22032 {
22033 _M_gcount = 0;
22034 sentry __cerb(*this, true);
22035 if (__cerb)
22036 {
22037 ios_base::iostate __err = ios_base::goodbit;
22038 try
22039 {
22040 _M_gcount = this->rdbuf()->sgetn(__s, __n);
22041 if (_M_gcount != __n)
22042 __err |= (ios_base::eofbit | ios_base::failbit);
22043 }
22044 catch(__cxxabiv1::__forced_unwind&)
22045 {
22046 this->_M_setstate(ios_base::badbit);
22047 throw;
22048 }
22049 catch(...)
22050 { this->_M_setstate(ios_base::badbit); }
22051 if (__err)
22052 this->setstate(__err);
22053 }
22054 return *this;
22055 }
22056
22057 template<typename _CharT, typename _Traits>
22058 streamsize
22059 basic_istream<_CharT, _Traits>::
22060 readsome(char_type* __s, streamsize __n)
22061 {
22062 _M_gcount = 0;
22063 sentry __cerb(*this, true);
22064 if (__cerb)
22065 {
22066 ios_base::iostate __err = ios_base::goodbit;
22067 try
22068 {
22069
22070 const streamsize __num = this->rdbuf()->in_avail();
22071 if (__num > 0)
22072 _M_gcount = this->rdbuf()->sgetn(__s, std::min(__num, __n));
22073 else if (__num == -1)
22074 __err |= ios_base::eofbit;
22075 }
22076 catch(__cxxabiv1::__forced_unwind&)
22077 {
22078 this->_M_setstate(ios_base::badbit);
22079 throw;
22080 }
22081 catch(...)
22082 { this->_M_setstate(ios_base::badbit); }
22083 if (__err)
22084 this->setstate(__err);
22085 }
22086 return _M_gcount;
22087 }
22088
22089 template<typename _CharT, typename _Traits>
22090 basic_istream<_CharT, _Traits>&
22091 basic_istream<_CharT, _Traits>::
22092 putback(char_type __c)
22093 {
22094
22095
22096 _M_gcount = 0;
22097 sentry __cerb(*this, true);
22098 if (__cerb)
22099 {
22100 ios_base::iostate __err = ios_base::goodbit;
22101 try
22102 {
22103 const int_type __eof = traits_type::eof();
22104 __streambuf_type* __sb = this->rdbuf();
22105 if (!__sb
22106 || traits_type::eq_int_type(__sb->sputbackc(__c), __eof))
22107 __err |= ios_base::badbit;
22108 }
22109 catch(__cxxabiv1::__forced_unwind&)
22110 {
22111 this->_M_setstate(ios_base::badbit);
22112 throw;
22113 }
22114 catch(...)
22115 { this->_M_setstate(ios_base::badbit); }
22116 if (__err)
22117 this->setstate(__err);
22118 }
22119 return *this;
22120 }
22121
22122 template<typename _CharT, typename _Traits>
22123 basic_istream<_CharT, _Traits>&
22124 basic_istream<_CharT, _Traits>::
22125 unget(void)
22126 {
22127
22128
22129 _M_gcount = 0;
22130 sentry __cerb(*this, true);
22131 if (__cerb)
22132 {
22133 ios_base::iostate __err = ios_base::goodbit;
22134 try
22135 {
22136 const int_type __eof = traits_type::eof();
22137 __streambuf_type* __sb = this->rdbuf();
22138 if (!__sb
22139 || traits_type::eq_int_type(__sb->sungetc(), __eof))
22140 __err |= ios_base::badbit;
22141 }
22142 catch(__cxxabiv1::__forced_unwind&)
22143 {
22144 this->_M_setstate(ios_base::badbit);
22145 throw;
22146 }
22147 catch(...)
22148 { this->_M_setstate(ios_base::badbit); }
22149 if (__err)
22150 this->setstate(__err);
22151 }
22152 return *this;
22153 }
22154
22155 template<typename _CharT, typename _Traits>
22156 int
22157 basic_istream<_CharT, _Traits>::
22158 sync(void)
22159 {
22160
22161
22162 int __ret = -1;
22163 sentry __cerb(*this, true);
22164 if (__cerb)
22165 {
22166 ios_base::iostate __err = ios_base::goodbit;
22167 try
22168 {
22169 __streambuf_type* __sb = this->rdbuf();
22170 if (__sb)
22171 {
22172 if (__sb->pubsync() == -1)
22173 __err |= ios_base::badbit;
22174 else
22175 __ret = 0;
22176 }
22177 }
22178 catch(__cxxabiv1::__forced_unwind&)
22179 {
22180 this->_M_setstate(ios_base::badbit);
22181 throw;
22182 }
22183 catch(...)
22184 { this->_M_setstate(ios_base::badbit); }
22185 if (__err)
22186 this->setstate(__err);
22187 }
22188 return __ret;
22189 }
22190
22191 template<typename _CharT, typename _Traits>
22192 typename basic_istream<_CharT, _Traits>::pos_type
22193 basic_istream<_CharT, _Traits>::
22194 tellg(void)
22195 {
22196
22197
22198 pos_type __ret = pos_type(-1);
22199 try
22200 {
22201 if (!this->fail())
22202 __ret = this->rdbuf()->pubseekoff(0, ios_base::cur,
22203 ios_base::in);
22204 }
22205 catch(__cxxabiv1::__forced_unwind&)
22206 {
22207 this->_M_setstate(ios_base::badbit);
22208 throw;
22209 }
22210 catch(...)
22211 { this->_M_setstate(ios_base::badbit); }
22212 return __ret;
22213 }
22214
22215 template<typename _CharT, typename _Traits>
22216 basic_istream<_CharT, _Traits>&
22217 basic_istream<_CharT, _Traits>::
22218 seekg(pos_type __pos)
22219 {
22220
22221
22222 ios_base::iostate __err = ios_base::goodbit;
22223 try
22224 {
22225 if (!this->fail())
22226 {
22227
22228 const pos_type __p = this->rdbuf()->pubseekpos(__pos,
22229 ios_base::in);
22230
22231
22232 if (__p == pos_type(off_type(-1)))
22233 __err |= ios_base::failbit;
22234 }
22235 }
22236 catch(__cxxabiv1::__forced_unwind&)
22237 {
22238 this->_M_setstate(ios_base::badbit);
22239 throw;
22240 }
22241 catch(...)
22242 { this->_M_setstate(ios_base::badbit); }
22243 if (__err)
22244 this->setstate(__err);
22245 return *this;
22246 }
22247
22248 template<typename _CharT, typename _Traits>
22249 basic_istream<_CharT, _Traits>&
22250 basic_istream<_CharT, _Traits>::
22251 seekg(off_type __off, ios_base::seekdir __dir)
22252 {
22253
22254
22255 ios_base::iostate __err = ios_base::goodbit;
22256 try
22257 {
22258 if (!this->fail())
22259 {
22260
22261 const pos_type __p = this->rdbuf()->pubseekoff(__off, __dir,
22262 ios_base::in);
22263
22264
22265 if (__p == pos_type(off_type(-1)))
22266 __err |= ios_base::failbit;
22267 }
22268 }
22269 catch(__cxxabiv1::__forced_unwind&)
22270 {
22271 this->_M_setstate(ios_base::badbit);
22272 throw;
22273 }
22274 catch(...)
22275 { this->_M_setstate(ios_base::badbit); }
22276 if (__err)
22277 this->setstate(__err);
22278 return *this;
22279 }
22280
22281
22282 template<typename _CharT, typename _Traits>
22283 basic_istream<_CharT, _Traits>&
22284 operator>>(basic_istream<_CharT, _Traits>& __in, _CharT& __c)
22285 {
22286 typedef basic_istream<_CharT, _Traits> __istream_type;
22287 typedef typename __istream_type::int_type __int_type;
22288
22289 typename __istream_type::sentry __cerb(__in, false);
22290 if (__cerb)
22291 {
22292 ios_base::iostate __err = ios_base::goodbit;
22293 try
22294 {
22295 const __int_type __cb = __in.rdbuf()->sbumpc();
22296 if (!_Traits::eq_int_type(__cb, _Traits::eof()))
22297 __c = _Traits::to_char_type(__cb);
22298 else
22299 __err |= (ios_base::eofbit | ios_base::failbit);
22300 }
22301 catch(__cxxabiv1::__forced_unwind&)
22302 {
22303 __in._M_setstate(ios_base::badbit);
22304 throw;
22305 }
22306 catch(...)
22307 { __in._M_setstate(ios_base::badbit); }
22308 if (__err)
22309 __in.setstate(__err);
22310 }
22311 return __in;
22312 }
22313
22314 template<typename _CharT, typename _Traits>
22315 basic_istream<_CharT, _Traits>&
22316 operator>>(basic_istream<_CharT, _Traits>& __in, _CharT* __s)
22317 {
22318 typedef basic_istream<_CharT, _Traits> __istream_type;
22319 typedef basic_streambuf<_CharT, _Traits> __streambuf_type;
22320 typedef typename _Traits::int_type int_type;
22321 typedef _CharT char_type;
22322 typedef ctype<_CharT> __ctype_type;
22323
22324 streamsize __extracted = 0;
22325 ios_base::iostate __err = ios_base::goodbit;
22326 typename __istream_type::sentry __cerb(__in, false);
22327 if (__cerb)
22328 {
22329 try
22330 {
22331
22332 streamsize __num = __in.width();
22333 if (__num <= 0)
22334 __num = __gnu_cxx::__numeric_traits<streamsize>::__max;
22335
22336 const __ctype_type& __ct = use_facet<__ctype_type>(__in.getloc());
22337
22338 const int_type __eof = _Traits::eof();
22339 __streambuf_type* __sb = __in.rdbuf();
22340 int_type __c = __sb->sgetc();
22341
22342 while (__extracted < __num - 1
22343 && !_Traits::eq_int_type(__c, __eof)
22344 && !__ct.is(ctype_base::space,
22345 _Traits::to_char_type(__c)))
22346 {
22347 *__s++ = _Traits::to_char_type(__c);
22348 ++__extracted;
22349 __c = __sb->snextc();
22350 }
22351 if (_Traits::eq_int_type(__c, __eof))
22352 __err |= ios_base::eofbit;
22353
22354
22355
22356 *__s = char_type();
22357 __in.width(0);
22358 }
22359 catch(__cxxabiv1::__forced_unwind&)
22360 {
22361 __in._M_setstate(ios_base::badbit);
22362 throw;
22363 }
22364 catch(...)
22365 { __in._M_setstate(ios_base::badbit); }
22366 }
22367 if (!__extracted)
22368 __err |= ios_base::failbit;
22369 if (__err)
22370 __in.setstate(__err);
22371 return __in;
22372 }
22373
22374
22375 template<typename _CharT, typename _Traits>
22376 basic_istream<_CharT, _Traits>&
22377 ws(basic_istream<_CharT, _Traits>& __in)
22378 {
22379 typedef basic_istream<_CharT, _Traits> __istream_type;
22380 typedef basic_streambuf<_CharT, _Traits> __streambuf_type;
22381 typedef typename __istream_type::int_type __int_type;
22382 typedef ctype<_CharT> __ctype_type;
22383
22384 const __ctype_type& __ct = use_facet<__ctype_type>(__in.getloc());
22385 const __int_type __eof = _Traits::eof();
22386 __streambuf_type* __sb = __in.rdbuf();
22387 __int_type __c = __sb->sgetc();
22388
22389 while (!_Traits::eq_int_type(__c, __eof)
22390 && __ct.is(ctype_base::space, _Traits::to_char_type(__c)))
22391 __c = __sb->snextc();
22392
22393 if (_Traits::eq_int_type(__c, __eof))
22394 __in.setstate(ios_base::eofbit);
22395 return __in;
22396 }
22397
22398
22399
22400
22401
22402 extern template class basic_istream<char>;
22403 extern template istream& ws(istream&);
22404 extern template istream& operator>>(istream&, char&);
22405 extern template istream& operator>>(istream&, char*);
22406 extern template istream& operator>>(istream&, unsigned char&);
22407 extern template istream& operator>>(istream&, signed char&);
22408 extern template istream& operator>>(istream&, unsigned char*);
22409 extern template istream& operator>>(istream&, signed char*);
22410
22411 extern template istream& istream::_M_extract(unsigned short&);
22412 extern template istream& istream::_M_extract(unsigned int&);
22413 extern template istream& istream::_M_extract(long&);
22414 extern template istream& istream::_M_extract(unsigned long&);
22415 extern template istream& istream::_M_extract(bool&);
22416
22417 extern template istream& istream::_M_extract(long long&);
22418 extern template istream& istream::_M_extract(unsigned long long&);
22419
22420 extern template istream& istream::_M_extract(float&);
22421 extern template istream& istream::_M_extract(double&);
22422 extern template istream& istream::_M_extract(long double&);
22423 extern template istream& istream::_M_extract(void*&);
22424
22425 extern template class basic_iostream<char>;
22426
22427
22428 extern template class basic_istream<wchar_t>;
22429 extern template wistream& ws(wistream&);
22430 extern template wistream& operator>>(wistream&, wchar_t&);
22431 extern template wistream& operator>>(wistream&, wchar_t*);
22432
22433 extern template wistream& wistream::_M_extract(unsigned short&);
22434 extern template wistream& wistream::_M_extract(unsigned int&);
22435 extern template wistream& wistream::_M_extract(long&);
22436 extern template wistream& wistream::_M_extract(unsigned long&);
22437 extern template wistream& wistream::_M_extract(bool&);
22438
22439 extern template wistream& wistream::_M_extract(long long&);
22440 extern template wistream& wistream::_M_extract(unsigned long long&);
22441
22442 extern template wistream& wistream::_M_extract(float&);
22443 extern template wistream& wistream::_M_extract(double&);
22444 extern template wistream& wistream::_M_extract(long double&);
22445 extern template wistream& wistream::_M_extract(void*&);
22446
22447 extern template class basic_iostream<wchar_t>;
22448
22449
22450
22451 }
22452 # 855 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/istream" 2 3
22453 # 42 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/iostream" 2 3
22454
22455 namespace std __attribute__ ((__visibility__ ("default"))) {
22456 # 59 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/iostream" 3
22457 extern istream cin;
22458 extern ostream cout;
22459 extern ostream cerr;
22460 extern ostream clog;
22461
22462
22463 extern wistream wcin;
22464 extern wostream wcout;
22465 extern wostream wcerr;
22466 extern wostream wclog;
22467
22468
22469
22470
22471 static ios_base::Init __ioinit;
22472
22473 }
22474 # 29 "Address.cpp" 2
22475
22476 # 1 "../fwbuilder/libfwbuilder-config.h" 1
22477
22478
22479
22480
22481
22482
22483 #define FWBUILDER_XML_VERSION "22"
22484
22485
22486
22487
22488
22489 #define RES_DIR "/usr/share/fwbuilder-5.0.1.3592"
22490 # 27 "../fwbuilder/libfwbuilder-config.h"
22491 #define HAVE_GETOPT_H 1
22492 # 44 "../fwbuilder/libfwbuilder-config.h"
22493 #define HAVE_XMLSAVEFORMATFILEENC 1
22494
22495 #define HAVE_LIBXSLT_XSLTCONFIG_H 1
22496
22497
22498 #define HAVE_STRTOK_R 1
22499
22500 #define WORDS_LITTLEENDIAN 1
22501 # 61 "../fwbuilder/libfwbuilder-config.h"
22502 #define SNPRINTF snprintf
22503 #define VSNPRINTF vsnprintf
22504 #define FS_SEPARATOR "/"
22505
22506
22507
22508
22509
22510
22511 #define FREEXMLBUFF(x) xmlFree((void*)(x))
22512 # 31 "Address.cpp" 2
22513 # 1 "../fwbuilder/Address.h" 1
22514 # 28 "../fwbuilder/Address.h"
22515 #define __GEN_ADDRESS_HH_FLAG__
22516
22517 # 1 "../fwbuilder/FWObject.h" 1
22518 # 28 "../fwbuilder/FWObject.h"
22519 #define __FWOBJECT_HH_FLAG__
22520
22521
22522
22523 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/list" 1 3
22524 # 57 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/list" 3
22525 #define _GLIBCXX_LIST 1
22526
22527
22528 # 60 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/list" 3
22529
22530
22531
22532 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_list.h" 1 3
22533 # 58 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_list.h" 3
22534 #define _STL_LIST_H 1
22535
22536
22537
22538
22539 namespace std __attribute__ ((__visibility__ ("default"))) {
22540
22541
22542
22543
22544
22545
22546
22547 struct _List_node_base
22548 {
22549 _List_node_base* _M_next;
22550 _List_node_base* _M_prev;
22551
22552 static void
22553 swap(_List_node_base& __x, _List_node_base& __y) throw ();
22554
22555 void
22556 _M_transfer(_List_node_base * const __first,
22557 _List_node_base * const __last) throw ();
22558
22559 void
22560 _M_reverse() throw ();
22561
22562 void
22563 _M_hook(_List_node_base * const __position) throw ();
22564
22565 void
22566 _M_unhook() throw ();
22567 };
22568
22569
22570 template<typename _Tp>
22571 struct _List_node : public _List_node_base
22572 {
22573
22574 _Tp _M_data;
22575
22576
22577
22578
22579
22580
22581 };
22582
22583
22584
22585
22586
22587
22588 template<typename _Tp>
22589 struct _List_iterator
22590 {
22591 typedef _List_iterator<_Tp> _Self;
22592 typedef _List_node<_Tp> _Node;
22593
22594 typedef ptrdiff_t difference_type;
22595 typedef std::bidirectional_iterator_tag iterator_category;
22596 typedef _Tp value_type;
22597 typedef _Tp* pointer;
22598 typedef _Tp& reference;
22599
22600 _List_iterator()
22601 : _M_node() { }
22602
22603 explicit
22604 _List_iterator(_List_node_base* __x)
22605 : _M_node(__x) { }
22606
22607
22608 reference
22609 operator*() const
22610 { return static_cast<_Node*>(_M_node)->_M_data; }
22611
22612 pointer
22613 operator->() const
22614 { return &static_cast<_Node*>(_M_node)->_M_data; }
22615
22616 _Self&
22617 operator++()
22618 {
22619 _M_node = _M_node->_M_next;
22620 return *this;
22621 }
22622
22623 _Self
22624 operator++(int)
22625 {
22626 _Self __tmp = *this;
22627 _M_node = _M_node->_M_next;
22628 return __tmp;
22629 }
22630
22631 _Self&
22632 operator--()
22633 {
22634 _M_node = _M_node->_M_prev;
22635 return *this;
22636 }
22637
22638 _Self
22639 operator--(int)
22640 {
22641 _Self __tmp = *this;
22642 _M_node = _M_node->_M_prev;
22643 return __tmp;
22644 }
22645
22646 bool
22647 operator==(const _Self& __x) const
22648 { return _M_node == __x._M_node; }
22649
22650 bool
22651 operator!=(const _Self& __x) const
22652 { return _M_node != __x._M_node; }
22653
22654
22655 _List_node_base* _M_node;
22656 };
22657
22658
22659
22660
22661
22662
22663 template<typename _Tp>
22664 struct _List_const_iterator
22665 {
22666 typedef _List_const_iterator<_Tp> _Self;
22667 typedef const _List_node<_Tp> _Node;
22668 typedef _List_iterator<_Tp> iterator;
22669
22670 typedef ptrdiff_t difference_type;
22671 typedef std::bidirectional_iterator_tag iterator_category;
22672 typedef _Tp value_type;
22673 typedef const _Tp* pointer;
22674 typedef const _Tp& reference;
22675
22676 _List_const_iterator()
22677 : _M_node() { }
22678
22679 explicit
22680 _List_const_iterator(const _List_node_base* __x)
22681 : _M_node(__x) { }
22682
22683 _List_const_iterator(const iterator& __x)
22684 : _M_node(__x._M_node) { }
22685
22686
22687
22688 reference
22689 operator*() const
22690 { return static_cast<_Node*>(_M_node)->_M_data; }
22691
22692 pointer
22693 operator->() const
22694 { return &static_cast<_Node*>(_M_node)->_M_data; }
22695
22696 _Self&
22697 operator++()
22698 {
22699 _M_node = _M_node->_M_next;
22700 return *this;
22701 }
22702
22703 _Self
22704 operator++(int)
22705 {
22706 _Self __tmp = *this;
22707 _M_node = _M_node->_M_next;
22708 return __tmp;
22709 }
22710
22711 _Self&
22712 operator--()
22713 {
22714 _M_node = _M_node->_M_prev;
22715 return *this;
22716 }
22717
22718 _Self
22719 operator--(int)
22720 {
22721 _Self __tmp = *this;
22722 _M_node = _M_node->_M_prev;
22723 return __tmp;
22724 }
22725
22726 bool
22727 operator==(const _Self& __x) const
22728 { return _M_node == __x._M_node; }
22729
22730 bool
22731 operator!=(const _Self& __x) const
22732 { return _M_node != __x._M_node; }
22733
22734
22735 const _List_node_base* _M_node;
22736 };
22737
22738 template<typename _Val>
22739 inline bool
22740 operator==(const _List_iterator<_Val>& __x,
22741 const _List_const_iterator<_Val>& __y)
22742 { return __x._M_node == __y._M_node; }
22743
22744 template<typename _Val>
22745 inline bool
22746 operator!=(const _List_iterator<_Val>& __x,
22747 const _List_const_iterator<_Val>& __y)
22748 { return __x._M_node != __y._M_node; }
22749
22750
22751
22752 template<typename _Tp, typename _Alloc>
22753 class _List_base
22754 {
22755 protected:
22756 # 293 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_list.h" 3
22757 typedef typename _Alloc::template rebind<_List_node<_Tp> >::other
22758 _Node_alloc_type;
22759
22760 typedef typename _Alloc::template rebind<_Tp>::other _Tp_alloc_type;
22761
22762 struct _List_impl
22763 : public _Node_alloc_type
22764 {
22765 _List_node_base _M_node;
22766
22767 _List_impl()
22768 : _Node_alloc_type(), _M_node()
22769 { }
22770
22771 _List_impl(const _Node_alloc_type& __a)
22772 : _Node_alloc_type(__a), _M_node()
22773 { }
22774 };
22775
22776 _List_impl _M_impl;
22777
22778 _List_node<_Tp>*
22779 _M_get_node()
22780 { return _M_impl._Node_alloc_type::allocate(1); }
22781
22782 void
22783 _M_put_node(_List_node<_Tp>* __p)
22784 { _M_impl._Node_alloc_type::deallocate(__p, 1); }
22785
22786 public:
22787 typedef _Alloc allocator_type;
22788
22789 _Node_alloc_type&
22790 _M_get_Node_allocator()
22791 { return *static_cast<_Node_alloc_type*>(&this->_M_impl); }
22792
22793 const _Node_alloc_type&
22794 _M_get_Node_allocator() const
22795 { return *static_cast<const _Node_alloc_type*>(&this->_M_impl); }
22796
22797 _Tp_alloc_type
22798 _M_get_Tp_allocator() const
22799 { return _Tp_alloc_type(_M_get_Node_allocator()); }
22800
22801 allocator_type
22802 get_allocator() const
22803 { return allocator_type(_M_get_Node_allocator()); }
22804
22805 _List_base()
22806 : _M_impl()
22807 { _M_init(); }
22808
22809 _List_base(const allocator_type& __a)
22810 : _M_impl(__a)
22811 { _M_init(); }
22812 # 359 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_list.h" 3
22813 ~_List_base()
22814 { _M_clear(); }
22815
22816 void
22817 _M_clear();
22818
22819 void
22820 _M_init()
22821 {
22822 this->_M_impl._M_node._M_next = &this->_M_impl._M_node;
22823 this->_M_impl._M_node._M_prev = &this->_M_impl._M_node;
22824 }
22825 };
22826 # 416 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_list.h" 3
22827 template<typename _Tp, typename _Alloc = std::allocator<_Tp> >
22828 class list : protected _List_base<_Tp, _Alloc>
22829 {
22830
22831 typedef typename _Alloc::value_type _Alloc_value_type;
22832
22833
22834
22835 typedef _List_base<_Tp, _Alloc> _Base;
22836 typedef typename _Base::_Tp_alloc_type _Tp_alloc_type;
22837
22838 public:
22839 typedef _Tp value_type;
22840 typedef typename _Tp_alloc_type::pointer pointer;
22841 typedef typename _Tp_alloc_type::const_pointer const_pointer;
22842 typedef typename _Tp_alloc_type::reference reference;
22843 typedef typename _Tp_alloc_type::const_reference const_reference;
22844 typedef _List_iterator<_Tp> iterator;
22845 typedef _List_const_iterator<_Tp> const_iterator;
22846 typedef std::reverse_iterator<const_iterator> const_reverse_iterator;
22847 typedef std::reverse_iterator<iterator> reverse_iterator;
22848 typedef size_t size_type;
22849 typedef ptrdiff_t difference_type;
22850 typedef _Alloc allocator_type;
22851
22852 protected:
22853
22854
22855 typedef _List_node<_Tp> _Node;
22856
22857 using _Base::_M_impl;
22858 using _Base::_M_put_node;
22859 using _Base::_M_get_node;
22860 using _Base::_M_get_Tp_allocator;
22861 using _Base::_M_get_Node_allocator;
22862
22863
22864
22865
22866
22867
22868
22869 _Node*
22870 _M_create_node(const value_type& __x)
22871 {
22872 _Node* __p = this->_M_get_node();
22873 try
22874 {
22875 _M_get_Tp_allocator().construct(&__p->_M_data, __x);
22876 }
22877 catch(...)
22878 {
22879 _M_put_node(__p);
22880 throw;
22881 }
22882 return __p;
22883 }
22884 # 493 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_list.h" 3
22885 public:
22886
22887
22888
22889
22890
22891 list()
22892 : _Base() { }
22893
22894
22895
22896
22897
22898 explicit
22899 list(const allocator_type& __a)
22900 : _Base(__a) { }
22901 # 518 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_list.h" 3
22902 explicit
22903 list(size_type __n, const value_type& __value = value_type(),
22904 const allocator_type& __a = allocator_type())
22905 : _Base(__a)
22906 { _M_fill_initialize(__n, __value); }
22907 # 531 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_list.h" 3
22908 list(const list& __x)
22909 : _Base(__x._M_get_Node_allocator())
22910 { _M_initialize_dispatch(__x.begin(), __x.end(), __false_type()); }
22911 # 570 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_list.h" 3
22912 template<typename _InputIterator>
22913 list(_InputIterator __first, _InputIterator __last,
22914 const allocator_type& __a = allocator_type())
22915 : _Base(__a)
22916 {
22917
22918 typedef typename std::__is_integer<_InputIterator>::__type _Integral;
22919 _M_initialize_dispatch(__first, __last, _Integral());
22920 }
22921 # 595 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_list.h" 3
22922 list&
22923 operator=(const list& __x);
22924 # 641 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_list.h" 3
22925 void
22926 assign(size_type __n, const value_type& __val)
22927 { _M_fill_assign(__n, __val); }
22928 # 657 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_list.h" 3
22929 template<typename _InputIterator>
22930 void
22931 assign(_InputIterator __first, _InputIterator __last)
22932 {
22933
22934 typedef typename std::__is_integer<_InputIterator>::__type _Integral;
22935 _M_assign_dispatch(__first, __last, _Integral());
22936 }
22937 # 680 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_list.h" 3
22938 allocator_type
22939 get_allocator() const
22940 { return _Base::get_allocator(); }
22941
22942
22943
22944
22945
22946
22947 iterator
22948 begin()
22949 { return iterator(this->_M_impl._M_node._M_next); }
22950
22951
22952
22953
22954
22955
22956 const_iterator
22957 begin() const
22958 { return const_iterator(this->_M_impl._M_node._M_next); }
22959
22960
22961
22962
22963
22964
22965 iterator
22966 end()
22967 { return iterator(&this->_M_impl._M_node); }
22968
22969
22970
22971
22972
22973
22974 const_iterator
22975 end() const
22976 { return const_iterator(&this->_M_impl._M_node); }
22977
22978
22979
22980
22981
22982
22983 reverse_iterator
22984 rbegin()
22985 { return reverse_iterator(end()); }
22986
22987
22988
22989
22990
22991
22992 const_reverse_iterator
22993 rbegin() const
22994 { return const_reverse_iterator(end()); }
22995
22996
22997
22998
22999
23000
23001 reverse_iterator
23002 rend()
23003 { return reverse_iterator(begin()); }
23004
23005
23006
23007
23008
23009
23010 const_reverse_iterator
23011 rend() const
23012 { return const_reverse_iterator(begin()); }
23013 # 799 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_list.h" 3
23014 bool
23015 empty() const
23016 { return this->_M_impl._M_node._M_next == &this->_M_impl._M_node; }
23017
23018
23019 size_type
23020 size() const
23021 { return std::distance(begin(), end()); }
23022
23023
23024 size_type
23025 max_size() const
23026 { return _M_get_Node_allocator().max_size(); }
23027 # 823 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_list.h" 3
23028 void
23029 resize(size_type __new_size, value_type __x = value_type());
23030
23031
23032
23033
23034
23035
23036 reference
23037 front()
23038 { return *begin(); }
23039
23040
23041
23042
23043
23044 const_reference
23045 front() const
23046 { return *begin(); }
23047
23048
23049
23050
23051
23052 reference
23053 back()
23054 {
23055 iterator __tmp = end();
23056 --__tmp;
23057 return *__tmp;
23058 }
23059
23060
23061
23062
23063
23064 const_reference
23065 back() const
23066 {
23067 const_iterator __tmp = end();
23068 --__tmp;
23069 return *__tmp;
23070 }
23071 # 878 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_list.h" 3
23072 void
23073 push_front(const value_type& __x)
23074 { this->_M_insert(begin(), __x); }
23075 # 905 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_list.h" 3
23076 void
23077 pop_front()
23078 { this->_M_erase(begin()); }
23079 # 919 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_list.h" 3
23080 void
23081 push_back(const value_type& __x)
23082 { this->_M_insert(end(), __x); }
23083 # 945 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_list.h" 3
23084 void
23085 pop_back()
23086 { this->_M_erase(iterator(this->_M_impl._M_node._M_prev)); }
23087 # 978 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_list.h" 3
23088 iterator
23089 insert(iterator __position, const value_type& __x);
23090 # 1027 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_list.h" 3
23091 void
23092 insert(iterator __position, size_type __n, const value_type& __x)
23093 {
23094 list __tmp(__n, __x, _M_get_Node_allocator());
23095 splice(__position, __tmp);
23096 }
23097 # 1047 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_list.h" 3
23098 template<typename _InputIterator>
23099 void
23100 insert(iterator __position, _InputIterator __first,
23101 _InputIterator __last)
23102 {
23103 list __tmp(__first, __last, _M_get_Node_allocator());
23104 splice(__position, __tmp);
23105 }
23106 # 1071 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_list.h" 3
23107 iterator
23108 erase(iterator __position);
23109 # 1092 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_list.h" 3
23110 iterator
23111 erase(iterator __first, iterator __last)
23112 {
23113 while (__first != __last)
23114 __first = erase(__first);
23115 return __last;
23116 }
23117 # 1109 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_list.h" 3
23118 void
23119 swap(list& __x)
23120 {
23121 _List_node_base::swap(this->_M_impl._M_node, __x._M_impl._M_node);
23122
23123
23124
23125 std::__alloc_swap<typename _Base::_Node_alloc_type>::
23126 _S_do_it(_M_get_Node_allocator(), __x._M_get_Node_allocator());
23127 }
23128
23129
23130
23131
23132
23133
23134
23135 void
23136 clear()
23137 {
23138 _Base::_M_clear();
23139 _Base::_M_init();
23140 }
23141 # 1145 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_list.h" 3
23142 void
23143
23144
23145
23146 splice(iterator __position, list& __x)
23147
23148 {
23149 if (!__x.empty())
23150 {
23151 _M_check_equal_allocators(__x);
23152
23153 this->_M_transfer(__position, __x.begin(), __x.end());
23154 }
23155 }
23156 # 1175 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_list.h" 3
23157 void
23158
23159
23160
23161 splice(iterator __position, list& __x, iterator __i)
23162
23163 {
23164 iterator __j = __i;
23165 ++__j;
23166 if (__position == __i || __position == __j)
23167 return;
23168
23169 if (this != &__x)
23170 _M_check_equal_allocators(__x);
23171
23172 this->_M_transfer(__position, __i, __j);
23173 }
23174 # 1211 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_list.h" 3
23175 void
23176
23177
23178
23179
23180 splice(iterator __position, list& __x, iterator __first,
23181 iterator __last)
23182
23183 {
23184 if (__first != __last)
23185 {
23186 if (this != &__x)
23187 _M_check_equal_allocators(__x);
23188
23189 this->_M_transfer(__position, __first, __last);
23190 }
23191 }
23192 # 1246 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_list.h" 3
23193 void
23194 remove(const _Tp& __value);
23195 # 1260 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_list.h" 3
23196 template<typename _Predicate>
23197 void
23198 remove_if(_Predicate);
23199 # 1274 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_list.h" 3
23200 void
23201 unique();
23202 # 1289 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_list.h" 3
23203 template<typename _BinaryPredicate>
23204 void
23205 unique(_BinaryPredicate);
23206 # 1310 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_list.h" 3
23207 void
23208 merge(list& __x);
23209 # 1336 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_list.h" 3
23210 template<typename _StrictWeakOrdering>
23211 void
23212 merge(list&, _StrictWeakOrdering);
23213
23214
23215
23216
23217
23218
23219
23220 void
23221 reverse()
23222 { this->_M_impl._M_node._M_reverse(); }
23223
23224
23225
23226
23227
23228
23229
23230 void
23231 sort();
23232
23233
23234
23235
23236
23237
23238
23239 template<typename _StrictWeakOrdering>
23240 void
23241 sort(_StrictWeakOrdering);
23242
23243 protected:
23244
23245
23246
23247
23248
23249
23250 template<typename _Integer>
23251 void
23252 _M_initialize_dispatch(_Integer __n, _Integer __x, __true_type)
23253 { _M_fill_initialize(static_cast<size_type>(__n), __x); }
23254
23255
23256 template<typename _InputIterator>
23257 void
23258 _M_initialize_dispatch(_InputIterator __first, _InputIterator __last,
23259 __false_type)
23260 {
23261 for (; __first != __last; ++__first)
23262 push_back(*__first);
23263 }
23264
23265
23266
23267 void
23268 _M_fill_initialize(size_type __n, const value_type& __x)
23269 {
23270 for (; __n > 0; --__n)
23271 push_back(__x);
23272 }
23273 # 1407 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_list.h" 3
23274 template<typename _Integer>
23275 void
23276 _M_assign_dispatch(_Integer __n, _Integer __val, __true_type)
23277 { _M_fill_assign(__n, __val); }
23278
23279
23280 template<typename _InputIterator>
23281 void
23282 _M_assign_dispatch(_InputIterator __first, _InputIterator __last,
23283 __false_type);
23284
23285
23286
23287 void
23288 _M_fill_assign(size_type __n, const value_type& __val);
23289
23290
23291
23292 void
23293 _M_transfer(iterator __position, iterator __first, iterator __last)
23294 { __position._M_node->_M_transfer(__first._M_node, __last._M_node); }
23295
23296
23297
23298 void
23299 _M_insert(iterator __position, const value_type& __x)
23300 {
23301 _Node* __tmp = _M_create_node(__x);
23302 __tmp->_M_hook(__position._M_node);
23303 }
23304 # 1448 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_list.h" 3
23305 void
23306 _M_erase(iterator __position)
23307 {
23308 __position._M_node->_M_unhook();
23309 _Node* __n = static_cast<_Node*>(__position._M_node);
23310
23311
23312
23313 _M_get_Tp_allocator().destroy(&__n->_M_data);
23314
23315 _M_put_node(__n);
23316 }
23317
23318
23319 void
23320 _M_check_equal_allocators(list& __x)
23321 {
23322 if (std::__alloc_neq<typename _Base::_Node_alloc_type>::
23323 _S_do_it(_M_get_Node_allocator(), __x._M_get_Node_allocator()))
23324 __throw_runtime_error(("list::_M_check_equal_allocators"));
23325 }
23326 };
23327 # 1481 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_list.h" 3
23328 template<typename _Tp, typename _Alloc>
23329 inline bool
23330 operator==(const list<_Tp, _Alloc>& __x, const list<_Tp, _Alloc>& __y)
23331 {
23332 typedef typename list<_Tp, _Alloc>::const_iterator const_iterator;
23333 const_iterator __end1 = __x.end();
23334 const_iterator __end2 = __y.end();
23335
23336 const_iterator __i1 = __x.begin();
23337 const_iterator __i2 = __y.begin();
23338 while (__i1 != __end1 && __i2 != __end2 && *__i1 == *__i2)
23339 {
23340 ++__i1;
23341 ++__i2;
23342 }
23343 return __i1 == __end1 && __i2 == __end2;
23344 }
23345 # 1510 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_list.h" 3
23346 template<typename _Tp, typename _Alloc>
23347 inline bool
23348 operator<(const list<_Tp, _Alloc>& __x, const list<_Tp, _Alloc>& __y)
23349 { return std::lexicographical_compare(__x.begin(), __x.end(),
23350 __y.begin(), __y.end()); }
23351
23352
23353 template<typename _Tp, typename _Alloc>
23354 inline bool
23355 operator!=(const list<_Tp, _Alloc>& __x, const list<_Tp, _Alloc>& __y)
23356 { return !(__x == __y); }
23357
23358
23359 template<typename _Tp, typename _Alloc>
23360 inline bool
23361 operator>(const list<_Tp, _Alloc>& __x, const list<_Tp, _Alloc>& __y)
23362 { return __y < __x; }
23363
23364
23365 template<typename _Tp, typename _Alloc>
23366 inline bool
23367 operator<=(const list<_Tp, _Alloc>& __x, const list<_Tp, _Alloc>& __y)
23368 { return !(__y < __x); }
23369
23370
23371 template<typename _Tp, typename _Alloc>
23372 inline bool
23373 operator>=(const list<_Tp, _Alloc>& __x, const list<_Tp, _Alloc>& __y)
23374 { return !(__x < __y); }
23375
23376
23377 template<typename _Tp, typename _Alloc>
23378 inline void
23379 swap(list<_Tp, _Alloc>& __x, list<_Tp, _Alloc>& __y)
23380 { __x.swap(__y); }
23381
23382 }
23383 # 64 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/list" 2 3
23384
23385
23386 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/list.tcc" 1 3
23387 # 58 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/list.tcc" 3
23388 #define _LIST_TCC 1
23389
23390 namespace std __attribute__ ((__visibility__ ("default"))) {
23391
23392 template<typename _Tp, typename _Alloc>
23393 void
23394 _List_base<_Tp, _Alloc>::
23395 _M_clear()
23396 {
23397 typedef _List_node<_Tp> _Node;
23398 _Node* __cur = static_cast<_Node*>(this->_M_impl._M_node._M_next);
23399 while (__cur != &this->_M_impl._M_node)
23400 {
23401 _Node* __tmp = __cur;
23402 __cur = static_cast<_Node*>(__cur->_M_next);
23403
23404
23405
23406 _M_get_Tp_allocator().destroy(&__tmp->_M_data);
23407
23408 _M_put_node(__tmp);
23409 }
23410 }
23411 # 95 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/list.tcc" 3
23412 template<typename _Tp, typename _Alloc>
23413 typename list<_Tp, _Alloc>::iterator
23414 list<_Tp, _Alloc>::
23415 insert(iterator __position, const value_type& __x)
23416 {
23417 _Node* __tmp = _M_create_node(__x);
23418 __tmp->_M_hook(__position._M_node);
23419 return iterator(__tmp);
23420 }
23421
23422 template<typename _Tp, typename _Alloc>
23423 typename list<_Tp, _Alloc>::iterator
23424 list<_Tp, _Alloc>::
23425 erase(iterator __position)
23426 {
23427 iterator __ret = iterator(__position._M_node->_M_next);
23428 _M_erase(__position);
23429 return __ret;
23430 }
23431
23432 template<typename _Tp, typename _Alloc>
23433 void
23434 list<_Tp, _Alloc>::
23435 resize(size_type __new_size, value_type __x)
23436 {
23437 iterator __i = begin();
23438 size_type __len = 0;
23439 for (; __i != end() && __len < __new_size; ++__i, ++__len)
23440 ;
23441 if (__len == __new_size)
23442 erase(__i, end());
23443 else
23444 insert(end(), __new_size - __len, __x);
23445 }
23446
23447 template<typename _Tp, typename _Alloc>
23448 list<_Tp, _Alloc>&
23449 list<_Tp, _Alloc>::
23450 operator=(const list& __x)
23451 {
23452 if (this != &__x)
23453 {
23454 iterator __first1 = begin();
23455 iterator __last1 = end();
23456 const_iterator __first2 = __x.begin();
23457 const_iterator __last2 = __x.end();
23458 for (; __first1 != __last1 && __first2 != __last2;
23459 ++__first1, ++__first2)
23460 *__first1 = *__first2;
23461 if (__first2 == __last2)
23462 erase(__first1, __last1);
23463 else
23464 insert(__last1, __first2, __last2);
23465 }
23466 return *this;
23467 }
23468
23469 template<typename _Tp, typename _Alloc>
23470 void
23471 list<_Tp, _Alloc>::
23472 _M_fill_assign(size_type __n, const value_type& __val)
23473 {
23474 iterator __i = begin();
23475 for (; __i != end() && __n > 0; ++__i, --__n)
23476 *__i = __val;
23477 if (__n > 0)
23478 insert(end(), __n, __val);
23479 else
23480 erase(__i, end());
23481 }
23482
23483 template<typename _Tp, typename _Alloc>
23484 template <typename _InputIterator>
23485 void
23486 list<_Tp, _Alloc>::
23487 _M_assign_dispatch(_InputIterator __first2, _InputIterator __last2,
23488 __false_type)
23489 {
23490 iterator __first1 = begin();
23491 iterator __last1 = end();
23492 for (; __first1 != __last1 && __first2 != __last2;
23493 ++__first1, ++__first2)
23494 *__first1 = *__first2;
23495 if (__first2 == __last2)
23496 erase(__first1, __last1);
23497 else
23498 insert(__last1, __first2, __last2);
23499 }
23500
23501 template<typename _Tp, typename _Alloc>
23502 void
23503 list<_Tp, _Alloc>::
23504 remove(const value_type& __value)
23505 {
23506 iterator __first = begin();
23507 iterator __last = end();
23508 iterator __extra = __last;
23509 while (__first != __last)
23510 {
23511 iterator __next = __first;
23512 ++__next;
23513 if (*__first == __value)
23514 {
23515
23516
23517
23518 if (&*__first != &__value)
23519 _M_erase(__first);
23520 else
23521 __extra = __first;
23522 }
23523 __first = __next;
23524 }
23525 if (__extra != __last)
23526 _M_erase(__extra);
23527 }
23528
23529 template<typename _Tp, typename _Alloc>
23530 void
23531 list<_Tp, _Alloc>::
23532 unique()
23533 {
23534 iterator __first = begin();
23535 iterator __last = end();
23536 if (__first == __last)
23537 return;
23538 iterator __next = __first;
23539 while (++__next != __last)
23540 {
23541 if (*__first == *__next)
23542 _M_erase(__next);
23543 else
23544 __first = __next;
23545 __next = __first;
23546 }
23547 }
23548
23549 template<typename _Tp, typename _Alloc>
23550 void
23551 list<_Tp, _Alloc>::
23552
23553
23554
23555 merge(list& __x)
23556
23557 {
23558
23559
23560 if (this != &__x)
23561 {
23562 _M_check_equal_allocators(__x);
23563
23564 iterator __first1 = begin();
23565 iterator __last1 = end();
23566 iterator __first2 = __x.begin();
23567 iterator __last2 = __x.end();
23568 while (__first1 != __last1 && __first2 != __last2)
23569 if (*__first2 < *__first1)
23570 {
23571 iterator __next = __first2;
23572 _M_transfer(__first1, __first2, ++__next);
23573 __first2 = __next;
23574 }
23575 else
23576 ++__first1;
23577 if (__first2 != __last2)
23578 _M_transfer(__last1, __first2, __last2);
23579 }
23580 }
23581
23582 template<typename _Tp, typename _Alloc>
23583 template <typename _StrictWeakOrdering>
23584 void
23585 list<_Tp, _Alloc>::
23586
23587
23588
23589 merge(list& __x, _StrictWeakOrdering __comp)
23590
23591 {
23592
23593
23594 if (this != &__x)
23595 {
23596 _M_check_equal_allocators(__x);
23597
23598 iterator __first1 = begin();
23599 iterator __last1 = end();
23600 iterator __first2 = __x.begin();
23601 iterator __last2 = __x.end();
23602 while (__first1 != __last1 && __first2 != __last2)
23603 if (__comp(*__first2, *__first1))
23604 {
23605 iterator __next = __first2;
23606 _M_transfer(__first1, __first2, ++__next);
23607 __first2 = __next;
23608 }
23609 else
23610 ++__first1;
23611 if (__first2 != __last2)
23612 _M_transfer(__last1, __first2, __last2);
23613 }
23614 }
23615
23616 template<typename _Tp, typename _Alloc>
23617 void
23618 list<_Tp, _Alloc>::
23619 sort()
23620 {
23621
23622 if (this->_M_impl._M_node._M_next != &this->_M_impl._M_node
23623 && this->_M_impl._M_node._M_next->_M_next != &this->_M_impl._M_node)
23624 {
23625 list __carry;
23626 list __tmp[64];
23627 list * __fill = &__tmp[0];
23628 list * __counter;
23629
23630 do
23631 {
23632 __carry.splice(__carry.begin(), *this, begin());
23633
23634 for(__counter = &__tmp[0];
23635 __counter != __fill && !__counter->empty();
23636 ++__counter)
23637 {
23638 __counter->merge(__carry);
23639 __carry.swap(*__counter);
23640 }
23641 __carry.swap(*__counter);
23642 if (__counter == __fill)
23643 ++__fill;
23644 }
23645 while ( !empty() );
23646
23647 for (__counter = &__tmp[1]; __counter != __fill; ++__counter)
23648 __counter->merge(*(__counter - 1));
23649 swap( *(__fill - 1) );
23650 }
23651 }
23652
23653 template<typename _Tp, typename _Alloc>
23654 template <typename _Predicate>
23655 void
23656 list<_Tp, _Alloc>::
23657 remove_if(_Predicate __pred)
23658 {
23659 iterator __first = begin();
23660 iterator __last = end();
23661 while (__first != __last)
23662 {
23663 iterator __next = __first;
23664 ++__next;
23665 if (__pred(*__first))
23666 _M_erase(__first);
23667 __first = __next;
23668 }
23669 }
23670
23671 template<typename _Tp, typename _Alloc>
23672 template <typename _BinaryPredicate>
23673 void
23674 list<_Tp, _Alloc>::
23675 unique(_BinaryPredicate __binary_pred)
23676 {
23677 iterator __first = begin();
23678 iterator __last = end();
23679 if (__first == __last)
23680 return;
23681 iterator __next = __first;
23682 while (++__next != __last)
23683 {
23684 if (__binary_pred(*__first, *__next))
23685 _M_erase(__next);
23686 else
23687 __first = __next;
23688 __next = __first;
23689 }
23690 }
23691
23692 template<typename _Tp, typename _Alloc>
23693 template <typename _StrictWeakOrdering>
23694 void
23695 list<_Tp, _Alloc>::
23696 sort(_StrictWeakOrdering __comp)
23697 {
23698
23699 if (this->_M_impl._M_node._M_next != &this->_M_impl._M_node
23700 && this->_M_impl._M_node._M_next->_M_next != &this->_M_impl._M_node)
23701 {
23702 list __carry;
23703 list __tmp[64];
23704 list * __fill = &__tmp[0];
23705 list * __counter;
23706
23707 do
23708 {
23709 __carry.splice(__carry.begin(), *this, begin());
23710
23711 for(__counter = &__tmp[0];
23712 __counter != __fill && !__counter->empty();
23713 ++__counter)
23714 {
23715 __counter->merge(__carry, __comp);
23716 __carry.swap(*__counter);
23717 }
23718 __carry.swap(*__counter);
23719 if (__counter == __fill)
23720 ++__fill;
23721 }
23722 while ( !empty() );
23723
23724 for (__counter = &__tmp[1]; __counter != __fill; ++__counter)
23725 __counter->merge(*(__counter - 1), __comp);
23726 swap(*(__fill - 1));
23727 }
23728 }
23729
23730 }
23731 # 67 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/list" 2 3
23732 # 33 "../fwbuilder/FWObject.h" 2
23733 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/map" 1 3
23734 # 56 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/map" 3
23735 #define _GLIBCXX_MAP 1
23736
23737
23738 # 59 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/map" 3
23739
23740 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_tree.h" 1 3
23741 # 60 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_tree.h" 3
23742 #define _STL_TREE_H 1
23743
23744
23745
23746
23747
23748
23749 namespace std __attribute__ ((__visibility__ ("default"))) {
23750 # 85 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_tree.h" 3
23751 enum _Rb_tree_color { _S_red = false, _S_black = true };
23752
23753 struct _Rb_tree_node_base
23754 {
23755 typedef _Rb_tree_node_base* _Base_ptr;
23756 typedef const _Rb_tree_node_base* _Const_Base_ptr;
23757
23758 _Rb_tree_color _M_color;
23759 _Base_ptr _M_parent;
23760 _Base_ptr _M_left;
23761 _Base_ptr _M_right;
23762
23763 static _Base_ptr
23764 _S_minimum(_Base_ptr __x)
23765 {
23766 while (__x->_M_left != 0) __x = __x->_M_left;
23767 return __x;
23768 }
23769
23770 static _Const_Base_ptr
23771 _S_minimum(_Const_Base_ptr __x)
23772 {
23773 while (__x->_M_left != 0) __x = __x->_M_left;
23774 return __x;
23775 }
23776
23777 static _Base_ptr
23778 _S_maximum(_Base_ptr __x)
23779 {
23780 while (__x->_M_right != 0) __x = __x->_M_right;
23781 return __x;
23782 }
23783
23784 static _Const_Base_ptr
23785 _S_maximum(_Const_Base_ptr __x)
23786 {
23787 while (__x->_M_right != 0) __x = __x->_M_right;
23788 return __x;
23789 }
23790 };
23791
23792 template<typename _Val>
23793 struct _Rb_tree_node : public _Rb_tree_node_base
23794 {
23795 typedef _Rb_tree_node<_Val>* _Link_type;
23796 _Val _M_value_field;
23797
23798
23799
23800
23801
23802
23803
23804 };
23805
23806 __attribute__ ((__pure__)) _Rb_tree_node_base*
23807 _Rb_tree_increment(_Rb_tree_node_base* __x) throw ();
23808
23809 __attribute__ ((__pure__)) const _Rb_tree_node_base*
23810 _Rb_tree_increment(const _Rb_tree_node_base* __x) throw ();
23811
23812 __attribute__ ((__pure__)) _Rb_tree_node_base*
23813 _Rb_tree_decrement(_Rb_tree_node_base* __x) throw ();
23814
23815 __attribute__ ((__pure__)) const _Rb_tree_node_base*
23816 _Rb_tree_decrement(const _Rb_tree_node_base* __x) throw ();
23817
23818 template<typename _Tp>
23819 struct _Rb_tree_iterator
23820 {
23821 typedef _Tp value_type;
23822 typedef _Tp& reference;
23823 typedef _Tp* pointer;
23824
23825 typedef bidirectional_iterator_tag iterator_category;
23826 typedef ptrdiff_t difference_type;
23827
23828 typedef _Rb_tree_iterator<_Tp> _Self;
23829 typedef _Rb_tree_node_base::_Base_ptr _Base_ptr;
23830 typedef _Rb_tree_node<_Tp>* _Link_type;
23831
23832 _Rb_tree_iterator()
23833 : _M_node() { }
23834
23835 explicit
23836 _Rb_tree_iterator(_Link_type __x)
23837 : _M_node(__x) { }
23838
23839 reference
23840 operator*() const
23841 { return static_cast<_Link_type>(_M_node)->_M_value_field; }
23842
23843 pointer
23844 operator->() const
23845 { return &static_cast<_Link_type>(_M_node)->_M_value_field; }
23846
23847 _Self&
23848 operator++()
23849 {
23850 _M_node = _Rb_tree_increment(_M_node);
23851 return *this;
23852 }
23853
23854 _Self
23855 operator++(int)
23856 {
23857 _Self __tmp = *this;
23858 _M_node = _Rb_tree_increment(_M_node);
23859 return __tmp;
23860 }
23861
23862 _Self&
23863 operator--()
23864 {
23865 _M_node = _Rb_tree_decrement(_M_node);
23866 return *this;
23867 }
23868
23869 _Self
23870 operator--(int)
23871 {
23872 _Self __tmp = *this;
23873 _M_node = _Rb_tree_decrement(_M_node);
23874 return __tmp;
23875 }
23876
23877 bool
23878 operator==(const _Self& __x) const
23879 { return _M_node == __x._M_node; }
23880
23881 bool
23882 operator!=(const _Self& __x) const
23883 { return _M_node != __x._M_node; }
23884
23885 _Base_ptr _M_node;
23886 };
23887
23888 template<typename _Tp>
23889 struct _Rb_tree_const_iterator
23890 {
23891 typedef _Tp value_type;
23892 typedef const _Tp& reference;
23893 typedef const _Tp* pointer;
23894
23895 typedef _Rb_tree_iterator<_Tp> iterator;
23896
23897 typedef bidirectional_iterator_tag iterator_category;
23898 typedef ptrdiff_t difference_type;
23899
23900 typedef _Rb_tree_const_iterator<_Tp> _Self;
23901 typedef _Rb_tree_node_base::_Const_Base_ptr _Base_ptr;
23902 typedef const _Rb_tree_node<_Tp>* _Link_type;
23903
23904 _Rb_tree_const_iterator()
23905 : _M_node() { }
23906
23907 explicit
23908 _Rb_tree_const_iterator(_Link_type __x)
23909 : _M_node(__x) { }
23910
23911 _Rb_tree_const_iterator(const iterator& __it)
23912 : _M_node(__it._M_node) { }
23913
23914 reference
23915 operator*() const
23916 { return static_cast<_Link_type>(_M_node)->_M_value_field; }
23917
23918 pointer
23919 operator->() const
23920 { return &static_cast<_Link_type>(_M_node)->_M_value_field; }
23921
23922 _Self&
23923 operator++()
23924 {
23925 _M_node = _Rb_tree_increment(_M_node);
23926 return *this;
23927 }
23928
23929 _Self
23930 operator++(int)
23931 {
23932 _Self __tmp = *this;
23933 _M_node = _Rb_tree_increment(_M_node);
23934 return __tmp;
23935 }
23936
23937 _Self&
23938 operator--()
23939 {
23940 _M_node = _Rb_tree_decrement(_M_node);
23941 return *this;
23942 }
23943
23944 _Self
23945 operator--(int)
23946 {
23947 _Self __tmp = *this;
23948 _M_node = _Rb_tree_decrement(_M_node);
23949 return __tmp;
23950 }
23951
23952 bool
23953 operator==(const _Self& __x) const
23954 { return _M_node == __x._M_node; }
23955
23956 bool
23957 operator!=(const _Self& __x) const
23958 { return _M_node != __x._M_node; }
23959
23960 _Base_ptr _M_node;
23961 };
23962
23963 template<typename _Val>
23964 inline bool
23965 operator==(const _Rb_tree_iterator<_Val>& __x,
23966 const _Rb_tree_const_iterator<_Val>& __y)
23967 { return __x._M_node == __y._M_node; }
23968
23969 template<typename _Val>
23970 inline bool
23971 operator!=(const _Rb_tree_iterator<_Val>& __x,
23972 const _Rb_tree_const_iterator<_Val>& __y)
23973 { return __x._M_node != __y._M_node; }
23974
23975 void
23976 _Rb_tree_insert_and_rebalance(const bool __insert_left,
23977 _Rb_tree_node_base* __x,
23978 _Rb_tree_node_base* __p,
23979 _Rb_tree_node_base& __header) throw ();
23980
23981 _Rb_tree_node_base*
23982 _Rb_tree_rebalance_for_erase(_Rb_tree_node_base* const __z,
23983 _Rb_tree_node_base& __header) throw ();
23984
23985
23986 template<typename _Key, typename _Val, typename _KeyOfValue,
23987 typename _Compare, typename _Alloc = allocator<_Val> >
23988 class _Rb_tree
23989 {
23990 typedef typename _Alloc::template rebind<_Rb_tree_node<_Val> >::other
23991 _Node_allocator;
23992
23993 protected:
23994 typedef _Rb_tree_node_base* _Base_ptr;
23995 typedef const _Rb_tree_node_base* _Const_Base_ptr;
23996
23997 public:
23998 typedef _Key key_type;
23999 typedef _Val value_type;
24000 typedef value_type* pointer;
24001 typedef const value_type* const_pointer;
24002 typedef value_type& reference;
24003 typedef const value_type& const_reference;
24004 typedef _Rb_tree_node<_Val>* _Link_type;
24005 typedef const _Rb_tree_node<_Val>* _Const_Link_type;
24006 typedef size_t size_type;
24007 typedef ptrdiff_t difference_type;
24008 typedef _Alloc allocator_type;
24009
24010 _Node_allocator&
24011 _M_get_Node_allocator()
24012 { return *static_cast<_Node_allocator*>(&this->_M_impl); }
24013
24014 const _Node_allocator&
24015 _M_get_Node_allocator() const
24016 { return *static_cast<const _Node_allocator*>(&this->_M_impl); }
24017
24018 allocator_type
24019 get_allocator() const
24020 { return allocator_type(_M_get_Node_allocator()); }
24021
24022 protected:
24023 _Link_type
24024 _M_get_node()
24025 { return _M_impl._Node_allocator::allocate(1); }
24026
24027 void
24028 _M_put_node(_Link_type __p)
24029 { _M_impl._Node_allocator::deallocate(__p, 1); }
24030
24031
24032 _Link_type
24033 _M_create_node(const value_type& __x)
24034 {
24035 _Link_type __tmp = _M_get_node();
24036 try
24037 { get_allocator().construct(&__tmp->_M_value_field, __x); }
24038 catch(...)
24039 {
24040 _M_put_node(__tmp);
24041 throw;
24042 }
24043 return __tmp;
24044 }
24045
24046 void
24047 _M_destroy_node(_Link_type __p)
24048 {
24049 get_allocator().destroy(&__p->_M_value_field);
24050 _M_put_node(__p);
24051 }
24052 # 413 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_tree.h" 3
24053 _Link_type
24054 _M_clone_node(_Const_Link_type __x)
24055 {
24056 _Link_type __tmp = _M_create_node(__x->_M_value_field);
24057 __tmp->_M_color = __x->_M_color;
24058 __tmp->_M_left = 0;
24059 __tmp->_M_right = 0;
24060 return __tmp;
24061 }
24062
24063 protected:
24064 template<typename _Key_compare,
24065 bool _Is_pod_comparator = __is_pod(_Key_compare)>
24066 struct _Rb_tree_impl : public _Node_allocator
24067 {
24068 _Key_compare _M_key_compare;
24069 _Rb_tree_node_base _M_header;
24070 size_type _M_node_count;
24071
24072 _Rb_tree_impl()
24073 : _Node_allocator(), _M_key_compare(), _M_header(),
24074 _M_node_count(0)
24075 { _M_initialize(); }
24076
24077 _Rb_tree_impl(const _Key_compare& __comp, const _Node_allocator& __a)
24078 : _Node_allocator(__a), _M_key_compare(__comp), _M_header(),
24079 _M_node_count(0)
24080 { _M_initialize(); }
24081
24082 private:
24083 void
24084 _M_initialize()
24085 {
24086 this->_M_header._M_color = _S_red;
24087 this->_M_header._M_parent = 0;
24088 this->_M_header._M_left = &this->_M_header;
24089 this->_M_header._M_right = &this->_M_header;
24090 }
24091 };
24092
24093 _Rb_tree_impl<_Compare> _M_impl;
24094
24095 protected:
24096 _Base_ptr&
24097 _M_root()
24098 { return this->_M_impl._M_header._M_parent; }
24099
24100 _Const_Base_ptr
24101 _M_root() const
24102 { return this->_M_impl._M_header._M_parent; }
24103
24104 _Base_ptr&
24105 _M_leftmost()
24106 { return this->_M_impl._M_header._M_left; }
24107
24108 _Const_Base_ptr
24109 _M_leftmost() const
24110 { return this->_M_impl._M_header._M_left; }
24111
24112 _Base_ptr&
24113 _M_rightmost()
24114 { return this->_M_impl._M_header._M_right; }
24115
24116 _Const_Base_ptr
24117 _M_rightmost() const
24118 { return this->_M_impl._M_header._M_right; }
24119
24120 _Link_type
24121 _M_begin()
24122 { return static_cast<_Link_type>(this->_M_impl._M_header._M_parent); }
24123
24124 _Const_Link_type
24125 _M_begin() const
24126 {
24127 return static_cast<_Const_Link_type>
24128 (this->_M_impl._M_header._M_parent);
24129 }
24130
24131 _Link_type
24132 _M_end()
24133 { return static_cast<_Link_type>(&this->_M_impl._M_header); }
24134
24135 _Const_Link_type
24136 _M_end() const
24137 { return static_cast<_Const_Link_type>(&this->_M_impl._M_header); }
24138
24139 static const_reference
24140 _S_value(_Const_Link_type __x)
24141 { return __x->_M_value_field; }
24142
24143 static const _Key&
24144 _S_key(_Const_Link_type __x)
24145 { return _KeyOfValue()(_S_value(__x)); }
24146
24147 static _Link_type
24148 _S_left(_Base_ptr __x)
24149 { return static_cast<_Link_type>(__x->_M_left); }
24150
24151 static _Const_Link_type
24152 _S_left(_Const_Base_ptr __x)
24153 { return static_cast<_Const_Link_type>(__x->_M_left); }
24154
24155 static _Link_type
24156 _S_right(_Base_ptr __x)
24157 { return static_cast<_Link_type>(__x->_M_right); }
24158
24159 static _Const_Link_type
24160 _S_right(_Const_Base_ptr __x)
24161 { return static_cast<_Const_Link_type>(__x->_M_right); }
24162
24163 static const_reference
24164 _S_value(_Const_Base_ptr __x)
24165 { return static_cast<_Const_Link_type>(__x)->_M_value_field; }
24166
24167 static const _Key&
24168 _S_key(_Const_Base_ptr __x)
24169 { return _KeyOfValue()(_S_value(__x)); }
24170
24171 static _Base_ptr
24172 _S_minimum(_Base_ptr __x)
24173 { return _Rb_tree_node_base::_S_minimum(__x); }
24174
24175 static _Const_Base_ptr
24176 _S_minimum(_Const_Base_ptr __x)
24177 { return _Rb_tree_node_base::_S_minimum(__x); }
24178
24179 static _Base_ptr
24180 _S_maximum(_Base_ptr __x)
24181 { return _Rb_tree_node_base::_S_maximum(__x); }
24182
24183 static _Const_Base_ptr
24184 _S_maximum(_Const_Base_ptr __x)
24185 { return _Rb_tree_node_base::_S_maximum(__x); }
24186
24187 public:
24188 typedef _Rb_tree_iterator<value_type> iterator;
24189 typedef _Rb_tree_const_iterator<value_type> const_iterator;
24190
24191 typedef std::reverse_iterator<iterator> reverse_iterator;
24192 typedef std::reverse_iterator<const_iterator> const_reverse_iterator;
24193
24194 private:
24195 iterator
24196 _M_insert_(_Const_Base_ptr __x, _Const_Base_ptr __y,
24197 const value_type& __v);
24198
24199
24200
24201 iterator
24202 _M_insert_lower(_Base_ptr __x, _Base_ptr __y, const value_type& __v);
24203
24204 iterator
24205 _M_insert_equal_lower(const value_type& __x);
24206
24207 _Link_type
24208 _M_copy(_Const_Link_type __x, _Link_type __p);
24209
24210 void
24211 _M_erase(_Link_type __x);
24212
24213 iterator
24214 _M_lower_bound(_Link_type __x, _Link_type __y,
24215 const _Key& __k);
24216
24217 const_iterator
24218 _M_lower_bound(_Const_Link_type __x, _Const_Link_type __y,
24219 const _Key& __k) const;
24220
24221 iterator
24222 _M_upper_bound(_Link_type __x, _Link_type __y,
24223 const _Key& __k);
24224
24225 const_iterator
24226 _M_upper_bound(_Const_Link_type __x, _Const_Link_type __y,
24227 const _Key& __k) const;
24228
24229 public:
24230
24231 _Rb_tree() { }
24232
24233 _Rb_tree(const _Compare& __comp,
24234 const allocator_type& __a = allocator_type())
24235 : _M_impl(__comp, __a) { }
24236
24237 _Rb_tree(const _Rb_tree& __x)
24238 : _M_impl(__x._M_impl._M_key_compare, __x._M_get_Node_allocator())
24239 {
24240 if (__x._M_root() != 0)
24241 {
24242 _M_root() = _M_copy(__x._M_begin(), _M_end());
24243 _M_leftmost() = _S_minimum(_M_root());
24244 _M_rightmost() = _S_maximum(_M_root());
24245 _M_impl._M_node_count = __x._M_impl._M_node_count;
24246 }
24247 }
24248
24249
24250
24251
24252
24253 ~_Rb_tree()
24254 { _M_erase(_M_begin()); }
24255
24256 _Rb_tree&
24257 operator=(const _Rb_tree& __x);
24258
24259
24260 _Compare
24261 key_comp() const
24262 { return _M_impl._M_key_compare; }
24263
24264 iterator
24265 begin()
24266 {
24267 return iterator(static_cast<_Link_type>
24268 (this->_M_impl._M_header._M_left));
24269 }
24270
24271 const_iterator
24272 begin() const
24273 {
24274 return const_iterator(static_cast<_Const_Link_type>
24275 (this->_M_impl._M_header._M_left));
24276 }
24277
24278 iterator
24279 end()
24280 { return iterator(static_cast<_Link_type>(&this->_M_impl._M_header)); }
24281
24282 const_iterator
24283 end() const
24284 {
24285 return const_iterator(static_cast<_Const_Link_type>
24286 (&this->_M_impl._M_header));
24287 }
24288
24289 reverse_iterator
24290 rbegin()
24291 { return reverse_iterator(end()); }
24292
24293 const_reverse_iterator
24294 rbegin() const
24295 { return const_reverse_iterator(end()); }
24296
24297 reverse_iterator
24298 rend()
24299 { return reverse_iterator(begin()); }
24300
24301 const_reverse_iterator
24302 rend() const
24303 { return const_reverse_iterator(begin()); }
24304
24305 bool
24306 empty() const
24307 { return _M_impl._M_node_count == 0; }
24308
24309 size_type
24310 size() const
24311 { return _M_impl._M_node_count; }
24312
24313 size_type
24314 max_size() const
24315 { return _M_get_Node_allocator().max_size(); }
24316
24317 void
24318 swap(_Rb_tree& __t);
24319
24320
24321 pair<iterator, bool>
24322 _M_insert_unique(const value_type& __x);
24323
24324 iterator
24325 _M_insert_equal(const value_type& __x);
24326
24327 iterator
24328 _M_insert_unique_(const_iterator __position, const value_type& __x);
24329
24330 iterator
24331 _M_insert_equal_(const_iterator __position, const value_type& __x);
24332
24333 template<typename _InputIterator>
24334 void
24335 _M_insert_unique(_InputIterator __first, _InputIterator __last);
24336
24337 template<typename _InputIterator>
24338 void
24339 _M_insert_equal(_InputIterator __first, _InputIterator __last);
24340 # 712 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_tree.h" 3
24341 void
24342 erase(iterator __position);
24343
24344 void
24345 erase(const_iterator __position);
24346
24347 size_type
24348 erase(const key_type& __x);
24349 # 732 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_tree.h" 3
24350 void
24351 erase(iterator __first, iterator __last);
24352
24353 void
24354 erase(const_iterator __first, const_iterator __last);
24355
24356 void
24357 erase(const key_type* __first, const key_type* __last);
24358
24359 void
24360 clear()
24361 {
24362 _M_erase(_M_begin());
24363 _M_leftmost() = _M_end();
24364 _M_root() = 0;
24365 _M_rightmost() = _M_end();
24366 _M_impl._M_node_count = 0;
24367 }
24368
24369
24370 iterator
24371 find(const key_type& __k);
24372
24373 const_iterator
24374 find(const key_type& __k) const;
24375
24376 size_type
24377 count(const key_type& __k) const;
24378
24379 iterator
24380 lower_bound(const key_type& __k)
24381 { return _M_lower_bound(_M_begin(), _M_end(), __k); }
24382
24383 const_iterator
24384 lower_bound(const key_type& __k) const
24385 { return _M_lower_bound(_M_begin(), _M_end(), __k); }
24386
24387 iterator
24388 upper_bound(const key_type& __k)
24389 { return _M_upper_bound(_M_begin(), _M_end(), __k); }
24390
24391 const_iterator
24392 upper_bound(const key_type& __k) const
24393 { return _M_upper_bound(_M_begin(), _M_end(), __k); }
24394
24395 pair<iterator, iterator>
24396 equal_range(const key_type& __k);
24397
24398 pair<const_iterator, const_iterator>
24399 equal_range(const key_type& __k) const;
24400
24401
24402 bool
24403 __rb_verify() const;
24404 };
24405
24406 template<typename _Key, typename _Val, typename _KeyOfValue,
24407 typename _Compare, typename _Alloc>
24408 inline bool
24409 operator==(const _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>& __x,
24410 const _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>& __y)
24411 {
24412 return __x.size() == __y.size()
24413 && std::equal(__x.begin(), __x.end(), __y.begin());
24414 }
24415
24416 template<typename _Key, typename _Val, typename _KeyOfValue,
24417 typename _Compare, typename _Alloc>
24418 inline bool
24419 operator<(const _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>& __x,
24420 const _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>& __y)
24421 {
24422 return std::lexicographical_compare(__x.begin(), __x.end(),
24423 __y.begin(), __y.end());
24424 }
24425
24426 template<typename _Key, typename _Val, typename _KeyOfValue,
24427 typename _Compare, typename _Alloc>
24428 inline bool
24429 operator!=(const _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>& __x,
24430 const _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>& __y)
24431 { return !(__x == __y); }
24432
24433 template<typename _Key, typename _Val, typename _KeyOfValue,
24434 typename _Compare, typename _Alloc>
24435 inline bool
24436 operator>(const _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>& __x,
24437 const _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>& __y)
24438 { return __y < __x; }
24439
24440 template<typename _Key, typename _Val, typename _KeyOfValue,
24441 typename _Compare, typename _Alloc>
24442 inline bool
24443 operator<=(const _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>& __x,
24444 const _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>& __y)
24445 { return !(__y < __x); }
24446
24447 template<typename _Key, typename _Val, typename _KeyOfValue,
24448 typename _Compare, typename _Alloc>
24449 inline bool
24450 operator>=(const _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>& __x,
24451 const _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>& __y)
24452 { return !(__x < __y); }
24453
24454 template<typename _Key, typename _Val, typename _KeyOfValue,
24455 typename _Compare, typename _Alloc>
24456 inline void
24457 swap(_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>& __x,
24458 _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>& __y)
24459 { __x.swap(__y); }
24460 # 867 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_tree.h" 3
24461 template<typename _Key, typename _Val, typename _KeyOfValue,
24462 typename _Compare, typename _Alloc>
24463 _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>&
24464 _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::
24465 operator=(const _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>& __x)
24466 {
24467 if (this != &__x)
24468 {
24469
24470 clear();
24471 _M_impl._M_key_compare = __x._M_impl._M_key_compare;
24472 if (__x._M_root() != 0)
24473 {
24474 _M_root() = _M_copy(__x._M_begin(), _M_end());
24475 _M_leftmost() = _S_minimum(_M_root());
24476 _M_rightmost() = _S_maximum(_M_root());
24477 _M_impl._M_node_count = __x._M_impl._M_node_count;
24478 }
24479 }
24480 return *this;
24481 }
24482
24483 template<typename _Key, typename _Val, typename _KeyOfValue,
24484 typename _Compare, typename _Alloc>
24485 typename _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::iterator
24486 _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::
24487 _M_insert_(_Const_Base_ptr __x, _Const_Base_ptr __p, const _Val& __v)
24488 {
24489 bool __insert_left = (__x != 0 || __p == _M_end()
24490 || _M_impl._M_key_compare(_KeyOfValue()(__v),
24491 _S_key(__p)));
24492
24493 _Link_type __z = _M_create_node(__v);
24494
24495 _Rb_tree_insert_and_rebalance(__insert_left, __z,
24496 const_cast<_Base_ptr>(__p),
24497 this->_M_impl._M_header);
24498 ++_M_impl._M_node_count;
24499 return iterator(__z);
24500 }
24501
24502 template<typename _Key, typename _Val, typename _KeyOfValue,
24503 typename _Compare, typename _Alloc>
24504 typename _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::iterator
24505 _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::
24506 _M_insert_lower(_Base_ptr __x, _Base_ptr __p, const _Val& __v)
24507 {
24508 bool __insert_left = (__x != 0 || __p == _M_end()
24509 || !_M_impl._M_key_compare(_S_key(__p),
24510 _KeyOfValue()(__v)));
24511
24512 _Link_type __z = _M_create_node(__v);
24513
24514 _Rb_tree_insert_and_rebalance(__insert_left, __z, __p,
24515 this->_M_impl._M_header);
24516 ++_M_impl._M_node_count;
24517 return iterator(__z);
24518 }
24519
24520 template<typename _Key, typename _Val, typename _KeyOfValue,
24521 typename _Compare, typename _Alloc>
24522 typename _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::iterator
24523 _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::
24524 _M_insert_equal_lower(const _Val& __v)
24525 {
24526 _Link_type __x = _M_begin();
24527 _Link_type __y = _M_end();
24528 while (__x != 0)
24529 {
24530 __y = __x;
24531 __x = !_M_impl._M_key_compare(_S_key(__x), _KeyOfValue()(__v)) ?
24532 _S_left(__x) : _S_right(__x);
24533 }
24534 return _M_insert_lower(__x, __y, __v);
24535 }
24536
24537 template<typename _Key, typename _Val, typename _KoV,
24538 typename _Compare, typename _Alloc>
24539 typename _Rb_tree<_Key, _Val, _KoV, _Compare, _Alloc>::_Link_type
24540 _Rb_tree<_Key, _Val, _KoV, _Compare, _Alloc>::
24541 _M_copy(_Const_Link_type __x, _Link_type __p)
24542 {
24543
24544 _Link_type __top = _M_clone_node(__x);
24545 __top->_M_parent = __p;
24546
24547 try
24548 {
24549 if (__x->_M_right)
24550 __top->_M_right = _M_copy(_S_right(__x), __top);
24551 __p = __top;
24552 __x = _S_left(__x);
24553
24554 while (__x != 0)
24555 {
24556 _Link_type __y = _M_clone_node(__x);
24557 __p->_M_left = __y;
24558 __y->_M_parent = __p;
24559 if (__x->_M_right)
24560 __y->_M_right = _M_copy(_S_right(__x), __y);
24561 __p = __y;
24562 __x = _S_left(__x);
24563 }
24564 }
24565 catch(...)
24566 {
24567 _M_erase(__top);
24568 throw;
24569 }
24570 return __top;
24571 }
24572
24573 template<typename _Key, typename _Val, typename _KeyOfValue,
24574 typename _Compare, typename _Alloc>
24575 void
24576 _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::
24577 _M_erase(_Link_type __x)
24578 {
24579
24580 while (__x != 0)
24581 {
24582 _M_erase(_S_right(__x));
24583 _Link_type __y = _S_left(__x);
24584 _M_destroy_node(__x);
24585 __x = __y;
24586 }
24587 }
24588
24589 template<typename _Key, typename _Val, typename _KeyOfValue,
24590 typename _Compare, typename _Alloc>
24591 typename _Rb_tree<_Key, _Val, _KeyOfValue,
24592 _Compare, _Alloc>::iterator
24593 _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::
24594 _M_lower_bound(_Link_type __x, _Link_type __y,
24595 const _Key& __k)
24596 {
24597 while (__x != 0)
24598 if (!_M_impl._M_key_compare(_S_key(__x), __k))
24599 __y = __x, __x = _S_left(__x);
24600 else
24601 __x = _S_right(__x);
24602 return iterator(__y);
24603 }
24604
24605 template<typename _Key, typename _Val, typename _KeyOfValue,
24606 typename _Compare, typename _Alloc>
24607 typename _Rb_tree<_Key, _Val, _KeyOfValue,
24608 _Compare, _Alloc>::const_iterator
24609 _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::
24610 _M_lower_bound(_Const_Link_type __x, _Const_Link_type __y,
24611 const _Key& __k) const
24612 {
24613 while (__x != 0)
24614 if (!_M_impl._M_key_compare(_S_key(__x), __k))
24615 __y = __x, __x = _S_left(__x);
24616 else
24617 __x = _S_right(__x);
24618 return const_iterator(__y);
24619 }
24620
24621 template<typename _Key, typename _Val, typename _KeyOfValue,
24622 typename _Compare, typename _Alloc>
24623 typename _Rb_tree<_Key, _Val, _KeyOfValue,
24624 _Compare, _Alloc>::iterator
24625 _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::
24626 _M_upper_bound(_Link_type __x, _Link_type __y,
24627 const _Key& __k)
24628 {
24629 while (__x != 0)
24630 if (_M_impl._M_key_compare(__k, _S_key(__x)))
24631 __y = __x, __x = _S_left(__x);
24632 else
24633 __x = _S_right(__x);
24634 return iterator(__y);
24635 }
24636
24637 template<typename _Key, typename _Val, typename _KeyOfValue,
24638 typename _Compare, typename _Alloc>
24639 typename _Rb_tree<_Key, _Val, _KeyOfValue,
24640 _Compare, _Alloc>::const_iterator
24641 _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::
24642 _M_upper_bound(_Const_Link_type __x, _Const_Link_type __y,
24643 const _Key& __k) const
24644 {
24645 while (__x != 0)
24646 if (_M_impl._M_key_compare(__k, _S_key(__x)))
24647 __y = __x, __x = _S_left(__x);
24648 else
24649 __x = _S_right(__x);
24650 return const_iterator(__y);
24651 }
24652
24653 template<typename _Key, typename _Val, typename _KeyOfValue,
24654 typename _Compare, typename _Alloc>
24655 pair<typename _Rb_tree<_Key, _Val, _KeyOfValue,
24656 _Compare, _Alloc>::iterator,
24657 typename _Rb_tree<_Key, _Val, _KeyOfValue,
24658 _Compare, _Alloc>::iterator>
24659 _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::
24660 equal_range(const _Key& __k)
24661 {
24662 _Link_type __x = _M_begin();
24663 _Link_type __y = _M_end();
24664 while (__x != 0)
24665 {
24666 if (_M_impl._M_key_compare(_S_key(__x), __k))
24667 __x = _S_right(__x);
24668 else if (_M_impl._M_key_compare(__k, _S_key(__x)))
24669 __y = __x, __x = _S_left(__x);
24670 else
24671 {
24672 _Link_type __xu(__x), __yu(__y);
24673 __y = __x, __x = _S_left(__x);
24674 __xu = _S_right(__xu);
24675 return pair<iterator,
24676 iterator>(_M_lower_bound(__x, __y, __k),
24677 _M_upper_bound(__xu, __yu, __k));
24678 }
24679 }
24680 return pair<iterator, iterator>(iterator(__y),
24681 iterator(__y));
24682 }
24683
24684 template<typename _Key, typename _Val, typename _KeyOfValue,
24685 typename _Compare, typename _Alloc>
24686 pair<typename _Rb_tree<_Key, _Val, _KeyOfValue,
24687 _Compare, _Alloc>::const_iterator,
24688 typename _Rb_tree<_Key, _Val, _KeyOfValue,
24689 _Compare, _Alloc>::const_iterator>
24690 _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::
24691 equal_range(const _Key& __k) const
24692 {
24693 _Const_Link_type __x = _M_begin();
24694 _Const_Link_type __y = _M_end();
24695 while (__x != 0)
24696 {
24697 if (_M_impl._M_key_compare(_S_key(__x), __k))
24698 __x = _S_right(__x);
24699 else if (_M_impl._M_key_compare(__k, _S_key(__x)))
24700 __y = __x, __x = _S_left(__x);
24701 else
24702 {
24703 _Const_Link_type __xu(__x), __yu(__y);
24704 __y = __x, __x = _S_left(__x);
24705 __xu = _S_right(__xu);
24706 return pair<const_iterator,
24707 const_iterator>(_M_lower_bound(__x, __y, __k),
24708 _M_upper_bound(__xu, __yu, __k));
24709 }
24710 }
24711 return pair<const_iterator, const_iterator>(const_iterator(__y),
24712 const_iterator(__y));
24713 }
24714
24715 template<typename _Key, typename _Val, typename _KeyOfValue,
24716 typename _Compare, typename _Alloc>
24717 void
24718 _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::
24719 swap(_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>& __t)
24720 {
24721 if (_M_root() == 0)
24722 {
24723 if (__t._M_root() != 0)
24724 {
24725 _M_root() = __t._M_root();
24726 _M_leftmost() = __t._M_leftmost();
24727 _M_rightmost() = __t._M_rightmost();
24728 _M_root()->_M_parent = _M_end();
24729
24730 __t._M_root() = 0;
24731 __t._M_leftmost() = __t._M_end();
24732 __t._M_rightmost() = __t._M_end();
24733 }
24734 }
24735 else if (__t._M_root() == 0)
24736 {
24737 __t._M_root() = _M_root();
24738 __t._M_leftmost() = _M_leftmost();
24739 __t._M_rightmost() = _M_rightmost();
24740 __t._M_root()->_M_parent = __t._M_end();
24741
24742 _M_root() = 0;
24743 _M_leftmost() = _M_end();
24744 _M_rightmost() = _M_end();
24745 }
24746 else
24747 {
24748 std::swap(_M_root(),__t._M_root());
24749 std::swap(_M_leftmost(),__t._M_leftmost());
24750 std::swap(_M_rightmost(),__t._M_rightmost());
24751
24752 _M_root()->_M_parent = _M_end();
24753 __t._M_root()->_M_parent = __t._M_end();
24754 }
24755
24756 std::swap(this->_M_impl._M_node_count, __t._M_impl._M_node_count);
24757 std::swap(this->_M_impl._M_key_compare, __t._M_impl._M_key_compare);
24758
24759
24760
24761 std::__alloc_swap<_Node_allocator>::
24762 _S_do_it(_M_get_Node_allocator(), __t._M_get_Node_allocator());
24763 }
24764
24765 template<typename _Key, typename _Val, typename _KeyOfValue,
24766 typename _Compare, typename _Alloc>
24767 pair<typename _Rb_tree<_Key, _Val, _KeyOfValue,
24768 _Compare, _Alloc>::iterator, bool>
24769 _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::
24770 _M_insert_unique(const _Val& __v)
24771 {
24772 _Link_type __x = _M_begin();
24773 _Link_type __y = _M_end();
24774 bool __comp = true;
24775 while (__x != 0)
24776 {
24777 __y = __x;
24778 __comp = _M_impl._M_key_compare(_KeyOfValue()(__v), _S_key(__x));
24779 __x = __comp ? _S_left(__x) : _S_right(__x);
24780 }
24781 iterator __j = iterator(__y);
24782 if (__comp)
24783 {
24784 if (__j == begin())
24785 return pair<iterator, bool>(_M_insert_(__x, __y, __v), true);
24786 else
24787 --__j;
24788 }
24789 if (_M_impl._M_key_compare(_S_key(__j._M_node), _KeyOfValue()(__v)))
24790 return pair<iterator, bool>(_M_insert_(__x, __y, __v), true);
24791 return pair<iterator, bool>(__j, false);
24792 }
24793
24794 template<typename _Key, typename _Val, typename _KeyOfValue,
24795 typename _Compare, typename _Alloc>
24796 typename _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::iterator
24797 _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::
24798 _M_insert_equal(const _Val& __v)
24799 {
24800 _Link_type __x = _M_begin();
24801 _Link_type __y = _M_end();
24802 while (__x != 0)
24803 {
24804 __y = __x;
24805 __x = _M_impl._M_key_compare(_KeyOfValue()(__v), _S_key(__x)) ?
24806 _S_left(__x) : _S_right(__x);
24807 }
24808 return _M_insert_(__x, __y, __v);
24809 }
24810
24811 template<typename _Key, typename _Val, typename _KeyOfValue,
24812 typename _Compare, typename _Alloc>
24813 typename _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::iterator
24814 _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::
24815 _M_insert_unique_(const_iterator __position, const _Val& __v)
24816 {
24817
24818 if (__position._M_node == _M_end())
24819 {
24820 if (size() > 0
24821 && _M_impl._M_key_compare(_S_key(_M_rightmost()),
24822 _KeyOfValue()(__v)))
24823 return _M_insert_(0, _M_rightmost(), __v);
24824 else
24825 return _M_insert_unique(__v).first;
24826 }
24827 else if (_M_impl._M_key_compare(_KeyOfValue()(__v),
24828 _S_key(__position._M_node)))
24829 {
24830
24831 const_iterator __before = __position;
24832 if (__position._M_node == _M_leftmost())
24833 return _M_insert_(_M_leftmost(), _M_leftmost(), __v);
24834 else if (_M_impl._M_key_compare(_S_key((--__before)._M_node),
24835 _KeyOfValue()(__v)))
24836 {
24837 if (_S_right(__before._M_node) == 0)
24838 return _M_insert_(0, __before._M_node, __v);
24839 else
24840 return _M_insert_(__position._M_node,
24841 __position._M_node, __v);
24842 }
24843 else
24844 return _M_insert_unique(__v).first;
24845 }
24846 else if (_M_impl._M_key_compare(_S_key(__position._M_node),
24847 _KeyOfValue()(__v)))
24848 {
24849
24850 const_iterator __after = __position;
24851 if (__position._M_node == _M_rightmost())
24852 return _M_insert_(0, _M_rightmost(), __v);
24853 else if (_M_impl._M_key_compare(_KeyOfValue()(__v),
24854 _S_key((++__after)._M_node)))
24855 {
24856 if (_S_right(__position._M_node) == 0)
24857 return _M_insert_(0, __position._M_node, __v);
24858 else
24859 return _M_insert_(__after._M_node, __after._M_node, __v);
24860 }
24861 else
24862 return _M_insert_unique(__v).first;
24863 }
24864 else
24865
24866 return iterator(static_cast<_Link_type>
24867 (const_cast<_Base_ptr>(__position._M_node)));
24868 }
24869
24870 template<typename _Key, typename _Val, typename _KeyOfValue,
24871 typename _Compare, typename _Alloc>
24872 typename _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::iterator
24873 _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::
24874 _M_insert_equal_(const_iterator __position, const _Val& __v)
24875 {
24876
24877 if (__position._M_node == _M_end())
24878 {
24879 if (size() > 0
24880 && !_M_impl._M_key_compare(_KeyOfValue()(__v),
24881 _S_key(_M_rightmost())))
24882 return _M_insert_(0, _M_rightmost(), __v);
24883 else
24884 return _M_insert_equal(__v);
24885 }
24886 else if (!_M_impl._M_key_compare(_S_key(__position._M_node),
24887 _KeyOfValue()(__v)))
24888 {
24889
24890 const_iterator __before = __position;
24891 if (__position._M_node == _M_leftmost())
24892 return _M_insert_(_M_leftmost(), _M_leftmost(), __v);
24893 else if (!_M_impl._M_key_compare(_KeyOfValue()(__v),
24894 _S_key((--__before)._M_node)))
24895 {
24896 if (_S_right(__before._M_node) == 0)
24897 return _M_insert_(0, __before._M_node, __v);
24898 else
24899 return _M_insert_(__position._M_node,
24900 __position._M_node, __v);
24901 }
24902 else
24903 return _M_insert_equal(__v);
24904 }
24905 else
24906 {
24907
24908 const_iterator __after = __position;
24909 if (__position._M_node == _M_rightmost())
24910 return _M_insert_(0, _M_rightmost(), __v);
24911 else if (!_M_impl._M_key_compare(_S_key((++__after)._M_node),
24912 _KeyOfValue()(__v)))
24913 {
24914 if (_S_right(__position._M_node) == 0)
24915 return _M_insert_(0, __position._M_node, __v);
24916 else
24917 return _M_insert_(__after._M_node, __after._M_node, __v);
24918 }
24919 else
24920 return _M_insert_equal_lower(__v);
24921 }
24922 }
24923
24924 template<typename _Key, typename _Val, typename _KoV,
24925 typename _Cmp, typename _Alloc>
24926 template<class _II>
24927 void
24928 _Rb_tree<_Key, _Val, _KoV, _Cmp, _Alloc>::
24929 _M_insert_unique(_II __first, _II __last)
24930 {
24931 for (; __first != __last; ++__first)
24932 _M_insert_unique_(end(), *__first);
24933 }
24934
24935 template<typename _Key, typename _Val, typename _KoV,
24936 typename _Cmp, typename _Alloc>
24937 template<class _II>
24938 void
24939 _Rb_tree<_Key, _Val, _KoV, _Cmp, _Alloc>::
24940 _M_insert_equal(_II __first, _II __last)
24941 {
24942 for (; __first != __last; ++__first)
24943 _M_insert_equal_(end(), *__first);
24944 }
24945 # 1391 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_tree.h" 3
24946 template<typename _Key, typename _Val, typename _KeyOfValue,
24947 typename _Compare, typename _Alloc>
24948 inline void
24949 _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::
24950 erase(iterator __position)
24951 {
24952 _Link_type __y =
24953 static_cast<_Link_type>(_Rb_tree_rebalance_for_erase
24954 (__position._M_node,
24955 this->_M_impl._M_header));
24956 _M_destroy_node(__y);
24957 --_M_impl._M_node_count;
24958 }
24959
24960 template<typename _Key, typename _Val, typename _KeyOfValue,
24961 typename _Compare, typename _Alloc>
24962 inline void
24963 _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::
24964 erase(const_iterator __position)
24965 {
24966 _Link_type __y =
24967 static_cast<_Link_type>(_Rb_tree_rebalance_for_erase
24968 (const_cast<_Base_ptr>(__position._M_node),
24969 this->_M_impl._M_header));
24970 _M_destroy_node(__y);
24971 --_M_impl._M_node_count;
24972 }
24973
24974
24975 template<typename _Key, typename _Val, typename _KeyOfValue,
24976 typename _Compare, typename _Alloc>
24977 typename _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::size_type
24978 _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::
24979 erase(const _Key& __x)
24980 {
24981 pair<iterator, iterator> __p = equal_range(__x);
24982 const size_type __old_size = size();
24983 erase(__p.first, __p.second);
24984 return __old_size - size();
24985 }
24986 # 1475 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_tree.h" 3
24987 template<typename _Key, typename _Val, typename _KeyOfValue,
24988 typename _Compare, typename _Alloc>
24989 void
24990 _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::
24991 erase(iterator __first, iterator __last)
24992 {
24993 if (__first == begin() && __last == end())
24994 clear();
24995 else
24996 while (__first != __last)
24997 erase(__first++);
24998 }
24999
25000 template<typename _Key, typename _Val, typename _KeyOfValue,
25001 typename _Compare, typename _Alloc>
25002 void
25003 _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::
25004 erase(const_iterator __first, const_iterator __last)
25005 {
25006 if (__first == begin() && __last == end())
25007 clear();
25008 else
25009 while (__first != __last)
25010 erase(__first++);
25011 }
25012
25013
25014 template<typename _Key, typename _Val, typename _KeyOfValue,
25015 typename _Compare, typename _Alloc>
25016 void
25017 _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::
25018 erase(const _Key* __first, const _Key* __last)
25019 {
25020 while (__first != __last)
25021 erase(*__first++);
25022 }
25023
25024 template<typename _Key, typename _Val, typename _KeyOfValue,
25025 typename _Compare, typename _Alloc>
25026 typename _Rb_tree<_Key, _Val, _KeyOfValue,
25027 _Compare, _Alloc>::iterator
25028 _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::
25029 find(const _Key& __k)
25030 {
25031 iterator __j = _M_lower_bound(_M_begin(), _M_end(), __k);
25032 return (__j == end()
25033 || _M_impl._M_key_compare(__k,
25034 _S_key(__j._M_node))) ? end() : __j;
25035 }
25036
25037 template<typename _Key, typename _Val, typename _KeyOfValue,
25038 typename _Compare, typename _Alloc>
25039 typename _Rb_tree<_Key, _Val, _KeyOfValue,
25040 _Compare, _Alloc>::const_iterator
25041 _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::
25042 find(const _Key& __k) const
25043 {
25044 const_iterator __j = _M_lower_bound(_M_begin(), _M_end(), __k);
25045 return (__j == end()
25046 || _M_impl._M_key_compare(__k,
25047 _S_key(__j._M_node))) ? end() : __j;
25048 }
25049
25050 template<typename _Key, typename _Val, typename _KeyOfValue,
25051 typename _Compare, typename _Alloc>
25052 typename _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::size_type
25053 _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::
25054 count(const _Key& __k) const
25055 {
25056 pair<const_iterator, const_iterator> __p = equal_range(__k);
25057 const size_type __n = std::distance(__p.first, __p.second);
25058 return __n;
25059 }
25060
25061 __attribute__ ((__pure__)) unsigned int
25062 _Rb_tree_black_count(const _Rb_tree_node_base* __node,
25063 const _Rb_tree_node_base* __root) throw ();
25064
25065 template<typename _Key, typename _Val, typename _KeyOfValue,
25066 typename _Compare, typename _Alloc>
25067 bool
25068 _Rb_tree<_Key,_Val,_KeyOfValue,_Compare,_Alloc>::__rb_verify() const
25069 {
25070 if (_M_impl._M_node_count == 0 || begin() == end())
25071 return _M_impl._M_node_count == 0 && begin() == end()
25072 && this->_M_impl._M_header._M_left == _M_end()
25073 && this->_M_impl._M_header._M_right == _M_end();
25074
25075 unsigned int __len = _Rb_tree_black_count(_M_leftmost(), _M_root());
25076 for (const_iterator __it = begin(); __it != end(); ++__it)
25077 {
25078 _Const_Link_type __x = static_cast<_Const_Link_type>(__it._M_node);
25079 _Const_Link_type __L = _S_left(__x);
25080 _Const_Link_type __R = _S_right(__x);
25081
25082 if (__x->_M_color == _S_red)
25083 if ((__L && __L->_M_color == _S_red)
25084 || (__R && __R->_M_color == _S_red))
25085 return false;
25086
25087 if (__L && _M_impl._M_key_compare(_S_key(__x), _S_key(__L)))
25088 return false;
25089 if (__R && _M_impl._M_key_compare(_S_key(__R), _S_key(__x)))
25090 return false;
25091
25092 if (!__L && !__R && _Rb_tree_black_count(__x, _M_root()) != __len)
25093 return false;
25094 }
25095
25096 if (_M_leftmost() != _Rb_tree_node_base::_S_minimum(_M_root()))
25097 return false;
25098 if (_M_rightmost() != _Rb_tree_node_base::_S_maximum(_M_root()))
25099 return false;
25100 return true;
25101 }
25102
25103 }
25104 # 61 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/map" 2 3
25105 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_map.h" 1 3
25106 # 58 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_map.h" 3
25107 #define _STL_MAP_H 1
25108
25109
25110
25111
25112
25113 namespace std __attribute__ ((__visibility__ ("default"))) {
25114 # 84 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_map.h" 3
25115 template <typename _Key, typename _Tp, typename _Compare = std::less<_Key>,
25116 typename _Alloc = std::allocator<std::pair<const _Key, _Tp> > >
25117 class map
25118 {
25119 public:
25120 typedef _Key key_type;
25121 typedef _Tp mapped_type;
25122 typedef std::pair<const _Key, _Tp> value_type;
25123 typedef _Compare key_compare;
25124 typedef _Alloc allocator_type;
25125
25126 private:
25127
25128 typedef typename _Alloc::value_type _Alloc_value_type;
25129
25130
25131
25132
25133
25134 public:
25135 class value_compare
25136 : public std::binary_function<value_type, value_type, bool>
25137 {
25138 friend class map<_Key, _Tp, _Compare, _Alloc>;
25139 protected:
25140 _Compare comp;
25141
25142 value_compare(_Compare __c)
25143 : comp(__c) { }
25144
25145 public:
25146 bool operator()(const value_type& __x, const value_type& __y) const
25147 { return comp(__x.first, __y.first); }
25148 };
25149
25150 private:
25151
25152 typedef typename _Alloc::template rebind<value_type>::other
25153 _Pair_alloc_type;
25154
25155 typedef _Rb_tree<key_type, value_type, _Select1st<value_type>,
25156 key_compare, _Pair_alloc_type> _Rep_type;
25157
25158
25159 _Rep_type _M_t;
25160
25161 public:
25162
25163
25164 typedef typename _Pair_alloc_type::pointer pointer;
25165 typedef typename _Pair_alloc_type::const_pointer const_pointer;
25166 typedef typename _Pair_alloc_type::reference reference;
25167 typedef typename _Pair_alloc_type::const_reference const_reference;
25168 typedef typename _Rep_type::iterator iterator;
25169 typedef typename _Rep_type::const_iterator const_iterator;
25170 typedef typename _Rep_type::size_type size_type;
25171 typedef typename _Rep_type::difference_type difference_type;
25172 typedef typename _Rep_type::reverse_iterator reverse_iterator;
25173 typedef typename _Rep_type::const_reverse_iterator const_reverse_iterator;
25174
25175
25176
25177
25178
25179
25180
25181 map()
25182 : _M_t() { }
25183
25184
25185
25186
25187
25188
25189 explicit
25190 map(const _Compare& __comp,
25191 const allocator_type& __a = allocator_type())
25192 : _M_t(__comp, __a) { }
25193 # 170 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_map.h" 3
25194 map(const map& __x)
25195 : _M_t(__x._M_t) { }
25196 # 211 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_map.h" 3
25197 template<typename _InputIterator>
25198 map(_InputIterator __first, _InputIterator __last)
25199 : _M_t()
25200 { _M_t._M_insert_unique(__first, __last); }
25201 # 227 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_map.h" 3
25202 template<typename _InputIterator>
25203 map(_InputIterator __first, _InputIterator __last,
25204 const _Compare& __comp,
25205 const allocator_type& __a = allocator_type())
25206 : _M_t(__comp, __a)
25207 { _M_t._M_insert_unique(__first, __last); }
25208 # 250 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_map.h" 3
25209 map&
25210 operator=(const map& __x)
25211 {
25212 _M_t = __x._M_t;
25213 return *this;
25214 }
25215 # 296 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_map.h" 3
25216 allocator_type
25217 get_allocator() const
25218 { return _M_t.get_allocator(); }
25219
25220
25221
25222
25223
25224
25225
25226 iterator
25227 begin()
25228 { return _M_t.begin(); }
25229
25230
25231
25232
25233
25234
25235 const_iterator
25236 begin() const
25237 { return _M_t.begin(); }
25238
25239
25240
25241
25242
25243
25244 iterator
25245 end()
25246 { return _M_t.end(); }
25247
25248
25249
25250
25251
25252
25253 const_iterator
25254 end() const
25255 { return _M_t.end(); }
25256
25257
25258
25259
25260
25261
25262 reverse_iterator
25263 rbegin()
25264 { return _M_t.rbegin(); }
25265
25266
25267
25268
25269
25270
25271 const_reverse_iterator
25272 rbegin() const
25273 { return _M_t.rbegin(); }
25274
25275
25276
25277
25278
25279
25280 reverse_iterator
25281 rend()
25282 { return _M_t.rend(); }
25283
25284
25285
25286
25287
25288
25289 const_reverse_iterator
25290 rend() const
25291 { return _M_t.rend(); }
25292 # 415 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_map.h" 3
25293 bool
25294 empty() const
25295 { return _M_t.empty(); }
25296
25297
25298 size_type
25299 size() const
25300 { return _M_t.size(); }
25301
25302
25303 size_type
25304 max_size() const
25305 { return _M_t.max_size(); }
25306 # 442 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_map.h" 3
25307 mapped_type&
25308 operator[](const key_type& __k)
25309 {
25310
25311
25312
25313 iterator __i = lower_bound(__k);
25314
25315 if (__i == end() || key_comp()(__k, (*__i).first))
25316 __i = insert(__i, value_type(__k, mapped_type()));
25317 return (*__i).second;
25318 }
25319 # 464 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_map.h" 3
25320 mapped_type&
25321 at(const key_type& __k)
25322 {
25323 iterator __i = lower_bound(__k);
25324 if (__i == end() || key_comp()(__k, (*__i).first))
25325 __throw_out_of_range(("map::at"));
25326 return (*__i).second;
25327 }
25328
25329 const mapped_type&
25330 at(const key_type& __k) const
25331 {
25332 const_iterator __i = lower_bound(__k);
25333 if (__i == end() || key_comp()(__k, (*__i).first))
25334 __throw_out_of_range(("map::at"));
25335 return (*__i).second;
25336 }
25337 # 499 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_map.h" 3
25338 std::pair<iterator, bool>
25339 insert(const value_type& __x)
25340 { return _M_t._M_insert_unique(__x); }
25341 # 539 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_map.h" 3
25342 iterator
25343 insert(iterator __position, const value_type& __x)
25344 { return _M_t._M_insert_unique_(__position, __x); }
25345 # 551 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_map.h" 3
25346 template<typename _InputIterator>
25347 void
25348 insert(_InputIterator __first, _InputIterator __last)
25349 { _M_t._M_insert_unique(__first, __last); }
25350 # 586 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_map.h" 3
25351 void
25352 erase(iterator __position)
25353 { _M_t.erase(__position); }
25354 # 602 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_map.h" 3
25355 size_type
25356 erase(const key_type& __x)
25357 { return _M_t.erase(__x); }
25358 # 636 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_map.h" 3
25359 void
25360 erase(iterator __first, iterator __last)
25361 { _M_t.erase(__first, __last); }
25362 # 652 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_map.h" 3
25363 void
25364 swap(map& __x)
25365 { _M_t.swap(__x._M_t); }
25366
25367
25368
25369
25370
25371
25372
25373 void
25374 clear()
25375 { _M_t.clear(); }
25376
25377
25378
25379
25380
25381
25382 key_compare
25383 key_comp() const
25384 { return _M_t.key_comp(); }
25385
25386
25387
25388
25389
25390 value_compare
25391 value_comp() const
25392 { return value_compare(_M_t.key_comp()); }
25393 # 695 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_map.h" 3
25394 iterator
25395 find(const key_type& __x)
25396 { return _M_t.find(__x); }
25397 # 710 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_map.h" 3
25398 const_iterator
25399 find(const key_type& __x) const
25400 { return _M_t.find(__x); }
25401 # 722 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_map.h" 3
25402 size_type
25403 count(const key_type& __x) const
25404 { return _M_t.find(__x) == _M_t.end() ? 0 : 1; }
25405 # 737 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_map.h" 3
25406 iterator
25407 lower_bound(const key_type& __x)
25408 { return _M_t.lower_bound(__x); }
25409 # 752 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_map.h" 3
25410 const_iterator
25411 lower_bound(const key_type& __x) const
25412 { return _M_t.lower_bound(__x); }
25413
25414
25415
25416
25417
25418
25419
25420 iterator
25421 upper_bound(const key_type& __x)
25422 { return _M_t.upper_bound(__x); }
25423
25424
25425
25426
25427
25428
25429
25430 const_iterator
25431 upper_bound(const key_type& __x) const
25432 { return _M_t.upper_bound(__x); }
25433 # 791 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_map.h" 3
25434 std::pair<iterator, iterator>
25435 equal_range(const key_type& __x)
25436 { return _M_t.equal_range(__x); }
25437 # 810 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_map.h" 3
25438 std::pair<const_iterator, const_iterator>
25439 equal_range(const key_type& __x) const
25440 { return _M_t.equal_range(__x); }
25441
25442 template<typename _K1, typename _T1, typename _C1, typename _A1>
25443 friend bool
25444 operator==(const map<_K1, _T1, _C1, _A1>&,
25445 const map<_K1, _T1, _C1, _A1>&);
25446
25447 template<typename _K1, typename _T1, typename _C1, typename _A1>
25448 friend bool
25449 operator<(const map<_K1, _T1, _C1, _A1>&,
25450 const map<_K1, _T1, _C1, _A1>&);
25451 };
25452 # 835 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_map.h" 3
25453 template<typename _Key, typename _Tp, typename _Compare, typename _Alloc>
25454 inline bool
25455 operator==(const map<_Key, _Tp, _Compare, _Alloc>& __x,
25456 const map<_Key, _Tp, _Compare, _Alloc>& __y)
25457 { return __x._M_t == __y._M_t; }
25458 # 852 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_map.h" 3
25459 template<typename _Key, typename _Tp, typename _Compare, typename _Alloc>
25460 inline bool
25461 operator<(const map<_Key, _Tp, _Compare, _Alloc>& __x,
25462 const map<_Key, _Tp, _Compare, _Alloc>& __y)
25463 { return __x._M_t < __y._M_t; }
25464
25465
25466 template<typename _Key, typename _Tp, typename _Compare, typename _Alloc>
25467 inline bool
25468 operator!=(const map<_Key, _Tp, _Compare, _Alloc>& __x,
25469 const map<_Key, _Tp, _Compare, _Alloc>& __y)
25470 { return !(__x == __y); }
25471
25472
25473 template<typename _Key, typename _Tp, typename _Compare, typename _Alloc>
25474 inline bool
25475 operator>(const map<_Key, _Tp, _Compare, _Alloc>& __x,
25476 const map<_Key, _Tp, _Compare, _Alloc>& __y)
25477 { return __y < __x; }
25478
25479
25480 template<typename _Key, typename _Tp, typename _Compare, typename _Alloc>
25481 inline bool
25482 operator<=(const map<_Key, _Tp, _Compare, _Alloc>& __x,
25483 const map<_Key, _Tp, _Compare, _Alloc>& __y)
25484 { return !(__y < __x); }
25485
25486
25487 template<typename _Key, typename _Tp, typename _Compare, typename _Alloc>
25488 inline bool
25489 operator>=(const map<_Key, _Tp, _Compare, _Alloc>& __x,
25490 const map<_Key, _Tp, _Compare, _Alloc>& __y)
25491 { return !(__x < __y); }
25492
25493
25494 template<typename _Key, typename _Tp, typename _Compare, typename _Alloc>
25495 inline void
25496 swap(map<_Key, _Tp, _Compare, _Alloc>& __x,
25497 map<_Key, _Tp, _Compare, _Alloc>& __y)
25498 { __x.swap(__y); }
25499
25500 }
25501 # 62 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/map" 2 3
25502 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_multimap.h" 1 3
25503 # 58 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_multimap.h" 3
25504 #define _STL_MULTIMAP_H 1
25505
25506
25507
25508
25509 namespace std __attribute__ ((__visibility__ ("default"))) {
25510 # 83 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_multimap.h" 3
25511 template <typename _Key, typename _Tp,
25512 typename _Compare = std::less<_Key>,
25513 typename _Alloc = std::allocator<std::pair<const _Key, _Tp> > >
25514 class multimap
25515 {
25516 public:
25517 typedef _Key key_type;
25518 typedef _Tp mapped_type;
25519 typedef std::pair<const _Key, _Tp> value_type;
25520 typedef _Compare key_compare;
25521 typedef _Alloc allocator_type;
25522
25523 private:
25524
25525 typedef typename _Alloc::value_type _Alloc_value_type;
25526
25527
25528
25529
25530
25531 public:
25532 class value_compare
25533 : public std::binary_function<value_type, value_type, bool>
25534 {
25535 friend class multimap<_Key, _Tp, _Compare, _Alloc>;
25536 protected:
25537 _Compare comp;
25538
25539 value_compare(_Compare __c)
25540 : comp(__c) { }
25541
25542 public:
25543 bool operator()(const value_type& __x, const value_type& __y) const
25544 { return comp(__x.first, __y.first); }
25545 };
25546
25547 private:
25548
25549 typedef typename _Alloc::template rebind<value_type>::other
25550 _Pair_alloc_type;
25551
25552 typedef _Rb_tree<key_type, value_type, _Select1st<value_type>,
25553 key_compare, _Pair_alloc_type> _Rep_type;
25554
25555 _Rep_type _M_t;
25556
25557 public:
25558
25559
25560 typedef typename _Pair_alloc_type::pointer pointer;
25561 typedef typename _Pair_alloc_type::const_pointer const_pointer;
25562 typedef typename _Pair_alloc_type::reference reference;
25563 typedef typename _Pair_alloc_type::const_reference const_reference;
25564 typedef typename _Rep_type::iterator iterator;
25565 typedef typename _Rep_type::const_iterator const_iterator;
25566 typedef typename _Rep_type::size_type size_type;
25567 typedef typename _Rep_type::difference_type difference_type;
25568 typedef typename _Rep_type::reverse_iterator reverse_iterator;
25569 typedef typename _Rep_type::const_reverse_iterator const_reverse_iterator;
25570
25571
25572
25573
25574
25575
25576 multimap()
25577 : _M_t() { }
25578
25579
25580
25581
25582
25583
25584 explicit
25585 multimap(const _Compare& __comp,
25586 const allocator_type& __a = allocator_type())
25587 : _M_t(__comp, __a) { }
25588 # 168 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_multimap.h" 3
25589 multimap(const multimap& __x)
25590 : _M_t(__x._M_t) { }
25591 # 208 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_multimap.h" 3
25592 template<typename _InputIterator>
25593 multimap(_InputIterator __first, _InputIterator __last)
25594 : _M_t()
25595 { _M_t._M_insert_equal(__first, __last); }
25596 # 224 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_multimap.h" 3
25597 template<typename _InputIterator>
25598 multimap(_InputIterator __first, _InputIterator __last,
25599 const _Compare& __comp,
25600 const allocator_type& __a = allocator_type())
25601 : _M_t(__comp, __a)
25602 { _M_t._M_insert_equal(__first, __last); }
25603 # 247 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_multimap.h" 3
25604 multimap&
25605 operator=(const multimap& __x)
25606 {
25607 _M_t = __x._M_t;
25608 return *this;
25609 }
25610 # 293 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_multimap.h" 3
25611 allocator_type
25612 get_allocator() const
25613 { return _M_t.get_allocator(); }
25614
25615
25616
25617
25618
25619
25620
25621 iterator
25622 begin()
25623 { return _M_t.begin(); }
25624
25625
25626
25627
25628
25629
25630 const_iterator
25631 begin() const
25632 { return _M_t.begin(); }
25633
25634
25635
25636
25637
25638
25639 iterator
25640 end()
25641 { return _M_t.end(); }
25642
25643
25644
25645
25646
25647
25648 const_iterator
25649 end() const
25650 { return _M_t.end(); }
25651
25652
25653
25654
25655
25656
25657 reverse_iterator
25658 rbegin()
25659 { return _M_t.rbegin(); }
25660
25661
25662
25663
25664
25665
25666 const_reverse_iterator
25667 rbegin() const
25668 { return _M_t.rbegin(); }
25669
25670
25671
25672
25673
25674
25675 reverse_iterator
25676 rend()
25677 { return _M_t.rend(); }
25678
25679
25680
25681
25682
25683
25684 const_reverse_iterator
25685 rend() const
25686 { return _M_t.rend(); }
25687 # 410 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_multimap.h" 3
25688 bool
25689 empty() const
25690 { return _M_t.empty(); }
25691
25692
25693 size_type
25694 size() const
25695 { return _M_t.size(); }
25696
25697
25698 size_type
25699 max_size() const
25700 { return _M_t.max_size(); }
25701 # 437 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_multimap.h" 3
25702 iterator
25703 insert(const value_type& __x)
25704 { return _M_t._M_insert_equal(__x); }
25705 # 461 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_multimap.h" 3
25706 iterator
25707 insert(iterator __position, const value_type& __x)
25708 { return _M_t._M_insert_equal_(__position, __x); }
25709 # 474 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_multimap.h" 3
25710 template<typename _InputIterator>
25711 void
25712 insert(_InputIterator __first, _InputIterator __last)
25713 { _M_t._M_insert_equal(__first, __last); }
25714 # 522 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_multimap.h" 3
25715 void
25716 erase(iterator __position)
25717 { _M_t.erase(__position); }
25718 # 538 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_multimap.h" 3
25719 size_type
25720 erase(const key_type& __x)
25721 { return _M_t.erase(__x); }
25722 # 574 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_multimap.h" 3
25723 void
25724 erase(iterator __first, iterator __last)
25725 { _M_t.erase(__first, __last); }
25726 # 590 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_multimap.h" 3
25727 void
25728 swap(multimap& __x)
25729 { _M_t.swap(__x._M_t); }
25730
25731
25732
25733
25734
25735
25736
25737 void
25738 clear()
25739 { _M_t.clear(); }
25740
25741
25742
25743
25744
25745
25746 key_compare
25747 key_comp() const
25748 { return _M_t.key_comp(); }
25749
25750
25751
25752
25753
25754 value_compare
25755 value_comp() const
25756 { return value_compare(_M_t.key_comp()); }
25757 # 633 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_multimap.h" 3
25758 iterator
25759 find(const key_type& __x)
25760 { return _M_t.find(__x); }
25761 # 648 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_multimap.h" 3
25762 const_iterator
25763 find(const key_type& __x) const
25764 { return _M_t.find(__x); }
25765
25766
25767
25768
25769
25770
25771 size_type
25772 count(const key_type& __x) const
25773 { return _M_t.count(__x); }
25774 # 672 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_multimap.h" 3
25775 iterator
25776 lower_bound(const key_type& __x)
25777 { return _M_t.lower_bound(__x); }
25778 # 687 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_multimap.h" 3
25779 const_iterator
25780 lower_bound(const key_type& __x) const
25781 { return _M_t.lower_bound(__x); }
25782
25783
25784
25785
25786
25787
25788
25789 iterator
25790 upper_bound(const key_type& __x)
25791 { return _M_t.upper_bound(__x); }
25792
25793
25794
25795
25796
25797
25798
25799 const_iterator
25800 upper_bound(const key_type& __x) const
25801 { return _M_t.upper_bound(__x); }
25802 # 724 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_multimap.h" 3
25803 std::pair<iterator, iterator>
25804 equal_range(const key_type& __x)
25805 { return _M_t.equal_range(__x); }
25806 # 741 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_multimap.h" 3
25807 std::pair<const_iterator, const_iterator>
25808 equal_range(const key_type& __x) const
25809 { return _M_t.equal_range(__x); }
25810
25811 template<typename _K1, typename _T1, typename _C1, typename _A1>
25812 friend bool
25813 operator==(const multimap<_K1, _T1, _C1, _A1>&,
25814 const multimap<_K1, _T1, _C1, _A1>&);
25815
25816 template<typename _K1, typename _T1, typename _C1, typename _A1>
25817 friend bool
25818 operator<(const multimap<_K1, _T1, _C1, _A1>&,
25819 const multimap<_K1, _T1, _C1, _A1>&);
25820 };
25821 # 766 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_multimap.h" 3
25822 template<typename _Key, typename _Tp, typename _Compare, typename _Alloc>
25823 inline bool
25824 operator==(const multimap<_Key, _Tp, _Compare, _Alloc>& __x,
25825 const multimap<_Key, _Tp, _Compare, _Alloc>& __y)
25826 { return __x._M_t == __y._M_t; }
25827 # 783 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_multimap.h" 3
25828 template<typename _Key, typename _Tp, typename _Compare, typename _Alloc>
25829 inline bool
25830 operator<(const multimap<_Key, _Tp, _Compare, _Alloc>& __x,
25831 const multimap<_Key, _Tp, _Compare, _Alloc>& __y)
25832 { return __x._M_t < __y._M_t; }
25833
25834
25835 template<typename _Key, typename _Tp, typename _Compare, typename _Alloc>
25836 inline bool
25837 operator!=(const multimap<_Key, _Tp, _Compare, _Alloc>& __x,
25838 const multimap<_Key, _Tp, _Compare, _Alloc>& __y)
25839 { return !(__x == __y); }
25840
25841
25842 template<typename _Key, typename _Tp, typename _Compare, typename _Alloc>
25843 inline bool
25844 operator>(const multimap<_Key, _Tp, _Compare, _Alloc>& __x,
25845 const multimap<_Key, _Tp, _Compare, _Alloc>& __y)
25846 { return __y < __x; }
25847
25848
25849 template<typename _Key, typename _Tp, typename _Compare, typename _Alloc>
25850 inline bool
25851 operator<=(const multimap<_Key, _Tp, _Compare, _Alloc>& __x,
25852 const multimap<_Key, _Tp, _Compare, _Alloc>& __y)
25853 { return !(__y < __x); }
25854
25855
25856 template<typename _Key, typename _Tp, typename _Compare, typename _Alloc>
25857 inline bool
25858 operator>=(const multimap<_Key, _Tp, _Compare, _Alloc>& __x,
25859 const multimap<_Key, _Tp, _Compare, _Alloc>& __y)
25860 { return !(__x < __y); }
25861
25862
25863 template<typename _Key, typename _Tp, typename _Compare, typename _Alloc>
25864 inline void
25865 swap(multimap<_Key, _Tp, _Compare, _Alloc>& __x,
25866 multimap<_Key, _Tp, _Compare, _Alloc>& __y)
25867 { __x.swap(__y); }
25868
25869 }
25870 # 63 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/map" 2 3
25871 # 34 "../fwbuilder/FWObject.h" 2
25872 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/set" 1 3
25873 # 56 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/set" 3
25874 #define _GLIBCXX_SET 1
25875
25876
25877 # 59 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/set" 3
25878
25879
25880 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_set.h" 1 3
25881 # 58 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_set.h" 3
25882 #define _STL_SET_H 1
25883
25884
25885
25886
25887 namespace std __attribute__ ((__visibility__ ("default"))) {
25888 # 85 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_set.h" 3
25889 template<typename _Key, typename _Compare = std::less<_Key>,
25890 typename _Alloc = std::allocator<_Key> >
25891 class set
25892 {
25893
25894 typedef typename _Alloc::value_type _Alloc_value_type;
25895
25896
25897
25898
25899
25900 public:
25901
25902
25903
25904 typedef _Key key_type;
25905 typedef _Key value_type;
25906 typedef _Compare key_compare;
25907 typedef _Compare value_compare;
25908 typedef _Alloc allocator_type;
25909
25910
25911 private:
25912 typedef typename _Alloc::template rebind<_Key>::other _Key_alloc_type;
25913
25914 typedef _Rb_tree<key_type, value_type, _Identity<value_type>,
25915 key_compare, _Key_alloc_type> _Rep_type;
25916 _Rep_type _M_t;
25917
25918 public:
25919
25920
25921 typedef typename _Key_alloc_type::pointer pointer;
25922 typedef typename _Key_alloc_type::const_pointer const_pointer;
25923 typedef typename _Key_alloc_type::reference reference;
25924 typedef typename _Key_alloc_type::const_reference const_reference;
25925
25926
25927
25928 typedef typename _Rep_type::const_iterator iterator;
25929 typedef typename _Rep_type::const_iterator const_iterator;
25930 typedef typename _Rep_type::const_reverse_iterator reverse_iterator;
25931 typedef typename _Rep_type::const_reverse_iterator const_reverse_iterator;
25932 typedef typename _Rep_type::size_type size_type;
25933 typedef typename _Rep_type::difference_type difference_type;
25934
25935
25936
25937
25938
25939
25940 set()
25941 : _M_t() { }
25942
25943
25944
25945
25946
25947
25948 explicit
25949 set(const _Compare& __comp,
25950 const allocator_type& __a = allocator_type())
25951 : _M_t(__comp, __a) { }
25952 # 158 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_set.h" 3
25953 template<typename _InputIterator>
25954 set(_InputIterator __first, _InputIterator __last)
25955 : _M_t()
25956 { _M_t._M_insert_unique(__first, __last); }
25957 # 174 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_set.h" 3
25958 template<typename _InputIterator>
25959 set(_InputIterator __first, _InputIterator __last,
25960 const _Compare& __comp,
25961 const allocator_type& __a = allocator_type())
25962 : _M_t(__comp, __a)
25963 { _M_t._M_insert_unique(__first, __last); }
25964 # 188 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_set.h" 3
25965 set(const set& __x)
25966 : _M_t(__x._M_t) { }
25967 # 226 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_set.h" 3
25968 set&
25969 operator=(const set& __x)
25970 {
25971 _M_t = __x._M_t;
25972 return *this;
25973 }
25974 # 274 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_set.h" 3
25975 key_compare
25976 key_comp() const
25977 { return _M_t.key_comp(); }
25978
25979 value_compare
25980 value_comp() const
25981 { return _M_t.key_comp(); }
25982
25983 allocator_type
25984 get_allocator() const
25985 { return _M_t.get_allocator(); }
25986
25987
25988
25989
25990
25991
25992 iterator
25993 begin() const
25994 { return _M_t.begin(); }
25995
25996
25997
25998
25999
26000
26001 iterator
26002 end() const
26003 { return _M_t.end(); }
26004
26005
26006
26007
26008
26009
26010 reverse_iterator
26011 rbegin() const
26012 { return _M_t.rbegin(); }
26013
26014
26015
26016
26017
26018
26019 reverse_iterator
26020 rend() const
26021 { return _M_t.rend(); }
26022 # 361 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_set.h" 3
26023 bool
26024 empty() const
26025 { return _M_t.empty(); }
26026
26027
26028 size_type
26029 size() const
26030 { return _M_t.size(); }
26031
26032
26033 size_type
26034 max_size() const
26035 { return _M_t.max_size(); }
26036 # 386 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_set.h" 3
26037 void
26038 swap(set& __x)
26039 { _M_t.swap(__x._M_t); }
26040 # 404 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_set.h" 3
26041 std::pair<iterator, bool>
26042 insert(const value_type& __x)
26043 {
26044 std::pair<typename _Rep_type::iterator, bool> __p =
26045 _M_t._M_insert_unique(__x);
26046 return std::pair<iterator, bool>(__p.first, __p.second);
26047 }
26048 # 431 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_set.h" 3
26049 iterator
26050 insert(iterator __position, const value_type& __x)
26051 { return _M_t._M_insert_unique_(__position, __x); }
26052 # 444 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_set.h" 3
26053 template<typename _InputIterator>
26054 void
26055 insert(_InputIterator __first, _InputIterator __last)
26056 { _M_t._M_insert_unique(__first, __last); }
26057 # 490 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_set.h" 3
26058 void
26059 erase(iterator __position)
26060 { _M_t.erase(__position); }
26061 # 506 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_set.h" 3
26062 size_type
26063 erase(const key_type& __x)
26064 { return _M_t.erase(__x); }
26065 # 540 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_set.h" 3
26066 void
26067 erase(iterator __first, iterator __last)
26068 { _M_t.erase(__first, __last); }
26069 # 551 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_set.h" 3
26070 void
26071 clear()
26072 { _M_t.clear(); }
26073 # 565 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_set.h" 3
26074 size_type
26075 count(const key_type& __x) const
26076 { return _M_t.find(__x) == _M_t.end() ? 0 : 1; }
26077 # 583 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_set.h" 3
26078 iterator
26079 find(const key_type& __x)
26080 { return _M_t.find(__x); }
26081
26082 const_iterator
26083 find(const key_type& __x) const
26084 { return _M_t.find(__x); }
26085 # 604 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_set.h" 3
26086 iterator
26087 lower_bound(const key_type& __x)
26088 { return _M_t.lower_bound(__x); }
26089
26090 const_iterator
26091 lower_bound(const key_type& __x) const
26092 { return _M_t.lower_bound(__x); }
26093 # 620 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_set.h" 3
26094 iterator
26095 upper_bound(const key_type& __x)
26096 { return _M_t.upper_bound(__x); }
26097
26098 const_iterator
26099 upper_bound(const key_type& __x) const
26100 { return _M_t.upper_bound(__x); }
26101 # 645 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_set.h" 3
26102 std::pair<iterator, iterator>
26103 equal_range(const key_type& __x)
26104 { return _M_t.equal_range(__x); }
26105
26106 std::pair<const_iterator, const_iterator>
26107 equal_range(const key_type& __x) const
26108 { return _M_t.equal_range(__x); }
26109
26110
26111 template<typename _K1, typename _C1, typename _A1>
26112 friend bool
26113 operator==(const set<_K1, _C1, _A1>&, const set<_K1, _C1, _A1>&);
26114
26115 template<typename _K1, typename _C1, typename _A1>
26116 friend bool
26117 operator<(const set<_K1, _C1, _A1>&, const set<_K1, _C1, _A1>&);
26118 };
26119 # 674 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_set.h" 3
26120 template<typename _Key, typename _Compare, typename _Alloc>
26121 inline bool
26122 operator==(const set<_Key, _Compare, _Alloc>& __x,
26123 const set<_Key, _Compare, _Alloc>& __y)
26124 { return __x._M_t == __y._M_t; }
26125 # 691 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_set.h" 3
26126 template<typename _Key, typename _Compare, typename _Alloc>
26127 inline bool
26128 operator<(const set<_Key, _Compare, _Alloc>& __x,
26129 const set<_Key, _Compare, _Alloc>& __y)
26130 { return __x._M_t < __y._M_t; }
26131
26132
26133 template<typename _Key, typename _Compare, typename _Alloc>
26134 inline bool
26135 operator!=(const set<_Key, _Compare, _Alloc>& __x,
26136 const set<_Key, _Compare, _Alloc>& __y)
26137 { return !(__x == __y); }
26138
26139
26140 template<typename _Key, typename _Compare, typename _Alloc>
26141 inline bool
26142 operator>(const set<_Key, _Compare, _Alloc>& __x,
26143 const set<_Key, _Compare, _Alloc>& __y)
26144 { return __y < __x; }
26145
26146
26147 template<typename _Key, typename _Compare, typename _Alloc>
26148 inline bool
26149 operator<=(const set<_Key, _Compare, _Alloc>& __x,
26150 const set<_Key, _Compare, _Alloc>& __y)
26151 { return !(__y < __x); }
26152
26153
26154 template<typename _Key, typename _Compare, typename _Alloc>
26155 inline bool
26156 operator>=(const set<_Key, _Compare, _Alloc>& __x,
26157 const set<_Key, _Compare, _Alloc>& __y)
26158 { return !(__x < __y); }
26159
26160
26161 template<typename _Key, typename _Compare, typename _Alloc>
26162 inline void
26163 swap(set<_Key, _Compare, _Alloc>& __x, set<_Key, _Compare, _Alloc>& __y)
26164 { __x.swap(__y); }
26165
26166 }
26167 # 62 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/set" 2 3
26168 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_multiset.h" 1 3
26169 # 58 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_multiset.h" 3
26170 #define _STL_MULTISET_H 1
26171
26172
26173
26174
26175 namespace std __attribute__ ((__visibility__ ("default"))) {
26176 # 82 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_multiset.h" 3
26177 template <typename _Key, typename _Compare = std::less<_Key>,
26178 typename _Alloc = std::allocator<_Key> >
26179 class multiset
26180 {
26181
26182 typedef typename _Alloc::value_type _Alloc_value_type;
26183
26184
26185
26186
26187
26188 public:
26189
26190 typedef _Key key_type;
26191 typedef _Key value_type;
26192 typedef _Compare key_compare;
26193 typedef _Compare value_compare;
26194 typedef _Alloc allocator_type;
26195
26196 private:
26197
26198 typedef typename _Alloc::template rebind<_Key>::other _Key_alloc_type;
26199
26200 typedef _Rb_tree<key_type, value_type, _Identity<value_type>,
26201 key_compare, _Key_alloc_type> _Rep_type;
26202
26203 _Rep_type _M_t;
26204
26205 public:
26206 typedef typename _Key_alloc_type::pointer pointer;
26207 typedef typename _Key_alloc_type::const_pointer const_pointer;
26208 typedef typename _Key_alloc_type::reference reference;
26209 typedef typename _Key_alloc_type::const_reference const_reference;
26210
26211
26212
26213 typedef typename _Rep_type::const_iterator iterator;
26214 typedef typename _Rep_type::const_iterator const_iterator;
26215 typedef typename _Rep_type::const_reverse_iterator reverse_iterator;
26216 typedef typename _Rep_type::const_reverse_iterator const_reverse_iterator;
26217 typedef typename _Rep_type::size_type size_type;
26218 typedef typename _Rep_type::difference_type difference_type;
26219
26220
26221
26222
26223
26224 multiset()
26225 : _M_t() { }
26226
26227
26228
26229
26230
26231
26232 explicit
26233 multiset(const _Compare& __comp,
26234 const allocator_type& __a = allocator_type())
26235 : _M_t(__comp, __a) { }
26236 # 151 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_multiset.h" 3
26237 template<typename _InputIterator>
26238 multiset(_InputIterator __first, _InputIterator __last)
26239 : _M_t()
26240 { _M_t._M_insert_equal(__first, __last); }
26241 # 167 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_multiset.h" 3
26242 template<typename _InputIterator>
26243 multiset(_InputIterator __first, _InputIterator __last,
26244 const _Compare& __comp,
26245 const allocator_type& __a = allocator_type())
26246 : _M_t(__comp, __a)
26247 { _M_t._M_insert_equal(__first, __last); }
26248 # 181 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_multiset.h" 3
26249 multiset(const multiset& __x)
26250 : _M_t(__x._M_t) { }
26251 # 219 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_multiset.h" 3
26252 multiset&
26253 operator=(const multiset& __x)
26254 {
26255 _M_t = __x._M_t;
26256 return *this;
26257 }
26258 # 267 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_multiset.h" 3
26259 key_compare
26260 key_comp() const
26261 { return _M_t.key_comp(); }
26262
26263 value_compare
26264 value_comp() const
26265 { return _M_t.key_comp(); }
26266
26267 allocator_type
26268 get_allocator() const
26269 { return _M_t.get_allocator(); }
26270
26271
26272
26273
26274
26275
26276 iterator
26277 begin() const
26278 { return _M_t.begin(); }
26279
26280
26281
26282
26283
26284
26285 iterator
26286 end() const
26287 { return _M_t.end(); }
26288
26289
26290
26291
26292
26293
26294 reverse_iterator
26295 rbegin() const
26296 { return _M_t.rbegin(); }
26297
26298
26299
26300
26301
26302
26303 reverse_iterator
26304 rend() const
26305 { return _M_t.rend(); }
26306 # 354 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_multiset.h" 3
26307 bool
26308 empty() const
26309 { return _M_t.empty(); }
26310
26311
26312 size_type
26313 size() const
26314 { return _M_t.size(); }
26315
26316
26317 size_type
26318 max_size() const
26319 { return _M_t.max_size(); }
26320 # 379 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_multiset.h" 3
26321 void
26322 swap(multiset& __x)
26323 { _M_t.swap(__x._M_t); }
26324 # 395 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_multiset.h" 3
26325 iterator
26326 insert(const value_type& __x)
26327 { return _M_t._M_insert_equal(__x); }
26328 # 419 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_multiset.h" 3
26329 iterator
26330 insert(iterator __position, const value_type& __x)
26331 { return _M_t._M_insert_equal_(__position, __x); }
26332 # 431 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_multiset.h" 3
26333 template<typename _InputIterator>
26334 void
26335 insert(_InputIterator __first, _InputIterator __last)
26336 { _M_t._M_insert_equal(__first, __last); }
26337 # 479 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_multiset.h" 3
26338 void
26339 erase(iterator __position)
26340 { _M_t.erase(__position); }
26341 # 495 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_multiset.h" 3
26342 size_type
26343 erase(const key_type& __x)
26344 { return _M_t.erase(__x); }
26345 # 529 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_multiset.h" 3
26346 void
26347 erase(iterator __first, iterator __last)
26348 { _M_t.erase(__first, __last); }
26349 # 540 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_multiset.h" 3
26350 void
26351 clear()
26352 { _M_t.clear(); }
26353 # 551 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_multiset.h" 3
26354 size_type
26355 count(const key_type& __x) const
26356 { return _M_t.count(__x); }
26357 # 569 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_multiset.h" 3
26358 iterator
26359 find(const key_type& __x)
26360 { return _M_t.find(__x); }
26361
26362 const_iterator
26363 find(const key_type& __x) const
26364 { return _M_t.find(__x); }
26365 # 590 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_multiset.h" 3
26366 iterator
26367 lower_bound(const key_type& __x)
26368 { return _M_t.lower_bound(__x); }
26369
26370 const_iterator
26371 lower_bound(const key_type& __x) const
26372 { return _M_t.lower_bound(__x); }
26373 # 606 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_multiset.h" 3
26374 iterator
26375 upper_bound(const key_type& __x)
26376 { return _M_t.upper_bound(__x); }
26377
26378 const_iterator
26379 upper_bound(const key_type& __x) const
26380 { return _M_t.upper_bound(__x); }
26381 # 631 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_multiset.h" 3
26382 std::pair<iterator, iterator>
26383 equal_range(const key_type& __x)
26384 { return _M_t.equal_range(__x); }
26385
26386 std::pair<const_iterator, const_iterator>
26387 equal_range(const key_type& __x) const
26388 { return _M_t.equal_range(__x); }
26389
26390 template<typename _K1, typename _C1, typename _A1>
26391 friend bool
26392 operator==(const multiset<_K1, _C1, _A1>&,
26393 const multiset<_K1, _C1, _A1>&);
26394
26395 template<typename _K1, typename _C1, typename _A1>
26396 friend bool
26397 operator< (const multiset<_K1, _C1, _A1>&,
26398 const multiset<_K1, _C1, _A1>&);
26399 };
26400 # 661 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_multiset.h" 3
26401 template<typename _Key, typename _Compare, typename _Alloc>
26402 inline bool
26403 operator==(const multiset<_Key, _Compare, _Alloc>& __x,
26404 const multiset<_Key, _Compare, _Alloc>& __y)
26405 { return __x._M_t == __y._M_t; }
26406 # 678 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_multiset.h" 3
26407 template<typename _Key, typename _Compare, typename _Alloc>
26408 inline bool
26409 operator<(const multiset<_Key, _Compare, _Alloc>& __x,
26410 const multiset<_Key, _Compare, _Alloc>& __y)
26411 { return __x._M_t < __y._M_t; }
26412
26413
26414 template<typename _Key, typename _Compare, typename _Alloc>
26415 inline bool
26416 operator!=(const multiset<_Key, _Compare, _Alloc>& __x,
26417 const multiset<_Key, _Compare, _Alloc>& __y)
26418 { return !(__x == __y); }
26419
26420
26421 template<typename _Key, typename _Compare, typename _Alloc>
26422 inline bool
26423 operator>(const multiset<_Key,_Compare,_Alloc>& __x,
26424 const multiset<_Key,_Compare,_Alloc>& __y)
26425 { return __y < __x; }
26426
26427
26428 template<typename _Key, typename _Compare, typename _Alloc>
26429 inline bool
26430 operator<=(const multiset<_Key, _Compare, _Alloc>& __x,
26431 const multiset<_Key, _Compare, _Alloc>& __y)
26432 { return !(__y < __x); }
26433
26434
26435 template<typename _Key, typename _Compare, typename _Alloc>
26436 inline bool
26437 operator>=(const multiset<_Key, _Compare, _Alloc>& __x,
26438 const multiset<_Key, _Compare, _Alloc>& __y)
26439 { return !(__x < __y); }
26440
26441
26442 template<typename _Key, typename _Compare, typename _Alloc>
26443 inline void
26444 swap(multiset<_Key, _Compare, _Alloc>& __x,
26445 multiset<_Key, _Compare, _Alloc>& __y)
26446 { __x.swap(__y); }
26447
26448 }
26449 # 63 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/set" 2 3
26450 # 35 "../fwbuilder/FWObject.h" 2
26451
26452 # 1 "/usr/include/libxml2/libxml/parser.h" 1
26453 # 11 "/usr/include/libxml2/libxml/parser.h"
26454 #define __XML_PARSER_H__
26455
26456 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stdarg.h" 1 3 4
26457 # 31 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stdarg.h" 3 4
26458 #define _STDARG_H
26459 #define _ANSI_STDARG_H_
26460
26461 #undef __need___va_list
26462 # 47 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stdarg.h" 3 4
26463 #define va_start(v,l) __builtin_va_start(v,l)
26464 #define va_end(v) __builtin_va_end(v)
26465 #define va_arg(v,l) __builtin_va_arg(v,l)
26466
26467 #define va_copy(d,s) __builtin_va_copy(d,s)
26468
26469 #define __va_copy(d,s) __builtin_va_copy(d,s)
26470 # 102 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stdarg.h" 3 4
26471 typedef __gnuc_va_list va_list;
26472
26473
26474
26475
26476
26477 #define _VA_LIST_
26478
26479
26480 #define _VA_LIST
26481
26482
26483 #define _VA_LIST_DEFINED
26484
26485
26486 #define _VA_LIST_T_H
26487
26488
26489 #define __va_list__
26490 # 14 "/usr/include/libxml2/libxml/parser.h" 2
26491
26492 # 1 "/usr/include/libxml2/libxml/xmlversion.h" 1
26493 # 11 "/usr/include/libxml2/libxml/xmlversion.h"
26494 #define __XML_VERSION_H__
26495
26496 # 1 "/usr/include/libxml2/libxml/xmlexports.h" 1
26497 # 11 "/usr/include/libxml2/libxml/xmlexports.h"
26498 #define __XML_EXPORTS_H__
26499 # 30 "/usr/include/libxml2/libxml/xmlexports.h"
26500 #define XMLPUBFUN
26501
26502
26503
26504
26505
26506 #define XMLPUBVAR extern
26507
26508
26509
26510
26511
26512 #define XMLCALL
26513
26514
26515
26516
26517
26518
26519 #define XMLCDECL
26520 # 157 "/usr/include/libxml2/libxml/xmlexports.h"
26521 #define LIBXML_DLL_IMPORT XMLPUBVAR
26522 # 14 "/usr/include/libxml2/libxml/xmlversion.h" 2
26523
26524
26525 extern "C" {
26526
26527
26528
26529
26530
26531
26532
26533 void xmlCheckVersion(int version);
26534
26535
26536
26537
26538
26539
26540
26541 #define LIBXML_DOTTED_VERSION "2.7.8"
26542
26543
26544
26545
26546
26547
26548 #define LIBXML_VERSION 20708
26549
26550
26551
26552
26553
26554
26555 #define LIBXML_VERSION_STRING "20708"
26556
26557
26558
26559
26560
26561
26562 #define LIBXML_VERSION_EXTRA ""
26563
26564
26565
26566
26567
26568
26569
26570 #define LIBXML_TEST_VERSION xmlCheckVersion(20708);
26571 # 77 "/usr/include/libxml2/libxml/xmlversion.h"
26572 #define WITHOUT_TRIO
26573 # 96 "/usr/include/libxml2/libxml/xmlversion.h"
26574 #define LIBXML_THREAD_ENABLED
26575 # 106 "/usr/include/libxml2/libxml/xmlversion.h"
26576 #define LIBXML_TREE_ENABLED
26577 # 115 "/usr/include/libxml2/libxml/xmlversion.h"
26578 #define LIBXML_OUTPUT_ENABLED
26579 # 124 "/usr/include/libxml2/libxml/xmlversion.h"
26580 #define LIBXML_PUSH_ENABLED
26581 # 133 "/usr/include/libxml2/libxml/xmlversion.h"
26582 #define LIBXML_READER_ENABLED
26583 # 142 "/usr/include/libxml2/libxml/xmlversion.h"
26584 #define LIBXML_PATTERN_ENABLED
26585 # 151 "/usr/include/libxml2/libxml/xmlversion.h"
26586 #define LIBXML_WRITER_ENABLED
26587 # 160 "/usr/include/libxml2/libxml/xmlversion.h"
26588 #define LIBXML_SAX1_ENABLED
26589 # 169 "/usr/include/libxml2/libxml/xmlversion.h"
26590 #define LIBXML_FTP_ENABLED
26591 # 178 "/usr/include/libxml2/libxml/xmlversion.h"
26592 #define LIBXML_HTTP_ENABLED
26593 # 187 "/usr/include/libxml2/libxml/xmlversion.h"
26594 #define LIBXML_VALID_ENABLED
26595 # 196 "/usr/include/libxml2/libxml/xmlversion.h"
26596 #define LIBXML_HTML_ENABLED
26597 # 205 "/usr/include/libxml2/libxml/xmlversion.h"
26598 #define LIBXML_LEGACY_ENABLED
26599 # 214 "/usr/include/libxml2/libxml/xmlversion.h"
26600 #define LIBXML_C14N_ENABLED
26601 # 223 "/usr/include/libxml2/libxml/xmlversion.h"
26602 #define LIBXML_CATALOG_ENABLED
26603 # 232 "/usr/include/libxml2/libxml/xmlversion.h"
26604 #define LIBXML_DOCB_ENABLED
26605 # 241 "/usr/include/libxml2/libxml/xmlversion.h"
26606 #define LIBXML_XPATH_ENABLED
26607 # 250 "/usr/include/libxml2/libxml/xmlversion.h"
26608 #define LIBXML_XPTR_ENABLED
26609 # 259 "/usr/include/libxml2/libxml/xmlversion.h"
26610 #define LIBXML_XINCLUDE_ENABLED
26611 # 268 "/usr/include/libxml2/libxml/xmlversion.h"
26612 #define LIBXML_ICONV_ENABLED
26613 # 277 "/usr/include/libxml2/libxml/xmlversion.h"
26614 #define LIBXML_ICU_ENABLED
26615 # 286 "/usr/include/libxml2/libxml/xmlversion.h"
26616 #define LIBXML_ISO8859X_ENABLED
26617 # 295 "/usr/include/libxml2/libxml/xmlversion.h"
26618 #define LIBXML_DEBUG_ENABLED
26619 # 322 "/usr/include/libxml2/libxml/xmlversion.h"
26620 #define LIBXML_UNICODE_ENABLED
26621 # 331 "/usr/include/libxml2/libxml/xmlversion.h"
26622 #define LIBXML_REGEXP_ENABLED
26623 # 340 "/usr/include/libxml2/libxml/xmlversion.h"
26624 #define LIBXML_AUTOMATA_ENABLED
26625 # 349 "/usr/include/libxml2/libxml/xmlversion.h"
26626 #define LIBXML_EXPR_ENABLED
26627 # 358 "/usr/include/libxml2/libxml/xmlversion.h"
26628 #define LIBXML_SCHEMAS_ENABLED
26629 # 367 "/usr/include/libxml2/libxml/xmlversion.h"
26630 #define LIBXML_SCHEMATRON_ENABLED
26631 # 376 "/usr/include/libxml2/libxml/xmlversion.h"
26632 #define LIBXML_MODULES_ENABLED
26633
26634
26635
26636
26637
26638 #define LIBXML_MODULE_EXTENSION ".so"
26639 # 391 "/usr/include/libxml2/libxml/xmlversion.h"
26640 #define LIBXML_ZLIB_ENABLED
26641 # 406 "/usr/include/libxml2/libxml/xmlversion.h"
26642 #define ATTRIBUTE_UNUSED __attribute__((unused))
26643 # 417 "/usr/include/libxml2/libxml/xmlversion.h"
26644 #define LIBXML_ATTR_ALLOC_SIZE(x) __attribute__((alloc_size(x)))
26645 # 433 "/usr/include/libxml2/libxml/xmlversion.h"
26646 #define LIBXML_ATTR_FORMAT(fmt,args) __attribute__((__format__(__printf__,fmt,args)))
26647 # 463 "/usr/include/libxml2/libxml/xmlversion.h"
26648 }
26649 # 16 "/usr/include/libxml2/libxml/parser.h" 2
26650 # 1 "/usr/include/libxml2/libxml/tree.h" 1
26651 # 13 "/usr/include/libxml2/libxml/tree.h"
26652 #define __XML_TREE_H__
26653
26654 # 1 "/usr/include/stdio.h" 1 3 4
26655 # 27 "/usr/include/stdio.h" 3 4
26656 #define _STDIO_H 1
26657
26658
26659 extern "C" {
26660
26661 #define __need_size_t
26662 #define __need_NULL
26663 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 1 3 4
26664 # 160 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 3 4
26665 #undef __need_ptrdiff_t
26666 # 233 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 3 4
26667 #undef __need_size_t
26668 # 342 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 3 4
26669 #undef __need_wchar_t
26670 # 395 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 3 4
26671 #undef NULL
26672
26673 #define NULL __null
26674 # 406 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 3 4
26675 #undef __need_NULL
26676
26677
26678
26679
26680 #define offsetof(TYPE,MEMBER) __builtin_offsetof (TYPE, MEMBER)
26681 # 35 "/usr/include/stdio.h" 2 3 4
26682
26683
26684 #define __need_FILE
26685 #define __need___FILE
26686 # 59 "/usr/include/stdio.h" 3 4
26687 #undef __need_FILE
26688 # 69 "/usr/include/stdio.h" 3 4
26689 #undef __need___FILE
26690
26691
26692
26693 #define _STDIO_USES_IOSTREAM
26694
26695 # 1 "/usr/include/libio.h" 1 3 4
26696 # 30 "/usr/include/libio.h" 3 4
26697 #define _IO_STDIO_H
26698
26699 # 1 "/usr/include/_G_config.h" 1 3 4
26700
26701
26702
26703
26704 #define _G_config_h 1
26705
26706
26707
26708
26709 #define __need_size_t
26710
26711
26712
26713 #define __need_NULL
26714 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 1 3 4
26715 # 160 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 3 4
26716 #undef __need_ptrdiff_t
26717 # 233 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 3 4
26718 #undef __need_size_t
26719 # 342 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 3 4
26720 #undef __need_wchar_t
26721 # 395 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 3 4
26722 #undef NULL
26723
26724 #define NULL __null
26725 # 406 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 3 4
26726 #undef __need_NULL
26727
26728
26729
26730
26731 #define offsetof(TYPE,MEMBER) __builtin_offsetof (TYPE, MEMBER)
26732 # 16 "/usr/include/_G_config.h" 2 3 4
26733 #define __need_mbstate_t
26734
26735
26736
26737 # 1 "/usr/include/wchar.h" 1 3 4
26738 # 896 "/usr/include/wchar.h" 3 4
26739 #undef __need_mbstate_t
26740 #undef __need_wint_t
26741 # 21 "/usr/include/_G_config.h" 2 3 4
26742 #define _G_size_t size_t
26743 typedef struct
26744 {
26745 __off_t __pos;
26746 __mbstate_t __state;
26747 } _G_fpos_t;
26748 typedef struct
26749 {
26750 __off64_t __pos;
26751 __mbstate_t __state;
26752 } _G_fpos64_t;
26753 #define _G_ssize_t __ssize_t
26754 #define _G_off_t __off_t
26755 #define _G_off64_t __off64_t
26756 #define _G_pid_t __pid_t
26757 #define _G_uid_t __uid_t
26758 #define _G_wchar_t wchar_t
26759 #define _G_wint_t wint_t
26760 #define _G_stat64 stat64
26761 # 53 "/usr/include/_G_config.h" 3 4
26762 typedef int _G_int16_t __attribute__ ((__mode__ (__HI__)));
26763 typedef int _G_int32_t __attribute__ ((__mode__ (__SI__)));
26764 typedef unsigned int _G_uint16_t __attribute__ ((__mode__ (__HI__)));
26765 typedef unsigned int _G_uint32_t __attribute__ ((__mode__ (__SI__)));
26766
26767 #define _G_HAVE_BOOL 1
26768
26769
26770
26771 #define _G_HAVE_ATEXIT 1
26772 #define _G_HAVE_SYS_CDEFS 1
26773 #define _G_HAVE_SYS_WAIT 1
26774 #define _G_NEED_STDARG_H 1
26775 #define _G_va_list __gnuc_va_list
26776
26777 #define _G_HAVE_PRINTF_FP 1
26778 #define _G_HAVE_MMAP 1
26779 #define _G_HAVE_MREMAP 1
26780 #define _G_HAVE_LONG_DOUBLE_IO 1
26781 #define _G_HAVE_IO_FILE_OPEN 1
26782 #define _G_HAVE_IO_GETLINE_INFO 1
26783
26784 #define _G_IO_IO_FILE_VERSION 0x20001
26785
26786 #define _G_OPEN64 __open64
26787 #define _G_LSEEK64 __lseek64
26788 #define _G_MMAP64 __mmap64
26789 #define _G_FSTAT64(fd,buf) __fxstat64 (_STAT_VER, fd, buf)
26790
26791
26792 #define _G_HAVE_ST_BLKSIZE defined (_STATBUF_ST_BLKSIZE)
26793
26794 #define _G_BUFSIZ 8192
26795
26796
26797 #define _G_NAMES_HAVE_UNDERSCORE 0
26798 #define _G_VTABLE_LABEL_HAS_LENGTH 1
26799 #define _G_USING_THUNKS 1
26800 #define _G_VTABLE_LABEL_PREFIX "__vt_"
26801 #define _G_VTABLE_LABEL_PREFIX_ID __vt_
26802
26803
26804
26805 #define _G_ARGS(ARGLIST) ARGLIST
26806 # 33 "/usr/include/libio.h" 2 3 4
26807
26808 #define _IO_pos_t _G_fpos_t
26809 #define _IO_fpos_t _G_fpos_t
26810 #define _IO_fpos64_t _G_fpos64_t
26811 #define _IO_size_t _G_size_t
26812 #define _IO_ssize_t _G_ssize_t
26813 #define _IO_off_t _G_off_t
26814 #define _IO_off64_t _G_off64_t
26815 #define _IO_pid_t _G_pid_t
26816 #define _IO_uid_t _G_uid_t
26817 #define _IO_iconv_t _G_iconv_t
26818 #define _IO_HAVE_SYS_WAIT _G_HAVE_SYS_WAIT
26819 #define _IO_HAVE_ST_BLKSIZE _G_HAVE_ST_BLKSIZE
26820 #define _IO_BUFSIZ _G_BUFSIZ
26821 #define _IO_va_list _G_va_list
26822 #define _IO_wint_t _G_wint_t
26823
26824
26825
26826 #define __need___va_list
26827
26828
26829 #undef _IO_va_list
26830 #define _IO_va_list __gnuc_va_list
26831 # 76 "/usr/include/libio.h" 3 4
26832 #define _PARAMS(protos) __P(protos)
26833
26834
26835
26836
26837
26838
26839
26840 #define _IO_UNIFIED_JUMPTABLES 1
26841
26842
26843
26844
26845
26846 #define EOF (-1)
26847 # 105 "/usr/include/libio.h" 3 4
26848 #define _IOS_INPUT 1
26849 #define _IOS_OUTPUT 2
26850 #define _IOS_ATEND 4
26851 #define _IOS_APPEND 8
26852 #define _IOS_TRUNC 16
26853 #define _IOS_NOCREATE 32
26854 #define _IOS_NOREPLACE 64
26855 #define _IOS_BIN 128
26856
26857
26858
26859
26860
26861
26862
26863 #define _IO_MAGIC 0xFBAD0000
26864 #define _OLD_STDIO_MAGIC 0xFABC0000
26865 #define _IO_MAGIC_MASK 0xFFFF0000
26866 #define _IO_USER_BUF 1
26867 #define _IO_UNBUFFERED 2
26868 #define _IO_NO_READS 4
26869 #define _IO_NO_WRITES 8
26870 #define _IO_EOF_SEEN 0x10
26871 #define _IO_ERR_SEEN 0x20
26872 #define _IO_DELETE_DONT_CLOSE 0x40
26873 #define _IO_LINKED 0x80
26874 #define _IO_IN_BACKUP 0x100
26875 #define _IO_LINE_BUF 0x200
26876 #define _IO_TIED_PUT_GET 0x400
26877 #define _IO_CURRENTLY_PUTTING 0x800
26878 #define _IO_IS_APPENDING 0x1000
26879 #define _IO_IS_FILEBUF 0x2000
26880 #define _IO_BAD_SEEN 0x4000
26881 #define _IO_USER_LOCK 0x8000
26882
26883 #define _IO_FLAGS2_MMAP 1
26884 #define _IO_FLAGS2_NOTCANCEL 2
26885
26886
26887
26888 #define _IO_FLAGS2_USER_WBUF 8
26889
26890
26891
26892
26893
26894
26895
26896 #define _IO_SKIPWS 01
26897 #define _IO_LEFT 02
26898 #define _IO_RIGHT 04
26899 #define _IO_INTERNAL 010
26900 #define _IO_DEC 020
26901 #define _IO_OCT 040
26902 #define _IO_HEX 0100
26903 #define _IO_SHOWBASE 0200
26904 #define _IO_SHOWPOINT 0400
26905 #define _IO_UPPERCASE 01000
26906 #define _IO_SHOWPOS 02000
26907 #define _IO_SCIENTIFIC 04000
26908 #define _IO_FIXED 010000
26909 #define _IO_UNITBUF 020000
26910 #define _IO_STDIO 040000
26911 #define _IO_DONT_CLOSE 0100000
26912 #define _IO_BOOLALPHA 0200000
26913
26914
26915 struct _IO_jump_t; struct _IO_FILE;
26916 # 182 "/usr/include/libio.h" 3 4
26917 typedef void _IO_lock_t;
26918
26919
26920
26921
26922
26923 struct _IO_marker {
26924 struct _IO_marker *_next;
26925 struct _IO_FILE *_sbuf;
26926
26927
26928
26929 int _pos;
26930 # 205 "/usr/include/libio.h" 3 4
26931 };
26932
26933
26934 enum __codecvt_result
26935 {
26936 __codecvt_ok,
26937 __codecvt_partial,
26938 __codecvt_error,
26939 __codecvt_noconv
26940 };
26941 # 273 "/usr/include/libio.h" 3 4
26942 struct _IO_FILE {
26943 int _flags;
26944 #define _IO_file_flags _flags
26945
26946
26947
26948 char* _IO_read_ptr;
26949 char* _IO_read_end;
26950 char* _IO_read_base;
26951 char* _IO_write_base;
26952 char* _IO_write_ptr;
26953 char* _IO_write_end;
26954 char* _IO_buf_base;
26955 char* _IO_buf_end;
26956
26957 char *_IO_save_base;
26958 char *_IO_backup_base;
26959 char *_IO_save_end;
26960
26961 struct _IO_marker *_markers;
26962
26963 struct _IO_FILE *_chain;
26964
26965 int _fileno;
26966
26967
26968
26969 int _flags2;
26970
26971 __off_t _old_offset;
26972
26973 #define __HAVE_COLUMN
26974
26975 unsigned short _cur_column;
26976 signed char _vtable_offset;
26977 char _shortbuf[1];
26978
26979
26980
26981 _IO_lock_t *_lock;
26982 # 321 "/usr/include/libio.h" 3 4
26983 __off64_t _offset;
26984 # 330 "/usr/include/libio.h" 3 4
26985 void *__pad1;
26986 void *__pad2;
26987 void *__pad3;
26988 void *__pad4;
26989 size_t __pad5;
26990
26991 int _mode;
26992
26993 char _unused2[15 * sizeof (int) - 4 * sizeof (void *) - sizeof (size_t)];
26994
26995 };
26996
26997
26998
26999
27000
27001 struct _IO_FILE_plus;
27002
27003 extern struct _IO_FILE_plus _IO_2_1_stdin_;
27004 extern struct _IO_FILE_plus _IO_2_1_stdout_;
27005 extern struct _IO_FILE_plus _IO_2_1_stderr_;
27006
27007 #define _IO_stdin ((_IO_FILE*)(&_IO_2_1_stdin_))
27008 #define _IO_stdout ((_IO_FILE*)(&_IO_2_1_stdout_))
27009 #define _IO_stderr ((_IO_FILE*)(&_IO_2_1_stderr_))
27010 # 366 "/usr/include/libio.h" 3 4
27011 typedef __ssize_t __io_read_fn (void *__cookie, char *__buf, size_t __nbytes);
27012
27013
27014
27015
27016
27017
27018
27019 typedef __ssize_t __io_write_fn (void *__cookie, __const char *__buf,
27020 size_t __n);
27021
27022
27023
27024
27025
27026
27027
27028 typedef int __io_seek_fn (void *__cookie, __off64_t *__pos, int __w);
27029
27030
27031 typedef int __io_close_fn (void *__cookie);
27032
27033
27034
27035
27036 typedef __io_read_fn cookie_read_function_t;
27037 typedef __io_write_fn cookie_write_function_t;
27038 typedef __io_seek_fn cookie_seek_function_t;
27039 typedef __io_close_fn cookie_close_function_t;
27040
27041
27042 typedef struct
27043 {
27044 __io_read_fn *read;
27045 __io_write_fn *write;
27046 __io_seek_fn *seek;
27047 __io_close_fn *close;
27048 } _IO_cookie_io_functions_t;
27049 typedef _IO_cookie_io_functions_t cookie_io_functions_t;
27050
27051 struct _IO_cookie_file;
27052
27053
27054 extern void _IO_cookie_init (struct _IO_cookie_file *__cfile, int __read_write,
27055 void *__cookie, _IO_cookie_io_functions_t __fns);
27056
27057
27058
27059
27060 extern "C" {
27061
27062
27063 extern int __underflow (_IO_FILE *);
27064 extern int __uflow (_IO_FILE *);
27065 extern int __overflow (_IO_FILE *, int);
27066
27067
27068
27069
27070
27071
27072
27073 #define _IO_BE(expr,res) __builtin_expect ((expr), res)
27074
27075
27076
27077
27078 #define _IO_getc_unlocked(_fp) (_IO_BE ((_fp)->_IO_read_ptr >= (_fp)->_IO_read_end, 0) ? __uflow (_fp) : *(unsigned char *) (_fp)->_IO_read_ptr++)
27079
27080
27081 #define _IO_peekc_unlocked(_fp) (_IO_BE ((_fp)->_IO_read_ptr >= (_fp)->_IO_read_end, 0) && __underflow (_fp) == EOF ? EOF : *(unsigned char *) (_fp)->_IO_read_ptr)
27082
27083
27084
27085 #define _IO_putc_unlocked(_ch,_fp) (_IO_BE ((_fp)->_IO_write_ptr >= (_fp)->_IO_write_end, 0) ? __overflow (_fp, (unsigned char) (_ch)) : (unsigned char) (*(_fp)->_IO_write_ptr++ = (_ch)))
27086 # 459 "/usr/include/libio.h" 3 4
27087 #define _IO_feof_unlocked(__fp) (((__fp)->_flags & _IO_EOF_SEEN) != 0)
27088 #define _IO_ferror_unlocked(__fp) (((__fp)->_flags & _IO_ERR_SEEN) != 0)
27089
27090 extern int _IO_getc (_IO_FILE *__fp);
27091 extern int _IO_putc (int __c, _IO_FILE *__fp);
27092 extern int _IO_feof (_IO_FILE *__fp) throw ();
27093 extern int _IO_ferror (_IO_FILE *__fp) throw ();
27094
27095 extern int _IO_peekc_locked (_IO_FILE *__fp);
27096
27097
27098 #define _IO_PENDING_OUTPUT_COUNT(_fp) ((_fp)->_IO_write_ptr - (_fp)->_IO_write_base)
27099
27100
27101 extern void _IO_flockfile (_IO_FILE *) throw ();
27102 extern void _IO_funlockfile (_IO_FILE *) throw ();
27103 extern int _IO_ftrylockfile (_IO_FILE *) throw ();
27104 # 484 "/usr/include/libio.h" 3 4
27105 #define _IO_peekc(_fp) _IO_peekc_unlocked (_fp)
27106 #define _IO_flockfile(_fp)
27107 #define _IO_funlockfile(_fp)
27108 #define _IO_ftrylockfile(_fp)
27109 #define _IO_cleanup_region_start(_fct,_fp)
27110 #define _IO_cleanup_region_end(_Doit)
27111
27112
27113 extern int _IO_vfscanf (_IO_FILE * __restrict, const char * __restrict,
27114 __gnuc_va_list, int *__restrict);
27115 extern int _IO_vfprintf (_IO_FILE *__restrict, const char *__restrict,
27116 __gnuc_va_list);
27117 extern __ssize_t _IO_padn (_IO_FILE *, int, __ssize_t);
27118 extern size_t _IO_sgetn (_IO_FILE *, void *, size_t);
27119
27120 extern __off64_t _IO_seekoff (_IO_FILE *, __off64_t, int, int);
27121 extern __off64_t _IO_seekpos (_IO_FILE *, __off64_t, int);
27122
27123 extern void _IO_free_backup_area (_IO_FILE *) throw ();
27124 # 554 "/usr/include/libio.h" 3 4
27125 }
27126 # 76 "/usr/include/stdio.h" 2 3 4
27127 # 109 "/usr/include/stdio.h" 3 4
27128
27129
27130 typedef _G_fpos_t fpos_t;
27131
27132
27133
27134
27135
27136 typedef _G_fpos64_t fpos64_t;
27137
27138
27139
27140 #define _IOFBF 0
27141 #define _IOLBF 1
27142 #define _IONBF 2
27143
27144
27145
27146
27147 #define BUFSIZ _IO_BUFSIZ
27148 # 141 "/usr/include/stdio.h" 3 4
27149 #define SEEK_SET 0
27150 #define SEEK_CUR 1
27151 #define SEEK_END 2
27152
27153
27154
27155
27156 #define P_tmpdir "/tmp"
27157 # 161 "/usr/include/stdio.h" 3 4
27158 # 1 "/usr/include/bits/stdio_lim.h" 1 3 4
27159 # 24 "/usr/include/bits/stdio_lim.h" 3 4
27160 #define L_tmpnam 20
27161 #define TMP_MAX 238328
27162 #define FILENAME_MAX 4096
27163
27164
27165 #define L_ctermid 9
27166
27167 #define L_cuserid 9
27168
27169
27170
27171
27172
27173 #undef FOPEN_MAX
27174 #define FOPEN_MAX 16
27175 # 162 "/usr/include/stdio.h" 2 3 4
27176
27177
27178
27179 extern struct _IO_FILE *stdin;
27180 extern struct _IO_FILE *stdout;
27181 extern struct _IO_FILE *stderr;
27182
27183 #define stdin stdin
27184 #define stdout stdout
27185 #define stderr stderr
27186
27187
27188
27189 extern int remove (__const char *__filename) throw ();
27190
27191 extern int rename (__const char *__old, __const char *__new) throw ();
27192
27193
27194
27195
27196 extern int renameat (int __oldfd, __const char *__old, int __newfd,
27197 __const char *__new) throw ();
27198
27199
27200
27201
27202
27203
27204
27205
27206 extern FILE *tmpfile (void) __attribute__ ((__warn_unused_result__));
27207 # 202 "/usr/include/stdio.h" 3 4
27208 extern FILE *tmpfile64 (void) __attribute__ ((__warn_unused_result__));
27209
27210
27211
27212 extern char *tmpnam (char *__s) throw () __attribute__ ((__warn_unused_result__));
27213
27214
27215
27216
27217
27218 extern char *tmpnam_r (char *__s) throw () __attribute__ ((__warn_unused_result__));
27219 # 224 "/usr/include/stdio.h" 3 4
27220 extern char *tempnam (__const char *__dir, __const char *__pfx)
27221 throw () __attribute__ ((__malloc__)) __attribute__ ((__warn_unused_result__));
27222
27223
27224
27225
27226
27227
27228
27229
27230 extern int fclose (FILE *__stream);
27231
27232
27233
27234
27235 extern int fflush (FILE *__stream);
27236
27237 # 249 "/usr/include/stdio.h" 3 4
27238 extern int fflush_unlocked (FILE *__stream);
27239 # 259 "/usr/include/stdio.h" 3 4
27240 extern int fcloseall (void);
27241
27242
27243
27244
27245
27246
27247
27248
27249
27250 extern FILE *fopen (__const char *__restrict __filename,
27251 __const char *__restrict __modes) __attribute__ ((__warn_unused_result__));
27252
27253
27254
27255
27256 extern FILE *freopen (__const char *__restrict __filename,
27257 __const char *__restrict __modes,
27258 FILE *__restrict __stream) __attribute__ ((__warn_unused_result__));
27259 # 292 "/usr/include/stdio.h" 3 4
27260
27261
27262 extern FILE *fopen64 (__const char *__restrict __filename,
27263 __const char *__restrict __modes) __attribute__ ((__warn_unused_result__));
27264 extern FILE *freopen64 (__const char *__restrict __filename,
27265 __const char *__restrict __modes,
27266 FILE *__restrict __stream) __attribute__ ((__warn_unused_result__));
27267
27268
27269
27270
27271 extern FILE *fdopen (int __fd, __const char *__modes) throw () __attribute__ ((__warn_unused_result__));
27272
27273
27274
27275
27276
27277 extern FILE *fopencookie (void *__restrict __magic_cookie,
27278 __const char *__restrict __modes,
27279 _IO_cookie_io_functions_t __io_funcs) throw () __attribute__ ((__warn_unused_result__));
27280
27281
27282
27283
27284 extern FILE *fmemopen (void *__s, size_t __len, __const char *__modes)
27285 throw () __attribute__ ((__warn_unused_result__));
27286
27287
27288
27289
27290 extern FILE *open_memstream (char **__bufloc, size_t *__sizeloc) throw () __attribute__ ((__warn_unused_result__));
27291
27292
27293
27294
27295
27296
27297 extern void setbuf (FILE *__restrict __stream, char *__restrict __buf) throw ();
27298
27299
27300
27301 extern int setvbuf (FILE *__restrict __stream, char *__restrict __buf,
27302 int __modes, size_t __n) throw ();
27303
27304
27305
27306
27307
27308 extern void setbuffer (FILE *__restrict __stream, char *__restrict __buf,
27309 size_t __size) throw ();
27310
27311
27312 extern void setlinebuf (FILE *__stream) throw ();
27313
27314
27315
27316
27317
27318
27319
27320
27321 extern int fprintf (FILE *__restrict __stream,
27322 __const char *__restrict __format, ...);
27323
27324
27325
27326
27327 extern int printf (__const char *__restrict __format, ...);
27328
27329 extern int sprintf (char *__restrict __s,
27330 __const char *__restrict __format, ...) throw ();
27331
27332
27333
27334
27335
27336 extern int vfprintf (FILE *__restrict __s, __const char *__restrict __format,
27337 __gnuc_va_list __arg);
27338
27339
27340
27341
27342 extern int vprintf (__const char *__restrict __format, __gnuc_va_list __arg);
27343
27344 extern int vsprintf (char *__restrict __s, __const char *__restrict __format,
27345 __gnuc_va_list __arg) throw ();
27346
27347
27348
27349
27350
27351 extern int snprintf (char *__restrict __s, size_t __maxlen,
27352 __const char *__restrict __format, ...)
27353 throw () __attribute__ ((__format__ (__printf__, 3, 4)));
27354
27355 extern int vsnprintf (char *__restrict __s, size_t __maxlen,
27356 __const char *__restrict __format, __gnuc_va_list __arg)
27357 throw () __attribute__ ((__format__ (__printf__, 3, 0)));
27358
27359
27360
27361
27362
27363
27364 extern int vasprintf (char **__restrict __ptr, __const char *__restrict __f,
27365 __gnuc_va_list __arg)
27366 throw () __attribute__ ((__format__ (__printf__, 2, 0))) __attribute__ ((__warn_unused_result__));
27367 extern int __asprintf (char **__restrict __ptr,
27368 __const char *__restrict __fmt, ...)
27369 throw () __attribute__ ((__format__ (__printf__, 2, 3))) __attribute__ ((__warn_unused_result__));
27370 extern int asprintf (char **__restrict __ptr,
27371 __const char *__restrict __fmt, ...)
27372 throw () __attribute__ ((__format__ (__printf__, 2, 3))) __attribute__ ((__warn_unused_result__));
27373 # 414 "/usr/include/stdio.h" 3 4
27374 extern int vdprintf (int __fd, __const char *__restrict __fmt,
27375 __gnuc_va_list __arg)
27376 __attribute__ ((__format__ (__printf__, 2, 0)));
27377 extern int dprintf (int __fd, __const char *__restrict __fmt, ...)
27378 __attribute__ ((__format__ (__printf__, 2, 3)));
27379
27380
27381
27382
27383
27384
27385
27386
27387 extern int fscanf (FILE *__restrict __stream,
27388 __const char *__restrict __format, ...) __attribute__ ((__warn_unused_result__));
27389
27390
27391
27392
27393 extern int scanf (__const char *__restrict __format, ...) __attribute__ ((__warn_unused_result__));
27394
27395 extern int sscanf (__const char *__restrict __s,
27396 __const char *__restrict __format, ...) throw ();
27397 # 465 "/usr/include/stdio.h" 3 4
27398
27399
27400
27401
27402
27403
27404
27405
27406 extern int vfscanf (FILE *__restrict __s, __const char *__restrict __format,
27407 __gnuc_va_list __arg)
27408 __attribute__ ((__format__ (__scanf__, 2, 0))) __attribute__ ((__warn_unused_result__));
27409
27410
27411
27412
27413
27414 extern int vscanf (__const char *__restrict __format, __gnuc_va_list __arg)
27415 __attribute__ ((__format__ (__scanf__, 1, 0))) __attribute__ ((__warn_unused_result__));
27416
27417
27418 extern int vsscanf (__const char *__restrict __s,
27419 __const char *__restrict __format, __gnuc_va_list __arg)
27420 throw () __attribute__ ((__format__ (__scanf__, 2, 0)));
27421 # 524 "/usr/include/stdio.h" 3 4
27422
27423
27424
27425
27426
27427
27428
27429
27430
27431 extern int fgetc (FILE *__stream);
27432 extern int getc (FILE *__stream);
27433
27434
27435
27436
27437
27438 extern int getchar (void);
27439
27440
27441
27442
27443 #define getc(_fp) _IO_getc (_fp)
27444
27445
27446
27447
27448
27449
27450 extern int getc_unlocked (FILE *__stream);
27451 extern int getchar_unlocked (void);
27452 # 563 "/usr/include/stdio.h" 3 4
27453 extern int fgetc_unlocked (FILE *__stream);
27454
27455
27456
27457
27458
27459
27460
27461
27462
27463
27464
27465 extern int fputc (int __c, FILE *__stream);
27466 extern int putc (int __c, FILE *__stream);
27467
27468
27469
27470
27471
27472 extern int putchar (int __c);
27473
27474
27475
27476
27477 #define putc(_ch,_fp) _IO_putc (_ch, _fp)
27478 # 596 "/usr/include/stdio.h" 3 4
27479 extern int fputc_unlocked (int __c, FILE *__stream);
27480
27481
27482
27483
27484
27485
27486
27487 extern int putc_unlocked (int __c, FILE *__stream);
27488 extern int putchar_unlocked (int __c);
27489
27490
27491
27492
27493
27494
27495 extern int getw (FILE *__stream);
27496
27497
27498 extern int putw (int __w, FILE *__stream);
27499
27500
27501
27502
27503
27504
27505
27506
27507 extern char *fgets (char *__restrict __s, int __n, FILE *__restrict __stream)
27508 __attribute__ ((__warn_unused_result__));
27509
27510
27511
27512
27513
27514
27515 extern char *gets (char *__s) __attribute__ ((__warn_unused_result__));
27516
27517 # 642 "/usr/include/stdio.h" 3 4
27518 extern char *fgets_unlocked (char *__restrict __s, int __n,
27519 FILE *__restrict __stream) __attribute__ ((__warn_unused_result__));
27520 # 658 "/usr/include/stdio.h" 3 4
27521 extern __ssize_t __getdelim (char **__restrict __lineptr,
27522 size_t *__restrict __n, int __delimiter,
27523 FILE *__restrict __stream) __attribute__ ((__warn_unused_result__));
27524 extern __ssize_t getdelim (char **__restrict __lineptr,
27525 size_t *__restrict __n, int __delimiter,
27526 FILE *__restrict __stream) __attribute__ ((__warn_unused_result__));
27527
27528
27529
27530
27531
27532
27533
27534 extern __ssize_t getline (char **__restrict __lineptr,
27535 size_t *__restrict __n,
27536 FILE *__restrict __stream) __attribute__ ((__warn_unused_result__));
27537
27538
27539
27540
27541
27542
27543
27544
27545 extern int fputs (__const char *__restrict __s, FILE *__restrict __stream);
27546
27547
27548
27549
27550
27551 extern int puts (__const char *__s);
27552
27553
27554
27555
27556
27557
27558 extern int ungetc (int __c, FILE *__stream);
27559
27560
27561
27562
27563
27564
27565 extern size_t fread (void *__restrict __ptr, size_t __size,
27566 size_t __n, FILE *__restrict __stream) __attribute__ ((__warn_unused_result__));
27567
27568
27569
27570
27571 extern size_t fwrite (__const void *__restrict __ptr, size_t __size,
27572 size_t __n, FILE *__restrict __s) __attribute__ ((__warn_unused_result__));
27573
27574 # 719 "/usr/include/stdio.h" 3 4
27575 extern int fputs_unlocked (__const char *__restrict __s,
27576 FILE *__restrict __stream);
27577 # 730 "/usr/include/stdio.h" 3 4
27578 extern size_t fread_unlocked (void *__restrict __ptr, size_t __size,
27579 size_t __n, FILE *__restrict __stream) __attribute__ ((__warn_unused_result__));
27580 extern size_t fwrite_unlocked (__const void *__restrict __ptr, size_t __size,
27581 size_t __n, FILE *__restrict __stream) __attribute__ ((__warn_unused_result__));
27582
27583
27584
27585
27586
27587
27588
27589
27590 extern int fseek (FILE *__stream, long int __off, int __whence);
27591
27592
27593
27594
27595 extern long int ftell (FILE *__stream) __attribute__ ((__warn_unused_result__));
27596
27597
27598
27599
27600 extern void rewind (FILE *__stream);
27601
27602 # 766 "/usr/include/stdio.h" 3 4
27603 extern int fseeko (FILE *__stream, __off_t __off, int __whence);
27604
27605
27606
27607
27608 extern __off_t ftello (FILE *__stream) __attribute__ ((__warn_unused_result__));
27609 # 785 "/usr/include/stdio.h" 3 4
27610
27611
27612
27613
27614
27615
27616 extern int fgetpos (FILE *__restrict __stream, fpos_t *__restrict __pos);
27617
27618
27619
27620
27621 extern int fsetpos (FILE *__stream, __const fpos_t *__pos);
27622 # 808 "/usr/include/stdio.h" 3 4
27623
27624
27625
27626 extern int fseeko64 (FILE *__stream, __off64_t __off, int __whence);
27627 extern __off64_t ftello64 (FILE *__stream) __attribute__ ((__warn_unused_result__));
27628 extern int fgetpos64 (FILE *__restrict __stream, fpos64_t *__restrict __pos);
27629 extern int fsetpos64 (FILE *__stream, __const fpos64_t *__pos);
27630
27631
27632
27633
27634 extern void clearerr (FILE *__stream) throw ();
27635
27636 extern int feof (FILE *__stream) throw () __attribute__ ((__warn_unused_result__));
27637
27638 extern int ferror (FILE *__stream) throw () __attribute__ ((__warn_unused_result__));
27639
27640
27641
27642
27643 extern void clearerr_unlocked (FILE *__stream) throw ();
27644 extern int feof_unlocked (FILE *__stream) throw () __attribute__ ((__warn_unused_result__));
27645 extern int ferror_unlocked (FILE *__stream) throw () __attribute__ ((__warn_unused_result__));
27646
27647
27648
27649
27650
27651
27652
27653
27654 extern void perror (__const char *__s);
27655
27656
27657
27658
27659
27660
27661 # 1 "/usr/include/bits/sys_errlist.h" 1 3 4
27662 # 27 "/usr/include/bits/sys_errlist.h" 3 4
27663 extern int sys_nerr;
27664 extern __const char *__const sys_errlist[];
27665
27666
27667 extern int _sys_nerr;
27668 extern __const char *__const _sys_errlist[];
27669 # 847 "/usr/include/stdio.h" 2 3 4
27670
27671
27672
27673
27674 extern int fileno (FILE *__stream) throw () __attribute__ ((__warn_unused_result__));
27675
27676
27677
27678
27679 extern int fileno_unlocked (FILE *__stream) throw () __attribute__ ((__warn_unused_result__));
27680 # 866 "/usr/include/stdio.h" 3 4
27681 extern FILE *popen (__const char *__command, __const char *__modes) __attribute__ ((__warn_unused_result__));
27682
27683
27684
27685
27686
27687 extern int pclose (FILE *__stream);
27688
27689
27690
27691
27692
27693 extern char *ctermid (char *__s) throw ();
27694
27695
27696
27697
27698
27699 extern char *cuserid (char *__s);
27700
27701
27702
27703
27704 struct obstack;
27705
27706
27707 extern int obstack_printf (struct obstack *__restrict __obstack,
27708 __const char *__restrict __format, ...)
27709 throw () __attribute__ ((__format__ (__printf__, 2, 3)));
27710 extern int obstack_vprintf (struct obstack *__restrict __obstack,
27711 __const char *__restrict __format,
27712 __gnuc_va_list __args)
27713 throw () __attribute__ ((__format__ (__printf__, 2, 0)));
27714
27715
27716
27717
27718
27719
27720
27721 extern void flockfile (FILE *__stream) throw ();
27722
27723
27724
27725 extern int ftrylockfile (FILE *__stream) throw () __attribute__ ((__warn_unused_result__));
27726
27727
27728 extern void funlockfile (FILE *__stream) throw ();
27729 # 927 "/usr/include/stdio.h" 3 4
27730 # 1 "/usr/include/bits/stdio.h" 1 3 4
27731 # 27 "/usr/include/bits/stdio.h" 3 4
27732 #define __STDIO_INLINE __extern_inline
27733 # 44 "/usr/include/bits/stdio.h" 3 4
27734 extern __inline __attribute__ ((__gnu_inline__)) int
27735 getchar (void)
27736 {
27737 return _IO_getc (stdin);
27738 }
27739
27740
27741
27742
27743 extern __inline __attribute__ ((__gnu_inline__)) int
27744 fgetc_unlocked (FILE *__fp)
27745 {
27746 return (__builtin_expect (((__fp)->_IO_read_ptr >= (__fp)->_IO_read_end), 0) ? __uflow (__fp) : *(unsigned char *) (__fp)->_IO_read_ptr++);
27747 }
27748
27749
27750
27751
27752
27753 extern __inline __attribute__ ((__gnu_inline__)) int
27754 getc_unlocked (FILE *__fp)
27755 {
27756 return (__builtin_expect (((__fp)->_IO_read_ptr >= (__fp)->_IO_read_end), 0) ? __uflow (__fp) : *(unsigned char *) (__fp)->_IO_read_ptr++);
27757 }
27758
27759
27760 extern __inline __attribute__ ((__gnu_inline__)) int
27761 getchar_unlocked (void)
27762 {
27763 return (__builtin_expect (((stdin)->_IO_read_ptr >= (stdin)->_IO_read_end), 0) ? __uflow (stdin) : *(unsigned char *) (stdin)->_IO_read_ptr++);
27764 }
27765
27766
27767
27768
27769 extern __inline __attribute__ ((__gnu_inline__)) int
27770 putchar (int __c)
27771 {
27772 return _IO_putc (__c, stdout);
27773 }
27774
27775
27776
27777
27778 extern __inline __attribute__ ((__gnu_inline__)) int
27779 fputc_unlocked (int __c, FILE *__stream)
27780 {
27781 return (__builtin_expect (((__stream)->_IO_write_ptr >= (__stream)->_IO_write_end), 0) ? __overflow (__stream, (unsigned char) (__c)) : (unsigned char) (*(__stream)->_IO_write_ptr++ = (__c)));
27782 }
27783
27784
27785
27786
27787
27788 extern __inline __attribute__ ((__gnu_inline__)) int
27789 putc_unlocked (int __c, FILE *__stream)
27790 {
27791 return (__builtin_expect (((__stream)->_IO_write_ptr >= (__stream)->_IO_write_end), 0) ? __overflow (__stream, (unsigned char) (__c)) : (unsigned char) (*(__stream)->_IO_write_ptr++ = (__c)));
27792 }
27793
27794
27795 extern __inline __attribute__ ((__gnu_inline__)) int
27796 putchar_unlocked (int __c)
27797 {
27798 return (__builtin_expect (((stdout)->_IO_write_ptr >= (stdout)->_IO_write_end), 0) ? __overflow (stdout, (unsigned char) (__c)) : (unsigned char) (*(stdout)->_IO_write_ptr++ = (__c)));
27799 }
27800
27801
27802
27803
27804
27805 extern __inline __attribute__ ((__gnu_inline__)) __ssize_t
27806 getline (char **__lineptr, size_t *__n, FILE *__stream)
27807 {
27808 return __getdelim (__lineptr, __n, '\n', __stream);
27809 }
27810
27811
27812
27813
27814
27815 extern __inline __attribute__ ((__gnu_inline__)) int
27816 feof_unlocked (FILE *__stream) throw ()
27817 {
27818 return (((__stream)->_flags & 0x10) != 0);
27819 }
27820
27821
27822 extern __inline __attribute__ ((__gnu_inline__)) int
27823 ferror_unlocked (FILE *__stream) throw ()
27824 {
27825 return (((__stream)->_flags & 0x20) != 0);
27826 }
27827 # 191 "/usr/include/bits/stdio.h" 3 4
27828 #undef __STDIO_INLINE
27829 # 928 "/usr/include/stdio.h" 2 3 4
27830
27831
27832 # 1 "/usr/include/bits/stdio2.h" 1 3 4
27833 # 24 "/usr/include/bits/stdio2.h" 3 4
27834 extern int __sprintf_chk (char *__restrict __s, int __flag, size_t __slen,
27835 __const char *__restrict __format, ...) throw ();
27836 extern int __vsprintf_chk (char *__restrict __s, int __flag, size_t __slen,
27837 __const char *__restrict __format,
27838 __gnuc_va_list __ap) throw ();
27839
27840
27841 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) int
27842 sprintf (char *__restrict __s, __const char *__restrict __fmt, ...) throw ()
27843 {
27844 return __builtin___sprintf_chk (__s, 2 - 1,
27845 __builtin_object_size (__s, 2 > 1), __fmt, __builtin_va_arg_pack ());
27846 }
27847
27848
27849
27850
27851
27852
27853 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) int
27854 vsprintf (char *__restrict __s, __const char *__restrict __fmt, __gnuc_va_list __ap) throw ()
27855
27856 {
27857 return __builtin___vsprintf_chk (__s, 2 - 1,
27858 __builtin_object_size (__s, 2 > 1), __fmt, __ap);
27859 }
27860
27861
27862
27863 extern int __snprintf_chk (char *__restrict __s, size_t __n, int __flag,
27864 size_t __slen, __const char *__restrict __format,
27865 ...) throw ();
27866 extern int __vsnprintf_chk (char *__restrict __s, size_t __n, int __flag,
27867 size_t __slen, __const char *__restrict __format,
27868 __gnuc_va_list __ap) throw ();
27869
27870
27871 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) int
27872 snprintf (char *__restrict __s, size_t __n, __const char *__restrict __fmt, ...) throw ()
27873
27874 {
27875 return __builtin___snprintf_chk (__s, __n, 2 - 1,
27876 __builtin_object_size (__s, 2 > 1), __fmt, __builtin_va_arg_pack ());
27877 }
27878
27879
27880
27881
27882
27883
27884 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) int
27885 vsnprintf (char *__restrict __s, size_t __n, __const char *__restrict __fmt, __gnuc_va_list __ap) throw ()
27886
27887 {
27888 return __builtin___vsnprintf_chk (__s, __n, 2 - 1,
27889 __builtin_object_size (__s, 2 > 1), __fmt, __ap);
27890 }
27891
27892
27893
27894
27895
27896 extern int __fprintf_chk (FILE *__restrict __stream, int __flag,
27897 __const char *__restrict __format, ...);
27898 extern int __printf_chk (int __flag, __const char *__restrict __format, ...);
27899 extern int __vfprintf_chk (FILE *__restrict __stream, int __flag,
27900 __const char *__restrict __format, __gnuc_va_list __ap);
27901 extern int __vprintf_chk (int __flag, __const char *__restrict __format,
27902 __gnuc_va_list __ap);
27903
27904
27905 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) int
27906 fprintf (FILE *__restrict __stream, __const char *__restrict __fmt, ...)
27907 {
27908 return __fprintf_chk (__stream, 2 - 1, __fmt,
27909 __builtin_va_arg_pack ());
27910 }
27911
27912 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) int
27913 printf (__const char *__restrict __fmt, ...)
27914 {
27915 return __printf_chk (2 - 1, __fmt, __builtin_va_arg_pack ());
27916 }
27917
27918
27919
27920
27921
27922
27923
27924 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) int
27925 vprintf (__const char *__restrict __fmt, __gnuc_va_list __ap)
27926 {
27927
27928 return __vfprintf_chk (stdout, 2 - 1, __fmt, __ap);
27929
27930
27931
27932 }
27933
27934 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) int
27935 vfprintf (FILE *__restrict __stream,
27936 __const char *__restrict __fmt, __gnuc_va_list __ap)
27937 {
27938 return __vfprintf_chk (__stream, 2 - 1, __fmt, __ap);
27939 }
27940
27941
27942
27943 extern int __asprintf_chk (char **__restrict __ptr, int __flag,
27944 __const char *__restrict __fmt, ...)
27945 throw () __attribute__ ((__format__ (__printf__, 3, 4))) __attribute__ ((__warn_unused_result__));
27946 extern int __vasprintf_chk (char **__restrict __ptr, int __flag,
27947 __const char *__restrict __fmt, __gnuc_va_list __arg)
27948 throw () __attribute__ ((__format__ (__printf__, 3, 0))) __attribute__ ((__warn_unused_result__));
27949 extern int __dprintf_chk (int __fd, int __flag, __const char *__restrict __fmt,
27950 ...) __attribute__ ((__format__ (__printf__, 3, 4)));
27951 extern int __vdprintf_chk (int __fd, int __flag,
27952 __const char *__restrict __fmt, __gnuc_va_list __arg)
27953 __attribute__ ((__format__ (__printf__, 3, 0)));
27954 extern int __obstack_printf_chk (struct obstack *__restrict __obstack,
27955 int __flag, __const char *__restrict __format,
27956 ...)
27957 throw () __attribute__ ((__format__ (__printf__, 3, 4)));
27958 extern int __obstack_vprintf_chk (struct obstack *__restrict __obstack,
27959 int __flag,
27960 __const char *__restrict __format,
27961 __gnuc_va_list __args)
27962 throw () __attribute__ ((__format__ (__printf__, 3, 0)));
27963
27964
27965 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) int
27966 asprintf (char **__restrict __ptr, __const char *__restrict __fmt, ...) throw ()
27967 {
27968 return __asprintf_chk (__ptr, 2 - 1, __fmt,
27969 __builtin_va_arg_pack ());
27970 }
27971
27972 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) int
27973 __asprintf (char **__restrict __ptr, __const char *__restrict __fmt, ...) throw ()
27974
27975 {
27976 return __asprintf_chk (__ptr, 2 - 1, __fmt,
27977 __builtin_va_arg_pack ());
27978 }
27979
27980 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) int
27981 dprintf (int __fd, __const char *__restrict __fmt, ...)
27982 {
27983 return __dprintf_chk (__fd, 2 - 1, __fmt,
27984 __builtin_va_arg_pack ());
27985 }
27986
27987 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) int
27988 obstack_printf (struct obstack *__restrict __obstack, __const char *__restrict __fmt, ...) throw ()
27989
27990 {
27991 return __obstack_printf_chk (__obstack, 2 - 1, __fmt,
27992 __builtin_va_arg_pack ());
27993 }
27994 # 195 "/usr/include/bits/stdio2.h" 3 4
27995 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) int
27996 vasprintf (char **__restrict __ptr, __const char *__restrict __fmt, __gnuc_va_list __ap) throw ()
27997
27998 {
27999 return __vasprintf_chk (__ptr, 2 - 1, __fmt, __ap);
28000 }
28001
28002 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) int
28003 vdprintf (int __fd, __const char *__restrict __fmt, __gnuc_va_list __ap)
28004 {
28005 return __vdprintf_chk (__fd, 2 - 1, __fmt, __ap);
28006 }
28007
28008 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) int
28009 obstack_vprintf (struct obstack *__restrict __obstack, __const char *__restrict __fmt, __gnuc_va_list __ap) throw ()
28010
28011 {
28012 return __obstack_vprintf_chk (__obstack, 2 - 1, __fmt,
28013 __ap);
28014 }
28015
28016
28017
28018
28019
28020 extern char *__gets_chk (char *__str, size_t) __attribute__ ((__warn_unused_result__));
28021 extern char *__gets_warn (char *__str) __asm__ ("" "gets")
28022 __attribute__ ((__warn_unused_result__)) __attribute__((__warning__ ("please use fgets or getline instead, gets can't " "specify buffer size")))
28023 ;
28024
28025 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) __attribute__ ((__warn_unused_result__)) char *
28026 gets (char *__str)
28027 {
28028 if (__builtin_object_size (__str, 2 > 1) != (size_t) -1)
28029 return __gets_chk (__str, __builtin_object_size (__str, 2 > 1));
28030 return __gets_warn (__str);
28031 }
28032
28033 extern char *__fgets_chk (char *__restrict __s, size_t __size, int __n,
28034 FILE *__restrict __stream) __attribute__ ((__warn_unused_result__));
28035 extern char *__fgets_alias (char *__restrict __s, int __n, FILE *__restrict __stream) __asm__ ("" "fgets")
28036
28037 __attribute__ ((__warn_unused_result__));
28038 extern char *__fgets_chk_warn (char *__restrict __s, size_t __size, int __n, FILE *__restrict __stream) __asm__ ("" "__fgets_chk")
28039
28040
28041 __attribute__ ((__warn_unused_result__)) __attribute__((__warning__ ("fgets called with bigger size than length " "of destination buffer")))
28042 ;
28043
28044 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) __attribute__ ((__warn_unused_result__)) char *
28045 fgets (char *__restrict __s, int __n, FILE *__restrict __stream)
28046 {
28047 if (__builtin_object_size (__s, 2 > 1) != (size_t) -1)
28048 {
28049 if (!__builtin_constant_p (__n) || __n <= 0)
28050 return __fgets_chk (__s, __builtin_object_size (__s, 2 > 1), __n, __stream);
28051
28052 if ((size_t) __n > __builtin_object_size (__s, 2 > 1))
28053 return __fgets_chk_warn (__s, __builtin_object_size (__s, 2 > 1), __n, __stream);
28054 }
28055 return __fgets_alias (__s, __n, __stream);
28056 }
28057
28058 extern size_t __fread_chk (void *__restrict __ptr, size_t __ptrlen,
28059 size_t __size, size_t __n,
28060 FILE *__restrict __stream) __attribute__ ((__warn_unused_result__));
28061 extern size_t __fread_alias (void *__restrict __ptr, size_t __size, size_t __n, FILE *__restrict __stream) __asm__ ("" "fread")
28062
28063
28064 __attribute__ ((__warn_unused_result__));
28065 extern size_t __fread_chk_warn (void *__restrict __ptr, size_t __ptrlen, size_t __size, size_t __n, FILE *__restrict __stream) __asm__ ("" "__fread_chk")
28066
28067
28068
28069
28070 __attribute__ ((__warn_unused_result__)) __attribute__((__warning__ ("fread called with bigger size * nmemb than length " "of destination buffer")))
28071 ;
28072
28073 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) __attribute__ ((__warn_unused_result__)) size_t
28074 fread (void *__restrict __ptr, size_t __size, size_t __n,
28075 FILE *__restrict __stream)
28076 {
28077 if (__builtin_object_size (__ptr, 0) != (size_t) -1)
28078 {
28079 if (!__builtin_constant_p (__size)
28080 || !__builtin_constant_p (__n)
28081 || (__size | __n) >= (((size_t) 1) << (8 * sizeof (size_t) / 2)))
28082 return __fread_chk (__ptr, __builtin_object_size (__ptr, 0), __size, __n, __stream);
28083
28084 if (__size * __n > __builtin_object_size (__ptr, 0))
28085 return __fread_chk_warn (__ptr, __builtin_object_size (__ptr, 0), __size, __n, __stream);
28086 }
28087 return __fread_alias (__ptr, __size, __n, __stream);
28088 }
28089
28090
28091 extern char *__fgets_unlocked_chk (char *__restrict __s, size_t __size,
28092 int __n, FILE *__restrict __stream) __attribute__ ((__warn_unused_result__));
28093 extern char *__fgets_unlocked_alias (char *__restrict __s, int __n, FILE *__restrict __stream) __asm__ ("" "fgets_unlocked")
28094
28095 __attribute__ ((__warn_unused_result__));
28096 extern char *__fgets_unlocked_chk_warn (char *__restrict __s, size_t __size, int __n, FILE *__restrict __stream) __asm__ ("" "__fgets_unlocked_chk")
28097
28098
28099 __attribute__ ((__warn_unused_result__)) __attribute__((__warning__ ("fgets_unlocked called with bigger size than length " "of destination buffer")))
28100 ;
28101
28102 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) __attribute__ ((__warn_unused_result__)) char *
28103 fgets_unlocked (char *__restrict __s, int __n, FILE *__restrict __stream)
28104 {
28105 if (__builtin_object_size (__s, 2 > 1) != (size_t) -1)
28106 {
28107 if (!__builtin_constant_p (__n) || __n <= 0)
28108 return __fgets_unlocked_chk (__s, __builtin_object_size (__s, 2 > 1), __n, __stream);
28109
28110 if ((size_t) __n > __builtin_object_size (__s, 2 > 1))
28111 return __fgets_unlocked_chk_warn (__s, __builtin_object_size (__s, 2 > 1), __n, __stream);
28112 }
28113 return __fgets_unlocked_alias (__s, __n, __stream);
28114 }
28115
28116
28117
28118 #undef fread_unlocked
28119 extern size_t __fread_unlocked_chk (void *__restrict __ptr, size_t __ptrlen,
28120 size_t __size, size_t __n,
28121 FILE *__restrict __stream) __attribute__ ((__warn_unused_result__));
28122 extern size_t __fread_unlocked_alias (void *__restrict __ptr, size_t __size, size_t __n, FILE *__restrict __stream) __asm__ ("" "fread_unlocked")
28123
28124
28125 __attribute__ ((__warn_unused_result__));
28126 extern size_t __fread_unlocked_chk_warn (void *__restrict __ptr, size_t __ptrlen, size_t __size, size_t __n, FILE *__restrict __stream) __asm__ ("" "__fread_unlocked_chk")
28127
28128
28129
28130
28131 __attribute__ ((__warn_unused_result__)) __attribute__((__warning__ ("fread_unlocked called with bigger size * nmemb than " "length of destination buffer")))
28132 ;
28133
28134 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) __attribute__ ((__warn_unused_result__)) size_t
28135 fread_unlocked (void *__restrict __ptr, size_t __size, size_t __n,
28136 FILE *__restrict __stream)
28137 {
28138 if (__builtin_object_size (__ptr, 0) != (size_t) -1)
28139 {
28140 if (!__builtin_constant_p (__size)
28141 || !__builtin_constant_p (__n)
28142 || (__size | __n) >= (((size_t) 1) << (8 * sizeof (size_t) / 2)))
28143 return __fread_unlocked_chk (__ptr, __builtin_object_size (__ptr, 0), __size, __n,
28144 __stream);
28145
28146 if (__size * __n > __builtin_object_size (__ptr, 0))
28147 return __fread_unlocked_chk_warn (__ptr, __builtin_object_size (__ptr, 0), __size, __n,
28148 __stream);
28149 }
28150
28151
28152 if (__builtin_constant_p (__size)
28153 && __builtin_constant_p (__n)
28154 && (__size | __n) < (((size_t) 1) << (8 * sizeof (size_t) / 2))
28155 && __size * __n <= 8)
28156 {
28157 size_t __cnt = __size * __n;
28158 char *__cptr = (char *) __ptr;
28159 if (__cnt == 0)
28160 return 0;
28161
28162 for (; __cnt > 0; --__cnt)
28163 {
28164 int __c = (__builtin_expect (((__stream)->_IO_read_ptr >= (__stream)->_IO_read_end), 0) ? __uflow (__stream) : *(unsigned char *) (__stream)->_IO_read_ptr++);
28165 if (__c == (-1))
28166 break;
28167 *__cptr++ = __c;
28168 }
28169 return (__cptr - (char *) __ptr) / __size;
28170 }
28171
28172 return __fread_unlocked_alias (__ptr, __size, __n, __stream);
28173 }
28174 # 931 "/usr/include/stdio.h" 2 3 4
28175
28176
28177
28178
28179
28180 }
28181 # 16 "/usr/include/libxml2/libxml/tree.h" 2
28182
28183 # 1 "/usr/include/libxml2/libxml/xmlstring.h" 1
28184 # 12 "/usr/include/libxml2/libxml/xmlstring.h"
28185 #define __XML_STRING_H__
28186
28187
28188
28189
28190
28191 extern "C" {
28192 # 28 "/usr/include/libxml2/libxml/xmlstring.h"
28193 typedef unsigned char xmlChar;
28194
28195
28196
28197
28198
28199
28200 #define BAD_CAST (xmlChar *)
28201
28202
28203
28204
28205 xmlChar *
28206 xmlStrdup (const xmlChar *cur);
28207 xmlChar *
28208 xmlStrndup (const xmlChar *cur,
28209 int len);
28210 xmlChar *
28211 xmlCharStrndup (const char *cur,
28212 int len);
28213 xmlChar *
28214 xmlCharStrdup (const char *cur);
28215 xmlChar *
28216 xmlStrsub (const xmlChar *str,
28217 int start,
28218 int len);
28219 const xmlChar *
28220 xmlStrchr (const xmlChar *str,
28221 xmlChar val);
28222 const xmlChar *
28223 xmlStrstr (const xmlChar *str,
28224 const xmlChar *val);
28225 const xmlChar *
28226 xmlStrcasestr (const xmlChar *str,
28227 const xmlChar *val);
28228 int
28229 xmlStrcmp (const xmlChar *str1,
28230 const xmlChar *str2);
28231 int
28232 xmlStrncmp (const xmlChar *str1,
28233 const xmlChar *str2,
28234 int len);
28235 int
28236 xmlStrcasecmp (const xmlChar *str1,
28237 const xmlChar *str2);
28238 int
28239 xmlStrncasecmp (const xmlChar *str1,
28240 const xmlChar *str2,
28241 int len);
28242 int
28243 xmlStrEqual (const xmlChar *str1,
28244 const xmlChar *str2);
28245 int
28246 xmlStrQEqual (const xmlChar *pref,
28247 const xmlChar *name,
28248 const xmlChar *str);
28249 int
28250 xmlStrlen (const xmlChar *str);
28251 xmlChar *
28252 xmlStrcat (xmlChar *cur,
28253 const xmlChar *add);
28254 xmlChar *
28255 xmlStrncat (xmlChar *cur,
28256 const xmlChar *add,
28257 int len);
28258 xmlChar *
28259 xmlStrncatNew (const xmlChar *str1,
28260 const xmlChar *str2,
28261 int len);
28262 int
28263 xmlStrPrintf (xmlChar *buf,
28264 int len,
28265 const xmlChar *msg,
28266 ...);
28267 int
28268 xmlStrVPrintf (xmlChar *buf,
28269 int len,
28270 const xmlChar *msg,
28271 va_list ap);
28272
28273 int
28274 xmlGetUTF8Char (const unsigned char *utf,
28275 int *len);
28276 int
28277 xmlCheckUTF8 (const unsigned char *utf);
28278 int
28279 xmlUTF8Strsize (const xmlChar *utf,
28280 int len);
28281 xmlChar *
28282 xmlUTF8Strndup (const xmlChar *utf,
28283 int len);
28284 const xmlChar *
28285 xmlUTF8Strpos (const xmlChar *utf,
28286 int pos);
28287 int
28288 xmlUTF8Strloc (const xmlChar *utf,
28289 const xmlChar *utfchar);
28290 xmlChar *
28291 xmlUTF8Strsub (const xmlChar *utf,
28292 int start,
28293 int len);
28294 int
28295 xmlUTF8Strlen (const xmlChar *utf);
28296 int
28297 xmlUTF8Size (const xmlChar *utf);
28298 int
28299 xmlUTF8Charcmp (const xmlChar *utf1,
28300 const xmlChar *utf2);
28301
28302
28303 }
28304 # 18 "/usr/include/libxml2/libxml/tree.h" 2
28305
28306
28307 extern "C" {
28308
28309
28310
28311
28312
28313
28314 typedef struct _xmlParserInputBuffer xmlParserInputBuffer;
28315 typedef xmlParserInputBuffer *xmlParserInputBufferPtr;
28316
28317 typedef struct _xmlOutputBuffer xmlOutputBuffer;
28318 typedef xmlOutputBuffer *xmlOutputBufferPtr;
28319
28320
28321 typedef struct _xmlParserInput xmlParserInput;
28322 typedef xmlParserInput *xmlParserInputPtr;
28323
28324 typedef struct _xmlParserCtxt xmlParserCtxt;
28325 typedef xmlParserCtxt *xmlParserCtxtPtr;
28326
28327 typedef struct _xmlSAXLocator xmlSAXLocator;
28328 typedef xmlSAXLocator *xmlSAXLocatorPtr;
28329
28330 typedef struct _xmlSAXHandler xmlSAXHandler;
28331 typedef xmlSAXHandler *xmlSAXHandlerPtr;
28332
28333
28334 typedef struct _xmlEntity xmlEntity;
28335 typedef xmlEntity *xmlEntityPtr;
28336
28337
28338
28339
28340
28341
28342 #define BASE_BUFFER_SIZE 4096
28343 # 73 "/usr/include/libxml2/libxml/tree.h"
28344 typedef enum {
28345 XML_BUFFER_ALLOC_DOUBLEIT,
28346 XML_BUFFER_ALLOC_EXACT,
28347 XML_BUFFER_ALLOC_IMMUTABLE,
28348 XML_BUFFER_ALLOC_IO
28349 } xmlBufferAllocationScheme;
28350
28351
28352
28353
28354
28355
28356 typedef struct _xmlBuffer xmlBuffer;
28357 typedef xmlBuffer *xmlBufferPtr;
28358 struct _xmlBuffer {
28359 xmlChar *content;
28360 unsigned int use;
28361 unsigned int size;
28362 xmlBufferAllocationScheme alloc;
28363 xmlChar *contentIO;
28364 };
28365
28366
28367
28368
28369
28370
28371
28372 #define XML_XML_NAMESPACE (const xmlChar *) "http://www.w3.org/XML/1998/namespace"
28373
28374
28375
28376
28377
28378
28379
28380 #define XML_XML_ID (const xmlChar *) "xml:id"
28381 # 120 "/usr/include/libxml2/libxml/tree.h"
28382 typedef enum {
28383 XML_ELEMENT_NODE= 1,
28384 XML_ATTRIBUTE_NODE= 2,
28385 XML_TEXT_NODE= 3,
28386 XML_CDATA_SECTION_NODE= 4,
28387 XML_ENTITY_REF_NODE= 5,
28388 XML_ENTITY_NODE= 6,
28389 XML_PI_NODE= 7,
28390 XML_COMMENT_NODE= 8,
28391 XML_DOCUMENT_NODE= 9,
28392 XML_DOCUMENT_TYPE_NODE= 10,
28393 XML_DOCUMENT_FRAG_NODE= 11,
28394 XML_NOTATION_NODE= 12,
28395 XML_HTML_DOCUMENT_NODE= 13,
28396 XML_DTD_NODE= 14,
28397 XML_ELEMENT_DECL= 15,
28398 XML_ATTRIBUTE_DECL= 16,
28399 XML_ENTITY_DECL= 17,
28400 XML_NAMESPACE_DECL= 18,
28401 XML_XINCLUDE_START= 19,
28402 XML_XINCLUDE_END= 20
28403
28404 ,XML_DOCB_DOCUMENT_NODE= 21
28405
28406 } xmlElementType;
28407 # 153 "/usr/include/libxml2/libxml/tree.h"
28408 typedef struct _xmlNotation xmlNotation;
28409 typedef xmlNotation *xmlNotationPtr;
28410 struct _xmlNotation {
28411 const xmlChar *name;
28412 const xmlChar *PublicID;
28413 const xmlChar *SystemID;
28414 };
28415
28416
28417
28418
28419
28420
28421
28422 typedef enum {
28423 XML_ATTRIBUTE_CDATA = 1,
28424 XML_ATTRIBUTE_ID,
28425 XML_ATTRIBUTE_IDREF ,
28426 XML_ATTRIBUTE_IDREFS,
28427 XML_ATTRIBUTE_ENTITY,
28428 XML_ATTRIBUTE_ENTITIES,
28429 XML_ATTRIBUTE_NMTOKEN,
28430 XML_ATTRIBUTE_NMTOKENS,
28431 XML_ATTRIBUTE_ENUMERATION,
28432 XML_ATTRIBUTE_NOTATION
28433 } xmlAttributeType;
28434
28435
28436
28437
28438
28439
28440
28441 typedef enum {
28442 XML_ATTRIBUTE_NONE = 1,
28443 XML_ATTRIBUTE_REQUIRED,
28444 XML_ATTRIBUTE_IMPLIED,
28445 XML_ATTRIBUTE_FIXED
28446 } xmlAttributeDefault;
28447
28448
28449
28450
28451
28452
28453
28454 typedef struct _xmlEnumeration xmlEnumeration;
28455 typedef xmlEnumeration *xmlEnumerationPtr;
28456 struct _xmlEnumeration {
28457 struct _xmlEnumeration *next;
28458 const xmlChar *name;
28459 };
28460
28461
28462
28463
28464
28465
28466
28467 typedef struct _xmlAttribute xmlAttribute;
28468 typedef xmlAttribute *xmlAttributePtr;
28469 struct _xmlAttribute {
28470 void *_private;
28471 xmlElementType type;
28472 const xmlChar *name;
28473 struct _xmlNode *children;
28474 struct _xmlNode *last;
28475 struct _xmlDtd *parent;
28476 struct _xmlNode *next;
28477 struct _xmlNode *prev;
28478 struct _xmlDoc *doc;
28479
28480 struct _xmlAttribute *nexth;
28481 xmlAttributeType atype;
28482 xmlAttributeDefault def;
28483 const xmlChar *defaultValue;
28484 xmlEnumerationPtr tree;
28485 const xmlChar *prefix;
28486 const xmlChar *elem;
28487 };
28488
28489
28490
28491
28492
28493
28494 typedef enum {
28495 XML_ELEMENT_CONTENT_PCDATA = 1,
28496 XML_ELEMENT_CONTENT_ELEMENT,
28497 XML_ELEMENT_CONTENT_SEQ,
28498 XML_ELEMENT_CONTENT_OR
28499 } xmlElementContentType;
28500
28501
28502
28503
28504
28505
28506 typedef enum {
28507 XML_ELEMENT_CONTENT_ONCE = 1,
28508 XML_ELEMENT_CONTENT_OPT,
28509 XML_ELEMENT_CONTENT_MULT,
28510 XML_ELEMENT_CONTENT_PLUS
28511 } xmlElementContentOccur;
28512 # 265 "/usr/include/libxml2/libxml/tree.h"
28513 typedef struct _xmlElementContent xmlElementContent;
28514 typedef xmlElementContent *xmlElementContentPtr;
28515 struct _xmlElementContent {
28516 xmlElementContentType type;
28517 xmlElementContentOccur ocur;
28518 const xmlChar *name;
28519 struct _xmlElementContent *c1;
28520 struct _xmlElementContent *c2;
28521 struct _xmlElementContent *parent;
28522 const xmlChar *prefix;
28523 };
28524
28525
28526
28527
28528
28529
28530
28531 typedef enum {
28532 XML_ELEMENT_TYPE_UNDEFINED = 0,
28533 XML_ELEMENT_TYPE_EMPTY = 1,
28534 XML_ELEMENT_TYPE_ANY,
28535 XML_ELEMENT_TYPE_MIXED,
28536 XML_ELEMENT_TYPE_ELEMENT
28537 } xmlElementTypeVal;
28538
28539
28540 }
28541
28542 # 1 "/usr/include/libxml2/libxml/xmlregexp.h" 1
28543 # 12 "/usr/include/libxml2/libxml/xmlregexp.h"
28544 #define __XML_REGEXP_H__
28545
28546
28547
28548
28549
28550
28551 extern "C" {
28552 # 28 "/usr/include/libxml2/libxml/xmlregexp.h"
28553 typedef struct _xmlRegexp xmlRegexp;
28554 typedef xmlRegexp *xmlRegexpPtr;
28555
28556
28557
28558
28559
28560
28561 typedef struct _xmlRegExecCtxt xmlRegExecCtxt;
28562 typedef xmlRegExecCtxt *xmlRegExecCtxtPtr;
28563
28564
28565 }
28566
28567 # 1 "/usr/include/libxml2/libxml/tree.h" 1
28568 # 43 "/usr/include/libxml2/libxml/xmlregexp.h" 2
28569 # 1 "/usr/include/libxml2/libxml/dict.h" 1
28570 # 12 "/usr/include/libxml2/libxml/dict.h"
28571 #define __XML_DICT_H__
28572
28573
28574
28575
28576
28577 extern "C" {
28578
28579
28580
28581
28582
28583 typedef struct _xmlDict xmlDict;
28584 typedef xmlDict *xmlDictPtr;
28585
28586
28587
28588
28589 xmlDictPtr
28590 xmlDictCreate (void);
28591 xmlDictPtr
28592 xmlDictCreateSub(xmlDictPtr sub);
28593 int
28594 xmlDictReference(xmlDictPtr dict);
28595 void
28596 xmlDictFree (xmlDictPtr dict);
28597
28598
28599
28600
28601 const xmlChar *
28602 xmlDictLookup (xmlDictPtr dict,
28603 const xmlChar *name,
28604 int len);
28605 const xmlChar *
28606 xmlDictExists (xmlDictPtr dict,
28607 const xmlChar *name,
28608 int len);
28609 const xmlChar *
28610 xmlDictQLookup (xmlDictPtr dict,
28611 const xmlChar *prefix,
28612 const xmlChar *name);
28613 int
28614 xmlDictOwns (xmlDictPtr dict,
28615 const xmlChar *str);
28616 int
28617 xmlDictSize (xmlDictPtr dict);
28618
28619
28620
28621
28622 void
28623 xmlDictCleanup (void);
28624
28625
28626 }
28627 # 44 "/usr/include/libxml2/libxml/xmlregexp.h" 2
28628
28629 extern "C" {
28630
28631
28632
28633
28634
28635 xmlRegexpPtr
28636 xmlRegexpCompile (const xmlChar *regexp);
28637 void xmlRegFreeRegexp(xmlRegexpPtr regexp);
28638 int
28639 xmlRegexpExec (xmlRegexpPtr comp,
28640 const xmlChar *value);
28641 void
28642 xmlRegexpPrint (FILE *output,
28643 xmlRegexpPtr regexp);
28644 int
28645 xmlRegexpIsDeterminist(xmlRegexpPtr comp);
28646 # 72 "/usr/include/libxml2/libxml/xmlregexp.h"
28647 typedef void (*xmlRegExecCallbacks) (xmlRegExecCtxtPtr exec,
28648 const xmlChar *token,
28649 void *transdata,
28650 void *inputdata);
28651
28652
28653
28654
28655 xmlRegExecCtxtPtr
28656 xmlRegNewExecCtxt (xmlRegexpPtr comp,
28657 xmlRegExecCallbacks callback,
28658 void *data);
28659 void
28660 xmlRegFreeExecCtxt (xmlRegExecCtxtPtr exec);
28661 int
28662 xmlRegExecPushString(xmlRegExecCtxtPtr exec,
28663 const xmlChar *value,
28664 void *data);
28665 int
28666 xmlRegExecPushString2(xmlRegExecCtxtPtr exec,
28667 const xmlChar *value,
28668 const xmlChar *value2,
28669 void *data);
28670
28671 int
28672 xmlRegExecNextValues(xmlRegExecCtxtPtr exec,
28673 int *nbval,
28674 int *nbneg,
28675 xmlChar **values,
28676 int *terminal);
28677 int
28678 xmlRegExecErrInfo (xmlRegExecCtxtPtr exec,
28679 const xmlChar **string,
28680 int *nbval,
28681 int *nbneg,
28682 xmlChar **values,
28683 int *terminal);
28684
28685
28686
28687
28688
28689
28690
28691 typedef struct _xmlExpCtxt xmlExpCtxt;
28692 typedef xmlExpCtxt *xmlExpCtxtPtr;
28693
28694 void
28695 xmlExpFreeCtxt (xmlExpCtxtPtr ctxt);
28696 xmlExpCtxtPtr
28697 xmlExpNewCtxt (int maxNodes,
28698 xmlDictPtr dict);
28699
28700 int
28701 xmlExpCtxtNbNodes(xmlExpCtxtPtr ctxt);
28702 int
28703 xmlExpCtxtNbCons(xmlExpCtxtPtr ctxt);
28704
28705
28706 typedef struct _xmlExpNode xmlExpNode;
28707 typedef xmlExpNode *xmlExpNodePtr;
28708
28709 typedef enum {
28710 XML_EXP_EMPTY = 0,
28711 XML_EXP_FORBID = 1,
28712 XML_EXP_ATOM = 2,
28713 XML_EXP_SEQ = 3,
28714 XML_EXP_OR = 4,
28715 XML_EXP_COUNT = 5
28716 } xmlExpNodeType;
28717
28718
28719
28720
28721
28722 extern xmlExpNodePtr forbiddenExp;
28723 extern xmlExpNodePtr emptyExp;
28724
28725
28726
28727
28728 void
28729 xmlExpFree (xmlExpCtxtPtr ctxt,
28730 xmlExpNodePtr expr);
28731 void
28732 xmlExpRef (xmlExpNodePtr expr);
28733
28734
28735
28736
28737 xmlExpNodePtr
28738 xmlExpParse (xmlExpCtxtPtr ctxt,
28739 const char *expr);
28740 xmlExpNodePtr
28741 xmlExpNewAtom (xmlExpCtxtPtr ctxt,
28742 const xmlChar *name,
28743 int len);
28744 xmlExpNodePtr
28745 xmlExpNewOr (xmlExpCtxtPtr ctxt,
28746 xmlExpNodePtr left,
28747 xmlExpNodePtr right);
28748 xmlExpNodePtr
28749 xmlExpNewSeq (xmlExpCtxtPtr ctxt,
28750 xmlExpNodePtr left,
28751 xmlExpNodePtr right);
28752 xmlExpNodePtr
28753 xmlExpNewRange (xmlExpCtxtPtr ctxt,
28754 xmlExpNodePtr subset,
28755 int min,
28756 int max);
28757
28758
28759
28760 int
28761 xmlExpIsNillable(xmlExpNodePtr expr);
28762 int
28763 xmlExpMaxToken (xmlExpNodePtr expr);
28764 int
28765 xmlExpGetLanguage(xmlExpCtxtPtr ctxt,
28766 xmlExpNodePtr expr,
28767 const xmlChar**langList,
28768 int len);
28769 int
28770 xmlExpGetStart (xmlExpCtxtPtr ctxt,
28771 xmlExpNodePtr expr,
28772 const xmlChar**tokList,
28773 int len);
28774 xmlExpNodePtr
28775 xmlExpStringDerive(xmlExpCtxtPtr ctxt,
28776 xmlExpNodePtr expr,
28777 const xmlChar *str,
28778 int len);
28779 xmlExpNodePtr
28780 xmlExpExpDerive (xmlExpCtxtPtr ctxt,
28781 xmlExpNodePtr expr,
28782 xmlExpNodePtr sub);
28783 int
28784 xmlExpSubsume (xmlExpCtxtPtr ctxt,
28785 xmlExpNodePtr expr,
28786 xmlExpNodePtr sub);
28787 void
28788 xmlExpDump (xmlBufferPtr buf,
28789 xmlExpNodePtr expr);
28790
28791
28792 }
28793 # 295 "/usr/include/libxml2/libxml/tree.h" 2
28794
28795 extern "C" {
28796 # 305 "/usr/include/libxml2/libxml/tree.h"
28797 typedef struct _xmlElement xmlElement;
28798 typedef xmlElement *xmlElementPtr;
28799 struct _xmlElement {
28800 void *_private;
28801 xmlElementType type;
28802 const xmlChar *name;
28803 struct _xmlNode *children;
28804 struct _xmlNode *last;
28805 struct _xmlDtd *parent;
28806 struct _xmlNode *next;
28807 struct _xmlNode *prev;
28808 struct _xmlDoc *doc;
28809
28810 xmlElementTypeVal etype;
28811 xmlElementContentPtr content;
28812 xmlAttributePtr attributes;
28813 const xmlChar *prefix;
28814
28815 xmlRegexpPtr contModel;
28816
28817
28818
28819 };
28820
28821
28822
28823
28824
28825
28826
28827 #define XML_LOCAL_NAMESPACE XML_NAMESPACE_DECL
28828 typedef xmlElementType xmlNsType;
28829 # 348 "/usr/include/libxml2/libxml/tree.h"
28830 typedef struct _xmlNs xmlNs;
28831 typedef xmlNs *xmlNsPtr;
28832 struct _xmlNs {
28833 struct _xmlNs *next;
28834 xmlNsType type;
28835 const xmlChar *href;
28836 const xmlChar *prefix;
28837 void *_private;
28838 struct _xmlDoc *context;
28839 };
28840
28841
28842
28843
28844
28845
28846
28847 typedef struct _xmlDtd xmlDtd;
28848 typedef xmlDtd *xmlDtdPtr;
28849 struct _xmlDtd {
28850 void *_private;
28851 xmlElementType type;
28852 const xmlChar *name;
28853 struct _xmlNode *children;
28854 struct _xmlNode *last;
28855 struct _xmlDoc *parent;
28856 struct _xmlNode *next;
28857 struct _xmlNode *prev;
28858 struct _xmlDoc *doc;
28859
28860
28861 void *notations;
28862 void *elements;
28863 void *attributes;
28864 void *entities;
28865 const xmlChar *ExternalID;
28866 const xmlChar *SystemID;
28867 void *pentities;
28868 };
28869
28870
28871
28872
28873
28874
28875 typedef struct _xmlAttr xmlAttr;
28876 typedef xmlAttr *xmlAttrPtr;
28877 struct _xmlAttr {
28878 void *_private;
28879 xmlElementType type;
28880 const xmlChar *name;
28881 struct _xmlNode *children;
28882 struct _xmlNode *last;
28883 struct _xmlNode *parent;
28884 struct _xmlAttr *next;
28885 struct _xmlAttr *prev;
28886 struct _xmlDoc *doc;
28887 xmlNs *ns;
28888 xmlAttributeType atype;
28889 void *psvi;
28890 };
28891
28892
28893
28894
28895
28896
28897
28898 typedef struct _xmlID xmlID;
28899 typedef xmlID *xmlIDPtr;
28900 struct _xmlID {
28901 struct _xmlID *next;
28902 const xmlChar *value;
28903 xmlAttrPtr attr;
28904 const xmlChar *name;
28905 int lineno;
28906 struct _xmlDoc *doc;
28907 };
28908
28909
28910
28911
28912
28913
28914
28915 typedef struct _xmlRef xmlRef;
28916 typedef xmlRef *xmlRefPtr;
28917 struct _xmlRef {
28918 struct _xmlRef *next;
28919 const xmlChar *value;
28920 xmlAttrPtr attr;
28921 const xmlChar *name;
28922 int lineno;
28923 };
28924
28925
28926
28927
28928
28929
28930 typedef struct _xmlNode xmlNode;
28931 typedef xmlNode *xmlNodePtr;
28932 struct _xmlNode {
28933 void *_private;
28934 xmlElementType type;
28935 const xmlChar *name;
28936 struct _xmlNode *children;
28937 struct _xmlNode *last;
28938 struct _xmlNode *parent;
28939 struct _xmlNode *next;
28940 struct _xmlNode *prev;
28941 struct _xmlDoc *doc;
28942
28943
28944 xmlNs *ns;
28945 xmlChar *content;
28946 struct _xmlAttr *properties;
28947 xmlNs *nsDef;
28948 void *psvi;
28949 unsigned short line;
28950 unsigned short extra;
28951 };
28952
28953
28954
28955
28956
28957
28958 #define XML_GET_CONTENT(n) ((n)->type == XML_ELEMENT_NODE ? NULL : (n)->content)
28959
28960
28961
28962
28963
28964
28965
28966 #define XML_GET_LINE(n) (xmlGetLineNo(n))
28967 # 493 "/usr/include/libxml2/libxml/tree.h"
28968 typedef enum {
28969 XML_DOC_WELLFORMED = 1<<0,
28970 XML_DOC_NSVALID = 1<<1,
28971 XML_DOC_OLD10 = 1<<2,
28972 XML_DOC_DTDVALID = 1<<3,
28973 XML_DOC_XINCLUDE = 1<<4,
28974 XML_DOC_USERBUILT = 1<<5,
28975
28976 XML_DOC_INTERNAL = 1<<6,
28977 XML_DOC_HTML = 1<<7
28978 } xmlDocProperties;
28979
28980
28981
28982
28983
28984
28985 typedef struct _xmlDoc xmlDoc;
28986 typedef xmlDoc *xmlDocPtr;
28987 struct _xmlDoc {
28988 void *_private;
28989 xmlElementType type;
28990 char *name;
28991 struct _xmlNode *children;
28992 struct _xmlNode *last;
28993 struct _xmlNode *parent;
28994 struct _xmlNode *next;
28995 struct _xmlNode *prev;
28996 struct _xmlDoc *doc;
28997
28998
28999 int compression;
29000 int standalone;
29001
29002
29003
29004
29005
29006 struct _xmlDtd *intSubset;
29007 struct _xmlDtd *extSubset;
29008 struct _xmlNs *oldNs;
29009 const xmlChar *version;
29010 const xmlChar *encoding;
29011 void *ids;
29012 void *refs;
29013 const xmlChar *URL;
29014 int charset;
29015
29016 struct _xmlDict *dict;
29017 void *psvi;
29018 int parseFlags;
29019
29020 int properties;
29021
29022 };
29023
29024
29025 typedef struct _xmlDOMWrapCtxt xmlDOMWrapCtxt;
29026 typedef xmlDOMWrapCtxt *xmlDOMWrapCtxtPtr;
29027 # 564 "/usr/include/libxml2/libxml/tree.h"
29028 typedef xmlNsPtr (*xmlDOMWrapAcquireNsFunction) (xmlDOMWrapCtxtPtr ctxt,
29029 xmlNodePtr node,
29030 const xmlChar *nsName,
29031 const xmlChar *nsPrefix);
29032
29033
29034
29035
29036
29037
29038 struct _xmlDOMWrapCtxt {
29039 void * _private;
29040
29041
29042
29043
29044 int type;
29045
29046
29047
29048 void * namespaceMap;
29049
29050
29051
29052
29053 xmlDOMWrapAcquireNsFunction getNsForNodeFunc;
29054 };
29055 # 599 "/usr/include/libxml2/libxml/tree.h"
29056 #define xmlChildrenNode children
29057 # 609 "/usr/include/libxml2/libxml/tree.h"
29058 #define xmlRootNode children
29059 # 620 "/usr/include/libxml2/libxml/tree.h"
29060 int
29061 xmlValidateNCName (const xmlChar *value,
29062 int space);
29063
29064
29065
29066 int
29067 xmlValidateQName (const xmlChar *value,
29068 int space);
29069 int
29070 xmlValidateName (const xmlChar *value,
29071 int space);
29072 int
29073 xmlValidateNMToken (const xmlChar *value,
29074 int space);
29075
29076
29077 xmlChar *
29078 xmlBuildQName (const xmlChar *ncname,
29079 const xmlChar *prefix,
29080 xmlChar *memory,
29081 int len);
29082 xmlChar *
29083 xmlSplitQName2 (const xmlChar *name,
29084 xmlChar **prefix);
29085 const xmlChar *
29086 xmlSplitQName3 (const xmlChar *name,
29087 int *len);
29088
29089
29090
29091
29092
29093 void
29094 xmlSetBufferAllocationScheme(xmlBufferAllocationScheme scheme);
29095 xmlBufferAllocationScheme
29096 xmlGetBufferAllocationScheme(void);
29097
29098 xmlBufferPtr
29099 xmlBufferCreate (void);
29100 xmlBufferPtr
29101 xmlBufferCreateSize (size_t size);
29102 xmlBufferPtr
29103 xmlBufferCreateStatic (void *mem,
29104 size_t size);
29105 int
29106 xmlBufferResize (xmlBufferPtr buf,
29107 unsigned int size);
29108 void
29109 xmlBufferFree (xmlBufferPtr buf);
29110 int
29111 xmlBufferDump (FILE *file,
29112 xmlBufferPtr buf);
29113 int
29114 xmlBufferAdd (xmlBufferPtr buf,
29115 const xmlChar *str,
29116 int len);
29117 int
29118 xmlBufferAddHead (xmlBufferPtr buf,
29119 const xmlChar *str,
29120 int len);
29121 int
29122 xmlBufferCat (xmlBufferPtr buf,
29123 const xmlChar *str);
29124 int
29125 xmlBufferCCat (xmlBufferPtr buf,
29126 const char *str);
29127 int
29128 xmlBufferShrink (xmlBufferPtr buf,
29129 unsigned int len);
29130 int
29131 xmlBufferGrow (xmlBufferPtr buf,
29132 unsigned int len);
29133 void
29134 xmlBufferEmpty (xmlBufferPtr buf);
29135 const xmlChar*
29136 xmlBufferContent (const xmlBufferPtr buf);
29137 void
29138 xmlBufferSetAllocationScheme(xmlBufferPtr buf,
29139 xmlBufferAllocationScheme scheme);
29140 int
29141 xmlBufferLength (const xmlBufferPtr buf);
29142
29143
29144
29145
29146 xmlDtdPtr
29147 xmlCreateIntSubset (xmlDocPtr doc,
29148 const xmlChar *name,
29149 const xmlChar *ExternalID,
29150 const xmlChar *SystemID);
29151 xmlDtdPtr
29152 xmlNewDtd (xmlDocPtr doc,
29153 const xmlChar *name,
29154 const xmlChar *ExternalID,
29155 const xmlChar *SystemID);
29156 xmlDtdPtr
29157 xmlGetIntSubset (xmlDocPtr doc);
29158 void
29159 xmlFreeDtd (xmlDtdPtr cur);
29160
29161 xmlNsPtr
29162 xmlNewGlobalNs (xmlDocPtr doc,
29163 const xmlChar *href,
29164 const xmlChar *prefix);
29165
29166 xmlNsPtr
29167 xmlNewNs (xmlNodePtr node,
29168 const xmlChar *href,
29169 const xmlChar *prefix);
29170 void
29171 xmlFreeNs (xmlNsPtr cur);
29172 void
29173 xmlFreeNsList (xmlNsPtr cur);
29174 xmlDocPtr
29175 xmlNewDoc (const xmlChar *version);
29176 void
29177 xmlFreeDoc (xmlDocPtr cur);
29178 xmlAttrPtr
29179 xmlNewDocProp (xmlDocPtr doc,
29180 const xmlChar *name,
29181 const xmlChar *value);
29182
29183
29184 xmlAttrPtr
29185 xmlNewProp (xmlNodePtr node,
29186 const xmlChar *name,
29187 const xmlChar *value);
29188
29189 xmlAttrPtr
29190 xmlNewNsProp (xmlNodePtr node,
29191 xmlNsPtr ns,
29192 const xmlChar *name,
29193 const xmlChar *value);
29194 xmlAttrPtr
29195 xmlNewNsPropEatName (xmlNodePtr node,
29196 xmlNsPtr ns,
29197 xmlChar *name,
29198 const xmlChar *value);
29199 void
29200 xmlFreePropList (xmlAttrPtr cur);
29201 void
29202 xmlFreeProp (xmlAttrPtr cur);
29203 xmlAttrPtr
29204 xmlCopyProp (xmlNodePtr target,
29205 xmlAttrPtr cur);
29206 xmlAttrPtr
29207 xmlCopyPropList (xmlNodePtr target,
29208 xmlAttrPtr cur);
29209
29210 xmlDtdPtr
29211 xmlCopyDtd (xmlDtdPtr dtd);
29212
29213
29214 xmlDocPtr
29215 xmlCopyDoc (xmlDocPtr doc,
29216 int recursive);
29217
29218
29219
29220
29221 xmlNodePtr
29222 xmlNewDocNode (xmlDocPtr doc,
29223 xmlNsPtr ns,
29224 const xmlChar *name,
29225 const xmlChar *content);
29226 xmlNodePtr
29227 xmlNewDocNodeEatName (xmlDocPtr doc,
29228 xmlNsPtr ns,
29229 xmlChar *name,
29230 const xmlChar *content);
29231 xmlNodePtr
29232 xmlNewNode (xmlNsPtr ns,
29233 const xmlChar *name);
29234 xmlNodePtr
29235 xmlNewNodeEatName (xmlNsPtr ns,
29236 xmlChar *name);
29237
29238 xmlNodePtr
29239 xmlNewChild (xmlNodePtr parent,
29240 xmlNsPtr ns,
29241 const xmlChar *name,
29242 const xmlChar *content);
29243
29244 xmlNodePtr
29245 xmlNewDocText (xmlDocPtr doc,
29246 const xmlChar *content);
29247 xmlNodePtr
29248 xmlNewText (const xmlChar *content);
29249 xmlNodePtr
29250 xmlNewDocPI (xmlDocPtr doc,
29251 const xmlChar *name,
29252 const xmlChar *content);
29253 xmlNodePtr
29254 xmlNewPI (const xmlChar *name,
29255 const xmlChar *content);
29256 xmlNodePtr
29257 xmlNewDocTextLen (xmlDocPtr doc,
29258 const xmlChar *content,
29259 int len);
29260 xmlNodePtr
29261 xmlNewTextLen (const xmlChar *content,
29262 int len);
29263 xmlNodePtr
29264 xmlNewDocComment (xmlDocPtr doc,
29265 const xmlChar *content);
29266 xmlNodePtr
29267 xmlNewComment (const xmlChar *content);
29268 xmlNodePtr
29269 xmlNewCDataBlock (xmlDocPtr doc,
29270 const xmlChar *content,
29271 int len);
29272 xmlNodePtr
29273 xmlNewCharRef (xmlDocPtr doc,
29274 const xmlChar *name);
29275 xmlNodePtr
29276 xmlNewReference (xmlDocPtr doc,
29277 const xmlChar *name);
29278 xmlNodePtr
29279 xmlCopyNode (const xmlNodePtr node,
29280 int recursive);
29281 xmlNodePtr
29282 xmlDocCopyNode (const xmlNodePtr node,
29283 xmlDocPtr doc,
29284 int recursive);
29285 xmlNodePtr
29286 xmlDocCopyNodeList (xmlDocPtr doc,
29287 const xmlNodePtr node);
29288 xmlNodePtr
29289 xmlCopyNodeList (const xmlNodePtr node);
29290
29291 xmlNodePtr
29292 xmlNewTextChild (xmlNodePtr parent,
29293 xmlNsPtr ns,
29294 const xmlChar *name,
29295 const xmlChar *content);
29296 xmlNodePtr
29297 xmlNewDocRawNode (xmlDocPtr doc,
29298 xmlNsPtr ns,
29299 const xmlChar *name,
29300 const xmlChar *content);
29301 xmlNodePtr
29302 xmlNewDocFragment (xmlDocPtr doc);
29303
29304
29305
29306
29307
29308 long
29309 xmlGetLineNo (xmlNodePtr node);
29310
29311 xmlChar *
29312 xmlGetNodePath (xmlNodePtr node);
29313
29314 xmlNodePtr
29315 xmlDocGetRootElement (xmlDocPtr doc);
29316 xmlNodePtr
29317 xmlGetLastChild (xmlNodePtr parent);
29318 int
29319 xmlNodeIsText (xmlNodePtr node);
29320 int
29321 xmlIsBlankNode (xmlNodePtr node);
29322
29323
29324
29325
29326
29327 xmlNodePtr
29328 xmlDocSetRootElement (xmlDocPtr doc,
29329 xmlNodePtr root);
29330
29331
29332 void
29333 xmlNodeSetName (xmlNodePtr cur,
29334 const xmlChar *name);
29335
29336 xmlNodePtr
29337 xmlAddChild (xmlNodePtr parent,
29338 xmlNodePtr cur);
29339 xmlNodePtr
29340 xmlAddChildList (xmlNodePtr parent,
29341 xmlNodePtr cur);
29342
29343 xmlNodePtr
29344 xmlReplaceNode (xmlNodePtr old,
29345 xmlNodePtr cur);
29346
29347
29348
29349 xmlNodePtr
29350 xmlAddPrevSibling (xmlNodePtr cur,
29351 xmlNodePtr elem);
29352
29353 xmlNodePtr
29354 xmlAddSibling (xmlNodePtr cur,
29355 xmlNodePtr elem);
29356 xmlNodePtr
29357 xmlAddNextSibling (xmlNodePtr cur,
29358 xmlNodePtr elem);
29359 void
29360 xmlUnlinkNode (xmlNodePtr cur);
29361 xmlNodePtr
29362 xmlTextMerge (xmlNodePtr first,
29363 xmlNodePtr second);
29364 int
29365 xmlTextConcat (xmlNodePtr node,
29366 const xmlChar *content,
29367 int len);
29368 void
29369 xmlFreeNodeList (xmlNodePtr cur);
29370 void
29371 xmlFreeNode (xmlNodePtr cur);
29372 void
29373 xmlSetTreeDoc (xmlNodePtr tree,
29374 xmlDocPtr doc);
29375 void
29376 xmlSetListDoc (xmlNodePtr list,
29377 xmlDocPtr doc);
29378
29379
29380
29381 xmlNsPtr
29382 xmlSearchNs (xmlDocPtr doc,
29383 xmlNodePtr node,
29384 const xmlChar *nameSpace);
29385 xmlNsPtr
29386 xmlSearchNsByHref (xmlDocPtr doc,
29387 xmlNodePtr node,
29388 const xmlChar *href);
29389
29390 xmlNsPtr *
29391 xmlGetNsList (xmlDocPtr doc,
29392 xmlNodePtr node);
29393
29394
29395 void
29396 xmlSetNs (xmlNodePtr node,
29397 xmlNsPtr ns);
29398 xmlNsPtr
29399 xmlCopyNamespace (xmlNsPtr cur);
29400 xmlNsPtr
29401 xmlCopyNamespaceList (xmlNsPtr cur);
29402
29403
29404
29405
29406
29407 xmlAttrPtr
29408 xmlSetProp (xmlNodePtr node,
29409 const xmlChar *name,
29410 const xmlChar *value);
29411 xmlAttrPtr
29412 xmlSetNsProp (xmlNodePtr node,
29413 xmlNsPtr ns,
29414 const xmlChar *name,
29415 const xmlChar *value);
29416
29417 xmlChar *
29418 xmlGetNoNsProp (xmlNodePtr node,
29419 const xmlChar *name);
29420 xmlChar *
29421 xmlGetProp (xmlNodePtr node,
29422 const xmlChar *name);
29423 xmlAttrPtr
29424 xmlHasProp (xmlNodePtr node,
29425 const xmlChar *name);
29426 xmlAttrPtr
29427 xmlHasNsProp (xmlNodePtr node,
29428 const xmlChar *name,
29429 const xmlChar *nameSpace);
29430 xmlChar *
29431 xmlGetNsProp (xmlNodePtr node,
29432 const xmlChar *name,
29433 const xmlChar *nameSpace);
29434 xmlNodePtr
29435 xmlStringGetNodeList (xmlDocPtr doc,
29436 const xmlChar *value);
29437 xmlNodePtr
29438 xmlStringLenGetNodeList (xmlDocPtr doc,
29439 const xmlChar *value,
29440 int len);
29441 xmlChar *
29442 xmlNodeListGetString (xmlDocPtr doc,
29443 xmlNodePtr list,
29444 int inLine);
29445
29446 xmlChar *
29447 xmlNodeListGetRawString (xmlDocPtr doc,
29448 xmlNodePtr list,
29449 int inLine);
29450
29451 void
29452 xmlNodeSetContent (xmlNodePtr cur,
29453 const xmlChar *content);
29454
29455 void
29456 xmlNodeSetContentLen (xmlNodePtr cur,
29457 const xmlChar *content,
29458 int len);
29459
29460 void
29461 xmlNodeAddContent (xmlNodePtr cur,
29462 const xmlChar *content);
29463 void
29464 xmlNodeAddContentLen (xmlNodePtr cur,
29465 const xmlChar *content,
29466 int len);
29467 xmlChar *
29468 xmlNodeGetContent (xmlNodePtr cur);
29469 int
29470 xmlNodeBufGetContent (xmlBufferPtr buffer,
29471 xmlNodePtr cur);
29472 xmlChar *
29473 xmlNodeGetLang (xmlNodePtr cur);
29474 int
29475 xmlNodeGetSpacePreserve (xmlNodePtr cur);
29476
29477 void
29478 xmlNodeSetLang (xmlNodePtr cur,
29479 const xmlChar *lang);
29480 void
29481 xmlNodeSetSpacePreserve (xmlNodePtr cur,
29482 int val);
29483
29484 xmlChar *
29485 xmlNodeGetBase (xmlDocPtr doc,
29486 xmlNodePtr cur);
29487
29488 void
29489 xmlNodeSetBase (xmlNodePtr cur,
29490 const xmlChar *uri);
29491
29492
29493
29494
29495
29496 int
29497 xmlRemoveProp (xmlAttrPtr cur);
29498
29499 int
29500 xmlUnsetNsProp (xmlNodePtr node,
29501 xmlNsPtr ns,
29502 const xmlChar *name);
29503 int
29504 xmlUnsetProp (xmlNodePtr node,
29505 const xmlChar *name);
29506
29507
29508
29509
29510
29511 void
29512 xmlBufferWriteCHAR (xmlBufferPtr buf,
29513 const xmlChar *string);
29514 void
29515 xmlBufferWriteChar (xmlBufferPtr buf,
29516 const char *string);
29517 void
29518 xmlBufferWriteQuotedString(xmlBufferPtr buf,
29519 const xmlChar *string);
29520
29521
29522 void xmlAttrSerializeTxtContent(xmlBufferPtr buf,
29523 xmlDocPtr doc,
29524 xmlAttrPtr attr,
29525 const xmlChar *string);
29526
29527
29528
29529
29530
29531
29532 int
29533 xmlReconciliateNs (xmlDocPtr doc,
29534 xmlNodePtr tree);
29535
29536
29537
29538
29539
29540
29541 void
29542 xmlDocDumpFormatMemory (xmlDocPtr cur,
29543 xmlChar **mem,
29544 int *size,
29545 int format);
29546 void
29547 xmlDocDumpMemory (xmlDocPtr cur,
29548 xmlChar **mem,
29549 int *size);
29550 void
29551 xmlDocDumpMemoryEnc (xmlDocPtr out_doc,
29552 xmlChar **doc_txt_ptr,
29553 int * doc_txt_len,
29554 const char *txt_encoding);
29555 void
29556 xmlDocDumpFormatMemoryEnc(xmlDocPtr out_doc,
29557 xmlChar **doc_txt_ptr,
29558 int * doc_txt_len,
29559 const char *txt_encoding,
29560 int format);
29561 int
29562 xmlDocFormatDump (FILE *f,
29563 xmlDocPtr cur,
29564 int format);
29565 int
29566 xmlDocDump (FILE *f,
29567 xmlDocPtr cur);
29568 void
29569 xmlElemDump (FILE *f,
29570 xmlDocPtr doc,
29571 xmlNodePtr cur);
29572 int
29573 xmlSaveFile (const char *filename,
29574 xmlDocPtr cur);
29575 int
29576 xmlSaveFormatFile (const char *filename,
29577 xmlDocPtr cur,
29578 int format);
29579 int
29580 xmlNodeDump (xmlBufferPtr buf,
29581 xmlDocPtr doc,
29582 xmlNodePtr cur,
29583 int level,
29584 int format);
29585
29586 int
29587 xmlSaveFileTo (xmlOutputBufferPtr buf,
29588 xmlDocPtr cur,
29589 const char *encoding);
29590 int
29591 xmlSaveFormatFileTo (xmlOutputBufferPtr buf,
29592 xmlDocPtr cur,
29593 const char *encoding,
29594 int format);
29595 void
29596 xmlNodeDumpOutput (xmlOutputBufferPtr buf,
29597 xmlDocPtr doc,
29598 xmlNodePtr cur,
29599 int level,
29600 int format,
29601 const char *encoding);
29602
29603 int
29604 xmlSaveFormatFileEnc (const char *filename,
29605 xmlDocPtr cur,
29606 const char *encoding,
29607 int format);
29608
29609 int
29610 xmlSaveFileEnc (const char *filename,
29611 xmlDocPtr cur,
29612 const char *encoding);
29613
29614
29615
29616
29617
29618 int
29619 xmlIsXHTML (const xmlChar *systemID,
29620 const xmlChar *publicID);
29621
29622
29623
29624
29625 int
29626 xmlGetDocCompressMode (xmlDocPtr doc);
29627 void
29628 xmlSetDocCompressMode (xmlDocPtr doc,
29629 int mode);
29630 int
29631 xmlGetCompressMode (void);
29632 void
29633 xmlSetCompressMode (int mode);
29634
29635
29636
29637
29638 xmlDOMWrapCtxtPtr
29639 xmlDOMWrapNewCtxt (void);
29640 void
29641 xmlDOMWrapFreeCtxt (xmlDOMWrapCtxtPtr ctxt);
29642 int
29643 xmlDOMWrapReconcileNamespaces(xmlDOMWrapCtxtPtr ctxt,
29644 xmlNodePtr elem,
29645 int options);
29646 int
29647 xmlDOMWrapAdoptNode (xmlDOMWrapCtxtPtr ctxt,
29648 xmlDocPtr sourceDoc,
29649 xmlNodePtr node,
29650 xmlDocPtr destDoc,
29651 xmlNodePtr destParent,
29652 int options);
29653 int
29654 xmlDOMWrapRemoveNode (xmlDOMWrapCtxtPtr ctxt,
29655 xmlDocPtr doc,
29656 xmlNodePtr node,
29657 int options);
29658 int
29659 xmlDOMWrapCloneNode (xmlDOMWrapCtxtPtr ctxt,
29660 xmlDocPtr sourceDoc,
29661 xmlNodePtr node,
29662 xmlNodePtr *clonedNode,
29663 xmlDocPtr destDoc,
29664 xmlNodePtr destParent,
29665 int deep,
29666 int options);
29667
29668
29669
29670
29671
29672
29673 unsigned long
29674 xmlChildElementCount (xmlNodePtr parent);
29675 xmlNodePtr
29676 xmlNextElementSibling (xmlNodePtr node);
29677 xmlNodePtr
29678 xmlFirstElementChild (xmlNodePtr parent);
29679 xmlNodePtr
29680 xmlLastElementChild (xmlNodePtr parent);
29681 xmlNodePtr
29682 xmlPreviousElementSibling (xmlNodePtr node);
29683
29684
29685 }
29686 # 17 "/usr/include/libxml2/libxml/parser.h" 2
29687
29688 # 1 "/usr/include/libxml2/libxml/hash.h" 1
29689 # 12 "/usr/include/libxml2/libxml/hash.h"
29690 #define __XML_HASH_H__
29691
29692
29693 extern "C" {
29694
29695
29696
29697
29698
29699 typedef struct _xmlHashTable xmlHashTable;
29700 typedef xmlHashTable *xmlHashTablePtr;
29701
29702
29703 }
29704
29705
29706
29707 # 1 "/usr/include/libxml2/libxml/parser.h" 1
29708 # 30 "/usr/include/libxml2/libxml/hash.h" 2
29709
29710
29711
29712 extern "C" {
29713 # 56 "/usr/include/libxml2/libxml/hash.h"
29714 #define XML_CAST_FPTR(fptr) fptr
29715 # 69 "/usr/include/libxml2/libxml/hash.h"
29716 typedef void (*xmlHashDeallocator)(void *payload, xmlChar *name);
29717 # 79 "/usr/include/libxml2/libxml/hash.h"
29718 typedef void *(*xmlHashCopier)(void *payload, xmlChar *name);
29719 # 88 "/usr/include/libxml2/libxml/hash.h"
29720 typedef void (*xmlHashScanner)(void *payload, void *data, xmlChar *name);
29721 # 99 "/usr/include/libxml2/libxml/hash.h"
29722 typedef void (*xmlHashScannerFull)(void *payload, void *data,
29723 const xmlChar *name, const xmlChar *name2,
29724 const xmlChar *name3);
29725
29726
29727
29728
29729 xmlHashTablePtr
29730 xmlHashCreate (int size);
29731 xmlHashTablePtr
29732 xmlHashCreateDict(int size,
29733 xmlDictPtr dict);
29734 void
29735 xmlHashFree (xmlHashTablePtr table,
29736 xmlHashDeallocator f);
29737
29738
29739
29740
29741 int
29742 xmlHashAddEntry (xmlHashTablePtr table,
29743 const xmlChar *name,
29744 void *userdata);
29745 int
29746 xmlHashUpdateEntry(xmlHashTablePtr table,
29747 const xmlChar *name,
29748 void *userdata,
29749 xmlHashDeallocator f);
29750 int
29751 xmlHashAddEntry2(xmlHashTablePtr table,
29752 const xmlChar *name,
29753 const xmlChar *name2,
29754 void *userdata);
29755 int
29756 xmlHashUpdateEntry2(xmlHashTablePtr table,
29757 const xmlChar *name,
29758 const xmlChar *name2,
29759 void *userdata,
29760 xmlHashDeallocator f);
29761 int
29762 xmlHashAddEntry3(xmlHashTablePtr table,
29763 const xmlChar *name,
29764 const xmlChar *name2,
29765 const xmlChar *name3,
29766 void *userdata);
29767 int
29768 xmlHashUpdateEntry3(xmlHashTablePtr table,
29769 const xmlChar *name,
29770 const xmlChar *name2,
29771 const xmlChar *name3,
29772 void *userdata,
29773 xmlHashDeallocator f);
29774
29775
29776
29777
29778 int
29779 xmlHashRemoveEntry(xmlHashTablePtr table, const xmlChar *name,
29780 xmlHashDeallocator f);
29781 int
29782 xmlHashRemoveEntry2(xmlHashTablePtr table, const xmlChar *name,
29783 const xmlChar *name2, xmlHashDeallocator f);
29784 int
29785 xmlHashRemoveEntry3(xmlHashTablePtr table, const xmlChar *name,
29786 const xmlChar *name2, const xmlChar *name3,
29787 xmlHashDeallocator f);
29788
29789
29790
29791
29792 void *
29793 xmlHashLookup (xmlHashTablePtr table,
29794 const xmlChar *name);
29795 void *
29796 xmlHashLookup2 (xmlHashTablePtr table,
29797 const xmlChar *name,
29798 const xmlChar *name2);
29799 void *
29800 xmlHashLookup3 (xmlHashTablePtr table,
29801 const xmlChar *name,
29802 const xmlChar *name2,
29803 const xmlChar *name3);
29804 void *
29805 xmlHashQLookup (xmlHashTablePtr table,
29806 const xmlChar *name,
29807 const xmlChar *prefix);
29808 void *
29809 xmlHashQLookup2 (xmlHashTablePtr table,
29810 const xmlChar *name,
29811 const xmlChar *prefix,
29812 const xmlChar *name2,
29813 const xmlChar *prefix2);
29814 void *
29815 xmlHashQLookup3 (xmlHashTablePtr table,
29816 const xmlChar *name,
29817 const xmlChar *prefix,
29818 const xmlChar *name2,
29819 const xmlChar *prefix2,
29820 const xmlChar *name3,
29821 const xmlChar *prefix3);
29822
29823
29824
29825
29826 xmlHashTablePtr
29827 xmlHashCopy (xmlHashTablePtr table,
29828 xmlHashCopier f);
29829 int
29830 xmlHashSize (xmlHashTablePtr table);
29831 void
29832 xmlHashScan (xmlHashTablePtr table,
29833 xmlHashScanner f,
29834 void *data);
29835 void
29836 xmlHashScan3 (xmlHashTablePtr table,
29837 const xmlChar *name,
29838 const xmlChar *name2,
29839 const xmlChar *name3,
29840 xmlHashScanner f,
29841 void *data);
29842 void
29843 xmlHashScanFull (xmlHashTablePtr table,
29844 xmlHashScannerFull f,
29845 void *data);
29846 void
29847 xmlHashScanFull3(xmlHashTablePtr table,
29848 const xmlChar *name,
29849 const xmlChar *name2,
29850 const xmlChar *name3,
29851 xmlHashScannerFull f,
29852 void *data);
29853
29854 }
29855 # 19 "/usr/include/libxml2/libxml/parser.h" 2
29856 # 1 "/usr/include/libxml2/libxml/valid.h" 1
29857 # 12 "/usr/include/libxml2/libxml/valid.h"
29858 #define __XML_VALID_H__
29859
29860
29861 # 1 "/usr/include/libxml2/libxml/xmlerror.h" 1
29862 # 13 "/usr/include/libxml2/libxml/xmlerror.h"
29863 #define __XML_ERROR_H__
29864
29865
29866 extern "C" {
29867
29868
29869
29870
29871
29872
29873
29874 typedef enum {
29875 XML_ERR_NONE = 0,
29876 XML_ERR_WARNING = 1,
29877 XML_ERR_ERROR = 2,
29878 XML_ERR_FATAL = 3
29879 } xmlErrorLevel;
29880
29881
29882
29883
29884
29885
29886 typedef enum {
29887 XML_FROM_NONE = 0,
29888 XML_FROM_PARSER,
29889 XML_FROM_TREE,
29890 XML_FROM_NAMESPACE,
29891 XML_FROM_DTD,
29892 XML_FROM_HTML,
29893 XML_FROM_MEMORY,
29894 XML_FROM_OUTPUT,
29895 XML_FROM_IO,
29896 XML_FROM_FTP,
29897 XML_FROM_HTTP,
29898 XML_FROM_XINCLUDE,
29899 XML_FROM_XPATH,
29900 XML_FROM_XPOINTER,
29901 XML_FROM_REGEXP,
29902 XML_FROM_DATATYPE,
29903 XML_FROM_SCHEMASP,
29904 XML_FROM_SCHEMASV,
29905 XML_FROM_RELAXNGP,
29906 XML_FROM_RELAXNGV,
29907 XML_FROM_CATALOG,
29908 XML_FROM_C14N,
29909 XML_FROM_XSLT,
29910 XML_FROM_VALID,
29911 XML_FROM_CHECK,
29912 XML_FROM_WRITER,
29913 XML_FROM_MODULE,
29914 XML_FROM_I18N,
29915 XML_FROM_SCHEMATRONV
29916 } xmlErrorDomain;
29917
29918
29919
29920
29921
29922
29923
29924 typedef struct _xmlError xmlError;
29925 typedef xmlError *xmlErrorPtr;
29926 struct _xmlError {
29927 int domain;
29928 int code;
29929 char *message;
29930 xmlErrorLevel level;
29931 char *file;
29932 int line;
29933 char *str1;
29934 char *str2;
29935 char *str3;
29936 int int1;
29937 int int2;
29938 void *ctxt;
29939 void *node;
29940 };
29941
29942
29943
29944
29945
29946
29947 typedef enum {
29948 XML_ERR_OK = 0,
29949 XML_ERR_INTERNAL_ERROR,
29950 XML_ERR_NO_MEMORY,
29951 XML_ERR_DOCUMENT_START,
29952 XML_ERR_DOCUMENT_EMPTY,
29953 XML_ERR_DOCUMENT_END,
29954 XML_ERR_INVALID_HEX_CHARREF,
29955 XML_ERR_INVALID_DEC_CHARREF,
29956 XML_ERR_INVALID_CHARREF,
29957 XML_ERR_INVALID_CHAR,
29958 XML_ERR_CHARREF_AT_EOF,
29959 XML_ERR_CHARREF_IN_PROLOG,
29960 XML_ERR_CHARREF_IN_EPILOG,
29961 XML_ERR_CHARREF_IN_DTD,
29962 XML_ERR_ENTITYREF_AT_EOF,
29963 XML_ERR_ENTITYREF_IN_PROLOG,
29964 XML_ERR_ENTITYREF_IN_EPILOG,
29965 XML_ERR_ENTITYREF_IN_DTD,
29966 XML_ERR_PEREF_AT_EOF,
29967 XML_ERR_PEREF_IN_PROLOG,
29968 XML_ERR_PEREF_IN_EPILOG,
29969 XML_ERR_PEREF_IN_INT_SUBSET,
29970 XML_ERR_ENTITYREF_NO_NAME,
29971 XML_ERR_ENTITYREF_SEMICOL_MISSING,
29972 XML_ERR_PEREF_NO_NAME,
29973 XML_ERR_PEREF_SEMICOL_MISSING,
29974 XML_ERR_UNDECLARED_ENTITY,
29975 XML_WAR_UNDECLARED_ENTITY,
29976 XML_ERR_UNPARSED_ENTITY,
29977 XML_ERR_ENTITY_IS_EXTERNAL,
29978 XML_ERR_ENTITY_IS_PARAMETER,
29979 XML_ERR_UNKNOWN_ENCODING,
29980 XML_ERR_UNSUPPORTED_ENCODING,
29981 XML_ERR_STRING_NOT_STARTED,
29982 XML_ERR_STRING_NOT_CLOSED,
29983 XML_ERR_NS_DECL_ERROR,
29984 XML_ERR_ENTITY_NOT_STARTED,
29985 XML_ERR_ENTITY_NOT_FINISHED,
29986 XML_ERR_LT_IN_ATTRIBUTE,
29987 XML_ERR_ATTRIBUTE_NOT_STARTED,
29988 XML_ERR_ATTRIBUTE_NOT_FINISHED,
29989 XML_ERR_ATTRIBUTE_WITHOUT_VALUE,
29990 XML_ERR_ATTRIBUTE_REDEFINED,
29991 XML_ERR_LITERAL_NOT_STARTED,
29992 XML_ERR_LITERAL_NOT_FINISHED,
29993 XML_ERR_COMMENT_NOT_FINISHED,
29994 XML_ERR_PI_NOT_STARTED,
29995 XML_ERR_PI_NOT_FINISHED,
29996 XML_ERR_NOTATION_NOT_STARTED,
29997 XML_ERR_NOTATION_NOT_FINISHED,
29998 XML_ERR_ATTLIST_NOT_STARTED,
29999 XML_ERR_ATTLIST_NOT_FINISHED,
30000 XML_ERR_MIXED_NOT_STARTED,
30001 XML_ERR_MIXED_NOT_FINISHED,
30002 XML_ERR_ELEMCONTENT_NOT_STARTED,
30003 XML_ERR_ELEMCONTENT_NOT_FINISHED,
30004 XML_ERR_XMLDECL_NOT_STARTED,
30005 XML_ERR_XMLDECL_NOT_FINISHED,
30006 XML_ERR_CONDSEC_NOT_STARTED,
30007 XML_ERR_CONDSEC_NOT_FINISHED,
30008 XML_ERR_EXT_SUBSET_NOT_FINISHED,
30009 XML_ERR_DOCTYPE_NOT_FINISHED,
30010 XML_ERR_MISPLACED_CDATA_END,
30011 XML_ERR_CDATA_NOT_FINISHED,
30012 XML_ERR_RESERVED_XML_NAME,
30013 XML_ERR_SPACE_REQUIRED,
30014 XML_ERR_SEPARATOR_REQUIRED,
30015 XML_ERR_NMTOKEN_REQUIRED,
30016 XML_ERR_NAME_REQUIRED,
30017 XML_ERR_PCDATA_REQUIRED,
30018 XML_ERR_URI_REQUIRED,
30019 XML_ERR_PUBID_REQUIRED,
30020 XML_ERR_LT_REQUIRED,
30021 XML_ERR_GT_REQUIRED,
30022 XML_ERR_LTSLASH_REQUIRED,
30023 XML_ERR_EQUAL_REQUIRED,
30024 XML_ERR_TAG_NAME_MISMATCH,
30025 XML_ERR_TAG_NOT_FINISHED,
30026 XML_ERR_STANDALONE_VALUE,
30027 XML_ERR_ENCODING_NAME,
30028 XML_ERR_HYPHEN_IN_COMMENT,
30029 XML_ERR_INVALID_ENCODING,
30030 XML_ERR_EXT_ENTITY_STANDALONE,
30031 XML_ERR_CONDSEC_INVALID,
30032 XML_ERR_VALUE_REQUIRED,
30033 XML_ERR_NOT_WELL_BALANCED,
30034 XML_ERR_EXTRA_CONTENT,
30035 XML_ERR_ENTITY_CHAR_ERROR,
30036 XML_ERR_ENTITY_PE_INTERNAL,
30037 XML_ERR_ENTITY_LOOP,
30038 XML_ERR_ENTITY_BOUNDARY,
30039 XML_ERR_INVALID_URI,
30040 XML_ERR_URI_FRAGMENT,
30041 XML_WAR_CATALOG_PI,
30042 XML_ERR_NO_DTD,
30043 XML_ERR_CONDSEC_INVALID_KEYWORD,
30044 XML_ERR_VERSION_MISSING,
30045 XML_WAR_UNKNOWN_VERSION,
30046 XML_WAR_LANG_VALUE,
30047 XML_WAR_NS_URI,
30048 XML_WAR_NS_URI_RELATIVE,
30049 XML_ERR_MISSING_ENCODING,
30050 XML_WAR_SPACE_VALUE,
30051 XML_ERR_NOT_STANDALONE,
30052 XML_ERR_ENTITY_PROCESSING,
30053 XML_ERR_NOTATION_PROCESSING,
30054 XML_WAR_NS_COLUMN,
30055 XML_WAR_ENTITY_REDEFINED,
30056 XML_ERR_UNKNOWN_VERSION,
30057 XML_ERR_VERSION_MISMATCH,
30058 XML_NS_ERR_XML_NAMESPACE = 200,
30059 XML_NS_ERR_UNDEFINED_NAMESPACE,
30060 XML_NS_ERR_QNAME,
30061 XML_NS_ERR_ATTRIBUTE_REDEFINED,
30062 XML_NS_ERR_EMPTY,
30063 XML_NS_ERR_COLON,
30064 XML_DTD_ATTRIBUTE_DEFAULT = 500,
30065 XML_DTD_ATTRIBUTE_REDEFINED,
30066 XML_DTD_ATTRIBUTE_VALUE,
30067 XML_DTD_CONTENT_ERROR,
30068 XML_DTD_CONTENT_MODEL,
30069 XML_DTD_CONTENT_NOT_DETERMINIST,
30070 XML_DTD_DIFFERENT_PREFIX,
30071 XML_DTD_ELEM_DEFAULT_NAMESPACE,
30072 XML_DTD_ELEM_NAMESPACE,
30073 XML_DTD_ELEM_REDEFINED,
30074 XML_DTD_EMPTY_NOTATION,
30075 XML_DTD_ENTITY_TYPE,
30076 XML_DTD_ID_FIXED,
30077 XML_DTD_ID_REDEFINED,
30078 XML_DTD_ID_SUBSET,
30079 XML_DTD_INVALID_CHILD,
30080 XML_DTD_INVALID_DEFAULT,
30081 XML_DTD_LOAD_ERROR,
30082 XML_DTD_MISSING_ATTRIBUTE,
30083 XML_DTD_MIXED_CORRUPT,
30084 XML_DTD_MULTIPLE_ID,
30085 XML_DTD_NO_DOC,
30086 XML_DTD_NO_DTD,
30087 XML_DTD_NO_ELEM_NAME,
30088 XML_DTD_NO_PREFIX,
30089 XML_DTD_NO_ROOT,
30090 XML_DTD_NOTATION_REDEFINED,
30091 XML_DTD_NOTATION_VALUE,
30092 XML_DTD_NOT_EMPTY,
30093 XML_DTD_NOT_PCDATA,
30094 XML_DTD_NOT_STANDALONE,
30095 XML_DTD_ROOT_NAME,
30096 XML_DTD_STANDALONE_WHITE_SPACE,
30097 XML_DTD_UNKNOWN_ATTRIBUTE,
30098 XML_DTD_UNKNOWN_ELEM,
30099 XML_DTD_UNKNOWN_ENTITY,
30100 XML_DTD_UNKNOWN_ID,
30101 XML_DTD_UNKNOWN_NOTATION,
30102 XML_DTD_STANDALONE_DEFAULTED,
30103 XML_DTD_XMLID_VALUE,
30104 XML_DTD_XMLID_TYPE,
30105 XML_DTD_DUP_TOKEN,
30106 XML_HTML_STRUCURE_ERROR = 800,
30107 XML_HTML_UNKNOWN_TAG,
30108 XML_RNGP_ANYNAME_ATTR_ANCESTOR = 1000,
30109 XML_RNGP_ATTR_CONFLICT,
30110 XML_RNGP_ATTRIBUTE_CHILDREN,
30111 XML_RNGP_ATTRIBUTE_CONTENT,
30112 XML_RNGP_ATTRIBUTE_EMPTY,
30113 XML_RNGP_ATTRIBUTE_NOOP,
30114 XML_RNGP_CHOICE_CONTENT,
30115 XML_RNGP_CHOICE_EMPTY,
30116 XML_RNGP_CREATE_FAILURE,
30117 XML_RNGP_DATA_CONTENT,
30118 XML_RNGP_DEF_CHOICE_AND_INTERLEAVE,
30119 XML_RNGP_DEFINE_CREATE_FAILED,
30120 XML_RNGP_DEFINE_EMPTY,
30121 XML_RNGP_DEFINE_MISSING,
30122 XML_RNGP_DEFINE_NAME_MISSING,
30123 XML_RNGP_ELEM_CONTENT_EMPTY,
30124 XML_RNGP_ELEM_CONTENT_ERROR,
30125 XML_RNGP_ELEMENT_EMPTY,
30126 XML_RNGP_ELEMENT_CONTENT,
30127 XML_RNGP_ELEMENT_NAME,
30128 XML_RNGP_ELEMENT_NO_CONTENT,
30129 XML_RNGP_ELEM_TEXT_CONFLICT,
30130 XML_RNGP_EMPTY,
30131 XML_RNGP_EMPTY_CONSTRUCT,
30132 XML_RNGP_EMPTY_CONTENT,
30133 XML_RNGP_EMPTY_NOT_EMPTY,
30134 XML_RNGP_ERROR_TYPE_LIB,
30135 XML_RNGP_EXCEPT_EMPTY,
30136 XML_RNGP_EXCEPT_MISSING,
30137 XML_RNGP_EXCEPT_MULTIPLE,
30138 XML_RNGP_EXCEPT_NO_CONTENT,
30139 XML_RNGP_EXTERNALREF_EMTPY,
30140 XML_RNGP_EXTERNAL_REF_FAILURE,
30141 XML_RNGP_EXTERNALREF_RECURSE,
30142 XML_RNGP_FORBIDDEN_ATTRIBUTE,
30143 XML_RNGP_FOREIGN_ELEMENT,
30144 XML_RNGP_GRAMMAR_CONTENT,
30145 XML_RNGP_GRAMMAR_EMPTY,
30146 XML_RNGP_GRAMMAR_MISSING,
30147 XML_RNGP_GRAMMAR_NO_START,
30148 XML_RNGP_GROUP_ATTR_CONFLICT,
30149 XML_RNGP_HREF_ERROR,
30150 XML_RNGP_INCLUDE_EMPTY,
30151 XML_RNGP_INCLUDE_FAILURE,
30152 XML_RNGP_INCLUDE_RECURSE,
30153 XML_RNGP_INTERLEAVE_ADD,
30154 XML_RNGP_INTERLEAVE_CREATE_FAILED,
30155 XML_RNGP_INTERLEAVE_EMPTY,
30156 XML_RNGP_INTERLEAVE_NO_CONTENT,
30157 XML_RNGP_INVALID_DEFINE_NAME,
30158 XML_RNGP_INVALID_URI,
30159 XML_RNGP_INVALID_VALUE,
30160 XML_RNGP_MISSING_HREF,
30161 XML_RNGP_NAME_MISSING,
30162 XML_RNGP_NEED_COMBINE,
30163 XML_RNGP_NOTALLOWED_NOT_EMPTY,
30164 XML_RNGP_NSNAME_ATTR_ANCESTOR,
30165 XML_RNGP_NSNAME_NO_NS,
30166 XML_RNGP_PARAM_FORBIDDEN,
30167 XML_RNGP_PARAM_NAME_MISSING,
30168 XML_RNGP_PARENTREF_CREATE_FAILED,
30169 XML_RNGP_PARENTREF_NAME_INVALID,
30170 XML_RNGP_PARENTREF_NO_NAME,
30171 XML_RNGP_PARENTREF_NO_PARENT,
30172 XML_RNGP_PARENTREF_NOT_EMPTY,
30173 XML_RNGP_PARSE_ERROR,
30174 XML_RNGP_PAT_ANYNAME_EXCEPT_ANYNAME,
30175 XML_RNGP_PAT_ATTR_ATTR,
30176 XML_RNGP_PAT_ATTR_ELEM,
30177 XML_RNGP_PAT_DATA_EXCEPT_ATTR,
30178 XML_RNGP_PAT_DATA_EXCEPT_ELEM,
30179 XML_RNGP_PAT_DATA_EXCEPT_EMPTY,
30180 XML_RNGP_PAT_DATA_EXCEPT_GROUP,
30181 XML_RNGP_PAT_DATA_EXCEPT_INTERLEAVE,
30182 XML_RNGP_PAT_DATA_EXCEPT_LIST,
30183 XML_RNGP_PAT_DATA_EXCEPT_ONEMORE,
30184 XML_RNGP_PAT_DATA_EXCEPT_REF,
30185 XML_RNGP_PAT_DATA_EXCEPT_TEXT,
30186 XML_RNGP_PAT_LIST_ATTR,
30187 XML_RNGP_PAT_LIST_ELEM,
30188 XML_RNGP_PAT_LIST_INTERLEAVE,
30189 XML_RNGP_PAT_LIST_LIST,
30190 XML_RNGP_PAT_LIST_REF,
30191 XML_RNGP_PAT_LIST_TEXT,
30192 XML_RNGP_PAT_NSNAME_EXCEPT_ANYNAME,
30193 XML_RNGP_PAT_NSNAME_EXCEPT_NSNAME,
30194 XML_RNGP_PAT_ONEMORE_GROUP_ATTR,
30195 XML_RNGP_PAT_ONEMORE_INTERLEAVE_ATTR,
30196 XML_RNGP_PAT_START_ATTR,
30197 XML_RNGP_PAT_START_DATA,
30198 XML_RNGP_PAT_START_EMPTY,
30199 XML_RNGP_PAT_START_GROUP,
30200 XML_RNGP_PAT_START_INTERLEAVE,
30201 XML_RNGP_PAT_START_LIST,
30202 XML_RNGP_PAT_START_ONEMORE,
30203 XML_RNGP_PAT_START_TEXT,
30204 XML_RNGP_PAT_START_VALUE,
30205 XML_RNGP_PREFIX_UNDEFINED,
30206 XML_RNGP_REF_CREATE_FAILED,
30207 XML_RNGP_REF_CYCLE,
30208 XML_RNGP_REF_NAME_INVALID,
30209 XML_RNGP_REF_NO_DEF,
30210 XML_RNGP_REF_NO_NAME,
30211 XML_RNGP_REF_NOT_EMPTY,
30212 XML_RNGP_START_CHOICE_AND_INTERLEAVE,
30213 XML_RNGP_START_CONTENT,
30214 XML_RNGP_START_EMPTY,
30215 XML_RNGP_START_MISSING,
30216 XML_RNGP_TEXT_EXPECTED,
30217 XML_RNGP_TEXT_HAS_CHILD,
30218 XML_RNGP_TYPE_MISSING,
30219 XML_RNGP_TYPE_NOT_FOUND,
30220 XML_RNGP_TYPE_VALUE,
30221 XML_RNGP_UNKNOWN_ATTRIBUTE,
30222 XML_RNGP_UNKNOWN_COMBINE,
30223 XML_RNGP_UNKNOWN_CONSTRUCT,
30224 XML_RNGP_UNKNOWN_TYPE_LIB,
30225 XML_RNGP_URI_FRAGMENT,
30226 XML_RNGP_URI_NOT_ABSOLUTE,
30227 XML_RNGP_VALUE_EMPTY,
30228 XML_RNGP_VALUE_NO_CONTENT,
30229 XML_RNGP_XMLNS_NAME,
30230 XML_RNGP_XML_NS,
30231 XML_XPATH_EXPRESSION_OK = 1200,
30232 XML_XPATH_NUMBER_ERROR,
30233 XML_XPATH_UNFINISHED_LITERAL_ERROR,
30234 XML_XPATH_START_LITERAL_ERROR,
30235 XML_XPATH_VARIABLE_REF_ERROR,
30236 XML_XPATH_UNDEF_VARIABLE_ERROR,
30237 XML_XPATH_INVALID_PREDICATE_ERROR,
30238 XML_XPATH_EXPR_ERROR,
30239 XML_XPATH_UNCLOSED_ERROR,
30240 XML_XPATH_UNKNOWN_FUNC_ERROR,
30241 XML_XPATH_INVALID_OPERAND,
30242 XML_XPATH_INVALID_TYPE,
30243 XML_XPATH_INVALID_ARITY,
30244 XML_XPATH_INVALID_CTXT_SIZE,
30245 XML_XPATH_INVALID_CTXT_POSITION,
30246 XML_XPATH_MEMORY_ERROR,
30247 XML_XPTR_SYNTAX_ERROR,
30248 XML_XPTR_RESOURCE_ERROR,
30249 XML_XPTR_SUB_RESOURCE_ERROR,
30250 XML_XPATH_UNDEF_PREFIX_ERROR,
30251 XML_XPATH_ENCODING_ERROR,
30252 XML_XPATH_INVALID_CHAR_ERROR,
30253 XML_TREE_INVALID_HEX = 1300,
30254 XML_TREE_INVALID_DEC,
30255 XML_TREE_UNTERMINATED_ENTITY,
30256 XML_TREE_NOT_UTF8,
30257 XML_SAVE_NOT_UTF8 = 1400,
30258 XML_SAVE_CHAR_INVALID,
30259 XML_SAVE_NO_DOCTYPE,
30260 XML_SAVE_UNKNOWN_ENCODING,
30261 XML_REGEXP_COMPILE_ERROR = 1450,
30262 XML_IO_UNKNOWN = 1500,
30263 XML_IO_EACCES,
30264 XML_IO_EAGAIN,
30265 XML_IO_EBADF,
30266 XML_IO_EBADMSG,
30267 XML_IO_EBUSY,
30268 XML_IO_ECANCELED,
30269 XML_IO_ECHILD,
30270 XML_IO_EDEADLK,
30271 XML_IO_EDOM,
30272 XML_IO_EEXIST,
30273 XML_IO_EFAULT,
30274 XML_IO_EFBIG,
30275 XML_IO_EINPROGRESS,
30276 XML_IO_EINTR,
30277 XML_IO_EINVAL,
30278 XML_IO_EIO,
30279 XML_IO_EISDIR,
30280 XML_IO_EMFILE,
30281 XML_IO_EMLINK,
30282 XML_IO_EMSGSIZE,
30283 XML_IO_ENAMETOOLONG,
30284 XML_IO_ENFILE,
30285 XML_IO_ENODEV,
30286 XML_IO_ENOENT,
30287 XML_IO_ENOEXEC,
30288 XML_IO_ENOLCK,
30289 XML_IO_ENOMEM,
30290 XML_IO_ENOSPC,
30291 XML_IO_ENOSYS,
30292 XML_IO_ENOTDIR,
30293 XML_IO_ENOTEMPTY,
30294 XML_IO_ENOTSUP,
30295 XML_IO_ENOTTY,
30296 XML_IO_ENXIO,
30297 XML_IO_EPERM,
30298 XML_IO_EPIPE,
30299 XML_IO_ERANGE,
30300 XML_IO_EROFS,
30301 XML_IO_ESPIPE,
30302 XML_IO_ESRCH,
30303 XML_IO_ETIMEDOUT,
30304 XML_IO_EXDEV,
30305 XML_IO_NETWORK_ATTEMPT,
30306 XML_IO_ENCODER,
30307 XML_IO_FLUSH,
30308 XML_IO_WRITE,
30309 XML_IO_NO_INPUT,
30310 XML_IO_BUFFER_FULL,
30311 XML_IO_LOAD_ERROR,
30312 XML_IO_ENOTSOCK,
30313 XML_IO_EISCONN,
30314 XML_IO_ECONNREFUSED,
30315 XML_IO_ENETUNREACH,
30316 XML_IO_EADDRINUSE,
30317 XML_IO_EALREADY,
30318 XML_IO_EAFNOSUPPORT,
30319 XML_XINCLUDE_RECURSION=1600,
30320 XML_XINCLUDE_PARSE_VALUE,
30321 XML_XINCLUDE_ENTITY_DEF_MISMATCH,
30322 XML_XINCLUDE_NO_HREF,
30323 XML_XINCLUDE_NO_FALLBACK,
30324 XML_XINCLUDE_HREF_URI,
30325 XML_XINCLUDE_TEXT_FRAGMENT,
30326 XML_XINCLUDE_TEXT_DOCUMENT,
30327 XML_XINCLUDE_INVALID_CHAR,
30328 XML_XINCLUDE_BUILD_FAILED,
30329 XML_XINCLUDE_UNKNOWN_ENCODING,
30330 XML_XINCLUDE_MULTIPLE_ROOT,
30331 XML_XINCLUDE_XPTR_FAILED,
30332 XML_XINCLUDE_XPTR_RESULT,
30333 XML_XINCLUDE_INCLUDE_IN_INCLUDE,
30334 XML_XINCLUDE_FALLBACKS_IN_INCLUDE,
30335 XML_XINCLUDE_FALLBACK_NOT_IN_INCLUDE,
30336 XML_XINCLUDE_DEPRECATED_NS,
30337 XML_XINCLUDE_FRAGMENT_ID,
30338 XML_CATALOG_MISSING_ATTR = 1650,
30339 XML_CATALOG_ENTRY_BROKEN,
30340 XML_CATALOG_PREFER_VALUE,
30341 XML_CATALOG_NOT_CATALOG,
30342 XML_CATALOG_RECURSION,
30343 XML_SCHEMAP_PREFIX_UNDEFINED = 1700,
30344 XML_SCHEMAP_ATTRFORMDEFAULT_VALUE,
30345 XML_SCHEMAP_ATTRGRP_NONAME_NOREF,
30346 XML_SCHEMAP_ATTR_NONAME_NOREF,
30347 XML_SCHEMAP_COMPLEXTYPE_NONAME_NOREF,
30348 XML_SCHEMAP_ELEMFORMDEFAULT_VALUE,
30349 XML_SCHEMAP_ELEM_NONAME_NOREF,
30350 XML_SCHEMAP_EXTENSION_NO_BASE,
30351 XML_SCHEMAP_FACET_NO_VALUE,
30352 XML_SCHEMAP_FAILED_BUILD_IMPORT,
30353 XML_SCHEMAP_GROUP_NONAME_NOREF,
30354 XML_SCHEMAP_IMPORT_NAMESPACE_NOT_URI,
30355 XML_SCHEMAP_IMPORT_REDEFINE_NSNAME,
30356 XML_SCHEMAP_IMPORT_SCHEMA_NOT_URI,
30357 XML_SCHEMAP_INVALID_BOOLEAN,
30358 XML_SCHEMAP_INVALID_ENUM,
30359 XML_SCHEMAP_INVALID_FACET,
30360 XML_SCHEMAP_INVALID_FACET_VALUE,
30361 XML_SCHEMAP_INVALID_MAXOCCURS,
30362 XML_SCHEMAP_INVALID_MINOCCURS,
30363 XML_SCHEMAP_INVALID_REF_AND_SUBTYPE,
30364 XML_SCHEMAP_INVALID_WHITE_SPACE,
30365 XML_SCHEMAP_NOATTR_NOREF,
30366 XML_SCHEMAP_NOTATION_NO_NAME,
30367 XML_SCHEMAP_NOTYPE_NOREF,
30368 XML_SCHEMAP_REF_AND_SUBTYPE,
30369 XML_SCHEMAP_RESTRICTION_NONAME_NOREF,
30370 XML_SCHEMAP_SIMPLETYPE_NONAME,
30371 XML_SCHEMAP_TYPE_AND_SUBTYPE,
30372 XML_SCHEMAP_UNKNOWN_ALL_CHILD,
30373 XML_SCHEMAP_UNKNOWN_ANYATTRIBUTE_CHILD,
30374 XML_SCHEMAP_UNKNOWN_ATTR_CHILD,
30375 XML_SCHEMAP_UNKNOWN_ATTRGRP_CHILD,
30376 XML_SCHEMAP_UNKNOWN_ATTRIBUTE_GROUP,
30377 XML_SCHEMAP_UNKNOWN_BASE_TYPE,
30378 XML_SCHEMAP_UNKNOWN_CHOICE_CHILD,
30379 XML_SCHEMAP_UNKNOWN_COMPLEXCONTENT_CHILD,
30380 XML_SCHEMAP_UNKNOWN_COMPLEXTYPE_CHILD,
30381 XML_SCHEMAP_UNKNOWN_ELEM_CHILD,
30382 XML_SCHEMAP_UNKNOWN_EXTENSION_CHILD,
30383 XML_SCHEMAP_UNKNOWN_FACET_CHILD,
30384 XML_SCHEMAP_UNKNOWN_FACET_TYPE,
30385 XML_SCHEMAP_UNKNOWN_GROUP_CHILD,
30386 XML_SCHEMAP_UNKNOWN_IMPORT_CHILD,
30387 XML_SCHEMAP_UNKNOWN_LIST_CHILD,
30388 XML_SCHEMAP_UNKNOWN_NOTATION_CHILD,
30389 XML_SCHEMAP_UNKNOWN_PROCESSCONTENT_CHILD,
30390 XML_SCHEMAP_UNKNOWN_REF,
30391 XML_SCHEMAP_UNKNOWN_RESTRICTION_CHILD,
30392 XML_SCHEMAP_UNKNOWN_SCHEMAS_CHILD,
30393 XML_SCHEMAP_UNKNOWN_SEQUENCE_CHILD,
30394 XML_SCHEMAP_UNKNOWN_SIMPLECONTENT_CHILD,
30395 XML_SCHEMAP_UNKNOWN_SIMPLETYPE_CHILD,
30396 XML_SCHEMAP_UNKNOWN_TYPE,
30397 XML_SCHEMAP_UNKNOWN_UNION_CHILD,
30398 XML_SCHEMAP_ELEM_DEFAULT_FIXED,
30399 XML_SCHEMAP_REGEXP_INVALID,
30400 XML_SCHEMAP_FAILED_LOAD,
30401 XML_SCHEMAP_NOTHING_TO_PARSE,
30402 XML_SCHEMAP_NOROOT,
30403 XML_SCHEMAP_REDEFINED_GROUP,
30404 XML_SCHEMAP_REDEFINED_TYPE,
30405 XML_SCHEMAP_REDEFINED_ELEMENT,
30406 XML_SCHEMAP_REDEFINED_ATTRGROUP,
30407 XML_SCHEMAP_REDEFINED_ATTR,
30408 XML_SCHEMAP_REDEFINED_NOTATION,
30409 XML_SCHEMAP_FAILED_PARSE,
30410 XML_SCHEMAP_UNKNOWN_PREFIX,
30411 XML_SCHEMAP_DEF_AND_PREFIX,
30412 XML_SCHEMAP_UNKNOWN_INCLUDE_CHILD,
30413 XML_SCHEMAP_INCLUDE_SCHEMA_NOT_URI,
30414 XML_SCHEMAP_INCLUDE_SCHEMA_NO_URI,
30415 XML_SCHEMAP_NOT_SCHEMA,
30416 XML_SCHEMAP_UNKNOWN_MEMBER_TYPE,
30417 XML_SCHEMAP_INVALID_ATTR_USE,
30418 XML_SCHEMAP_RECURSIVE,
30419 XML_SCHEMAP_SUPERNUMEROUS_LIST_ITEM_TYPE,
30420 XML_SCHEMAP_INVALID_ATTR_COMBINATION,
30421 XML_SCHEMAP_INVALID_ATTR_INLINE_COMBINATION,
30422 XML_SCHEMAP_MISSING_SIMPLETYPE_CHILD,
30423 XML_SCHEMAP_INVALID_ATTR_NAME,
30424 XML_SCHEMAP_REF_AND_CONTENT,
30425 XML_SCHEMAP_CT_PROPS_CORRECT_1,
30426 XML_SCHEMAP_CT_PROPS_CORRECT_2,
30427 XML_SCHEMAP_CT_PROPS_CORRECT_3,
30428 XML_SCHEMAP_CT_PROPS_CORRECT_4,
30429 XML_SCHEMAP_CT_PROPS_CORRECT_5,
30430 XML_SCHEMAP_DERIVATION_OK_RESTRICTION_1,
30431 XML_SCHEMAP_DERIVATION_OK_RESTRICTION_2_1_1,
30432 XML_SCHEMAP_DERIVATION_OK_RESTRICTION_2_1_2,
30433 XML_SCHEMAP_DERIVATION_OK_RESTRICTION_2_2,
30434 XML_SCHEMAP_DERIVATION_OK_RESTRICTION_3,
30435 XML_SCHEMAP_WILDCARD_INVALID_NS_MEMBER,
30436 XML_SCHEMAP_INTERSECTION_NOT_EXPRESSIBLE,
30437 XML_SCHEMAP_UNION_NOT_EXPRESSIBLE,
30438 XML_SCHEMAP_SRC_IMPORT_3_1,
30439 XML_SCHEMAP_SRC_IMPORT_3_2,
30440 XML_SCHEMAP_DERIVATION_OK_RESTRICTION_4_1,
30441 XML_SCHEMAP_DERIVATION_OK_RESTRICTION_4_2,
30442 XML_SCHEMAP_DERIVATION_OK_RESTRICTION_4_3,
30443 XML_SCHEMAP_COS_CT_EXTENDS_1_3,
30444 XML_SCHEMAV_NOROOT = 1801,
30445 XML_SCHEMAV_UNDECLAREDELEM,
30446 XML_SCHEMAV_NOTTOPLEVEL,
30447 XML_SCHEMAV_MISSING,
30448 XML_SCHEMAV_WRONGELEM,
30449 XML_SCHEMAV_NOTYPE,
30450 XML_SCHEMAV_NOROLLBACK,
30451 XML_SCHEMAV_ISABSTRACT,
30452 XML_SCHEMAV_NOTEMPTY,
30453 XML_SCHEMAV_ELEMCONT,
30454 XML_SCHEMAV_HAVEDEFAULT,
30455 XML_SCHEMAV_NOTNILLABLE,
30456 XML_SCHEMAV_EXTRACONTENT,
30457 XML_SCHEMAV_INVALIDATTR,
30458 XML_SCHEMAV_INVALIDELEM,
30459 XML_SCHEMAV_NOTDETERMINIST,
30460 XML_SCHEMAV_CONSTRUCT,
30461 XML_SCHEMAV_INTERNAL,
30462 XML_SCHEMAV_NOTSIMPLE,
30463 XML_SCHEMAV_ATTRUNKNOWN,
30464 XML_SCHEMAV_ATTRINVALID,
30465 XML_SCHEMAV_VALUE,
30466 XML_SCHEMAV_FACET,
30467 XML_SCHEMAV_CVC_DATATYPE_VALID_1_2_1,
30468 XML_SCHEMAV_CVC_DATATYPE_VALID_1_2_2,
30469 XML_SCHEMAV_CVC_DATATYPE_VALID_1_2_3,
30470 XML_SCHEMAV_CVC_TYPE_3_1_1,
30471 XML_SCHEMAV_CVC_TYPE_3_1_2,
30472 XML_SCHEMAV_CVC_FACET_VALID,
30473 XML_SCHEMAV_CVC_LENGTH_VALID,
30474 XML_SCHEMAV_CVC_MINLENGTH_VALID,
30475 XML_SCHEMAV_CVC_MAXLENGTH_VALID,
30476 XML_SCHEMAV_CVC_MININCLUSIVE_VALID,
30477 XML_SCHEMAV_CVC_MAXINCLUSIVE_VALID,
30478 XML_SCHEMAV_CVC_MINEXCLUSIVE_VALID,
30479 XML_SCHEMAV_CVC_MAXEXCLUSIVE_VALID,
30480 XML_SCHEMAV_CVC_TOTALDIGITS_VALID,
30481 XML_SCHEMAV_CVC_FRACTIONDIGITS_VALID,
30482 XML_SCHEMAV_CVC_PATTERN_VALID,
30483 XML_SCHEMAV_CVC_ENUMERATION_VALID,
30484 XML_SCHEMAV_CVC_COMPLEX_TYPE_2_1,
30485 XML_SCHEMAV_CVC_COMPLEX_TYPE_2_2,
30486 XML_SCHEMAV_CVC_COMPLEX_TYPE_2_3,
30487 XML_SCHEMAV_CVC_COMPLEX_TYPE_2_4,
30488 XML_SCHEMAV_CVC_ELT_1,
30489 XML_SCHEMAV_CVC_ELT_2,
30490 XML_SCHEMAV_CVC_ELT_3_1,
30491 XML_SCHEMAV_CVC_ELT_3_2_1,
30492 XML_SCHEMAV_CVC_ELT_3_2_2,
30493 XML_SCHEMAV_CVC_ELT_4_1,
30494 XML_SCHEMAV_CVC_ELT_4_2,
30495 XML_SCHEMAV_CVC_ELT_4_3,
30496 XML_SCHEMAV_CVC_ELT_5_1_1,
30497 XML_SCHEMAV_CVC_ELT_5_1_2,
30498 XML_SCHEMAV_CVC_ELT_5_2_1,
30499 XML_SCHEMAV_CVC_ELT_5_2_2_1,
30500 XML_SCHEMAV_CVC_ELT_5_2_2_2_1,
30501 XML_SCHEMAV_CVC_ELT_5_2_2_2_2,
30502 XML_SCHEMAV_CVC_ELT_6,
30503 XML_SCHEMAV_CVC_ELT_7,
30504 XML_SCHEMAV_CVC_ATTRIBUTE_1,
30505 XML_SCHEMAV_CVC_ATTRIBUTE_2,
30506 XML_SCHEMAV_CVC_ATTRIBUTE_3,
30507 XML_SCHEMAV_CVC_ATTRIBUTE_4,
30508 XML_SCHEMAV_CVC_COMPLEX_TYPE_3_1,
30509 XML_SCHEMAV_CVC_COMPLEX_TYPE_3_2_1,
30510 XML_SCHEMAV_CVC_COMPLEX_TYPE_3_2_2,
30511 XML_SCHEMAV_CVC_COMPLEX_TYPE_4,
30512 XML_SCHEMAV_CVC_COMPLEX_TYPE_5_1,
30513 XML_SCHEMAV_CVC_COMPLEX_TYPE_5_2,
30514 XML_SCHEMAV_ELEMENT_CONTENT,
30515 XML_SCHEMAV_DOCUMENT_ELEMENT_MISSING,
30516 XML_SCHEMAV_CVC_COMPLEX_TYPE_1,
30517 XML_SCHEMAV_CVC_AU,
30518 XML_SCHEMAV_CVC_TYPE_1,
30519 XML_SCHEMAV_CVC_TYPE_2,
30520 XML_SCHEMAV_CVC_IDC,
30521 XML_SCHEMAV_CVC_WILDCARD,
30522 XML_SCHEMAV_MISC,
30523 XML_XPTR_UNKNOWN_SCHEME = 1900,
30524 XML_XPTR_CHILDSEQ_START,
30525 XML_XPTR_EVAL_FAILED,
30526 XML_XPTR_EXTRA_OBJECTS,
30527 XML_C14N_CREATE_CTXT = 1950,
30528 XML_C14N_REQUIRES_UTF8,
30529 XML_C14N_CREATE_STACK,
30530 XML_C14N_INVALID_NODE,
30531 XML_C14N_UNKNOW_NODE,
30532 XML_C14N_RELATIVE_NAMESPACE,
30533 XML_FTP_PASV_ANSWER = 2000,
30534 XML_FTP_EPSV_ANSWER,
30535 XML_FTP_ACCNT,
30536 XML_FTP_URL_SYNTAX,
30537 XML_HTTP_URL_SYNTAX = 2020,
30538 XML_HTTP_USE_IP,
30539 XML_HTTP_UNKNOWN_HOST,
30540 XML_SCHEMAP_SRC_SIMPLE_TYPE_1 = 3000,
30541 XML_SCHEMAP_SRC_SIMPLE_TYPE_2,
30542 XML_SCHEMAP_SRC_SIMPLE_TYPE_3,
30543 XML_SCHEMAP_SRC_SIMPLE_TYPE_4,
30544 XML_SCHEMAP_SRC_RESOLVE,
30545 XML_SCHEMAP_SRC_RESTRICTION_BASE_OR_SIMPLETYPE,
30546 XML_SCHEMAP_SRC_LIST_ITEMTYPE_OR_SIMPLETYPE,
30547 XML_SCHEMAP_SRC_UNION_MEMBERTYPES_OR_SIMPLETYPES,
30548 XML_SCHEMAP_ST_PROPS_CORRECT_1,
30549 XML_SCHEMAP_ST_PROPS_CORRECT_2,
30550 XML_SCHEMAP_ST_PROPS_CORRECT_3,
30551 XML_SCHEMAP_COS_ST_RESTRICTS_1_1,
30552 XML_SCHEMAP_COS_ST_RESTRICTS_1_2,
30553 XML_SCHEMAP_COS_ST_RESTRICTS_1_3_1,
30554 XML_SCHEMAP_COS_ST_RESTRICTS_1_3_2,
30555 XML_SCHEMAP_COS_ST_RESTRICTS_2_1,
30556 XML_SCHEMAP_COS_ST_RESTRICTS_2_3_1_1,
30557 XML_SCHEMAP_COS_ST_RESTRICTS_2_3_1_2,
30558 XML_SCHEMAP_COS_ST_RESTRICTS_2_3_2_1,
30559 XML_SCHEMAP_COS_ST_RESTRICTS_2_3_2_2,
30560 XML_SCHEMAP_COS_ST_RESTRICTS_2_3_2_3,
30561 XML_SCHEMAP_COS_ST_RESTRICTS_2_3_2_4,
30562 XML_SCHEMAP_COS_ST_RESTRICTS_2_3_2_5,
30563 XML_SCHEMAP_COS_ST_RESTRICTS_3_1,
30564 XML_SCHEMAP_COS_ST_RESTRICTS_3_3_1,
30565 XML_SCHEMAP_COS_ST_RESTRICTS_3_3_1_2,
30566 XML_SCHEMAP_COS_ST_RESTRICTS_3_3_2_2,
30567 XML_SCHEMAP_COS_ST_RESTRICTS_3_3_2_1,
30568 XML_SCHEMAP_COS_ST_RESTRICTS_3_3_2_3,
30569 XML_SCHEMAP_COS_ST_RESTRICTS_3_3_2_4,
30570 XML_SCHEMAP_COS_ST_RESTRICTS_3_3_2_5,
30571 XML_SCHEMAP_COS_ST_DERIVED_OK_2_1,
30572 XML_SCHEMAP_COS_ST_DERIVED_OK_2_2,
30573 XML_SCHEMAP_S4S_ELEM_NOT_ALLOWED,
30574 XML_SCHEMAP_S4S_ELEM_MISSING,
30575 XML_SCHEMAP_S4S_ATTR_NOT_ALLOWED,
30576 XML_SCHEMAP_S4S_ATTR_MISSING,
30577 XML_SCHEMAP_S4S_ATTR_INVALID_VALUE,
30578 XML_SCHEMAP_SRC_ELEMENT_1,
30579 XML_SCHEMAP_SRC_ELEMENT_2_1,
30580 XML_SCHEMAP_SRC_ELEMENT_2_2,
30581 XML_SCHEMAP_SRC_ELEMENT_3,
30582 XML_SCHEMAP_P_PROPS_CORRECT_1,
30583 XML_SCHEMAP_P_PROPS_CORRECT_2_1,
30584 XML_SCHEMAP_P_PROPS_CORRECT_2_2,
30585 XML_SCHEMAP_E_PROPS_CORRECT_2,
30586 XML_SCHEMAP_E_PROPS_CORRECT_3,
30587 XML_SCHEMAP_E_PROPS_CORRECT_4,
30588 XML_SCHEMAP_E_PROPS_CORRECT_5,
30589 XML_SCHEMAP_E_PROPS_CORRECT_6,
30590 XML_SCHEMAP_SRC_INCLUDE,
30591 XML_SCHEMAP_SRC_ATTRIBUTE_1,
30592 XML_SCHEMAP_SRC_ATTRIBUTE_2,
30593 XML_SCHEMAP_SRC_ATTRIBUTE_3_1,
30594 XML_SCHEMAP_SRC_ATTRIBUTE_3_2,
30595 XML_SCHEMAP_SRC_ATTRIBUTE_4,
30596 XML_SCHEMAP_NO_XMLNS,
30597 XML_SCHEMAP_NO_XSI,
30598 XML_SCHEMAP_COS_VALID_DEFAULT_1,
30599 XML_SCHEMAP_COS_VALID_DEFAULT_2_1,
30600 XML_SCHEMAP_COS_VALID_DEFAULT_2_2_1,
30601 XML_SCHEMAP_COS_VALID_DEFAULT_2_2_2,
30602 XML_SCHEMAP_CVC_SIMPLE_TYPE,
30603 XML_SCHEMAP_COS_CT_EXTENDS_1_1,
30604 XML_SCHEMAP_SRC_IMPORT_1_1,
30605 XML_SCHEMAP_SRC_IMPORT_1_2,
30606 XML_SCHEMAP_SRC_IMPORT_2,
30607 XML_SCHEMAP_SRC_IMPORT_2_1,
30608 XML_SCHEMAP_SRC_IMPORT_2_2,
30609 XML_SCHEMAP_INTERNAL,
30610 XML_SCHEMAP_NOT_DETERMINISTIC,
30611 XML_SCHEMAP_SRC_ATTRIBUTE_GROUP_1,
30612 XML_SCHEMAP_SRC_ATTRIBUTE_GROUP_2,
30613 XML_SCHEMAP_SRC_ATTRIBUTE_GROUP_3,
30614 XML_SCHEMAP_MG_PROPS_CORRECT_1,
30615 XML_SCHEMAP_MG_PROPS_CORRECT_2,
30616 XML_SCHEMAP_SRC_CT_1,
30617 XML_SCHEMAP_DERIVATION_OK_RESTRICTION_2_1_3,
30618 XML_SCHEMAP_AU_PROPS_CORRECT_2,
30619 XML_SCHEMAP_A_PROPS_CORRECT_2,
30620 XML_SCHEMAP_C_PROPS_CORRECT,
30621 XML_SCHEMAP_SRC_REDEFINE,
30622 XML_SCHEMAP_SRC_IMPORT,
30623 XML_SCHEMAP_WARN_SKIP_SCHEMA,
30624 XML_SCHEMAP_WARN_UNLOCATED_SCHEMA,
30625 XML_SCHEMAP_WARN_ATTR_REDECL_PROH,
30626 XML_SCHEMAP_WARN_ATTR_POINTLESS_PROH,
30627 XML_SCHEMAP_AG_PROPS_CORRECT,
30628 XML_SCHEMAP_COS_CT_EXTENDS_1_2,
30629 XML_SCHEMAP_AU_PROPS_CORRECT,
30630 XML_SCHEMAP_A_PROPS_CORRECT_3,
30631 XML_SCHEMAP_COS_ALL_LIMITED,
30632 XML_SCHEMATRONV_ASSERT = 4000,
30633 XML_SCHEMATRONV_REPORT,
30634 XML_MODULE_OPEN = 4900,
30635 XML_MODULE_CLOSE,
30636 XML_CHECK_FOUND_ELEMENT = 5000,
30637 XML_CHECK_FOUND_ATTRIBUTE,
30638 XML_CHECK_FOUND_TEXT,
30639 XML_CHECK_FOUND_CDATA,
30640 XML_CHECK_FOUND_ENTITYREF,
30641 XML_CHECK_FOUND_ENTITY,
30642 XML_CHECK_FOUND_PI,
30643 XML_CHECK_FOUND_COMMENT,
30644 XML_CHECK_FOUND_DOCTYPE,
30645 XML_CHECK_FOUND_FRAGMENT,
30646 XML_CHECK_FOUND_NOTATION,
30647 XML_CHECK_UNKNOWN_NODE,
30648 XML_CHECK_ENTITY_TYPE,
30649 XML_CHECK_NO_PARENT,
30650 XML_CHECK_NO_DOC,
30651 XML_CHECK_NO_NAME,
30652 XML_CHECK_NO_ELEM,
30653 XML_CHECK_WRONG_DOC,
30654 XML_CHECK_NO_PREV,
30655 XML_CHECK_WRONG_PREV,
30656 XML_CHECK_NO_NEXT,
30657 XML_CHECK_WRONG_NEXT,
30658 XML_CHECK_NOT_DTD,
30659 XML_CHECK_NOT_ATTR,
30660 XML_CHECK_NOT_ATTR_DECL,
30661 XML_CHECK_NOT_ELEM_DECL,
30662 XML_CHECK_NOT_ENTITY_DECL,
30663 XML_CHECK_NOT_NS_DECL,
30664 XML_CHECK_NO_HREF,
30665 XML_CHECK_WRONG_PARENT,
30666 XML_CHECK_NS_SCOPE,
30667 XML_CHECK_NS_ANCESTOR,
30668 XML_CHECK_NOT_UTF8,
30669 XML_CHECK_NO_DICT,
30670 XML_CHECK_NOT_NCNAME,
30671 XML_CHECK_OUTSIDE_DICT,
30672 XML_CHECK_WRONG_NAME,
30673 XML_CHECK_NAME_NOT_NULL,
30674 XML_I18N_NO_NAME = 6000,
30675 XML_I18N_NO_HANDLER,
30676 XML_I18N_EXCESS_HANDLER,
30677 XML_I18N_CONV_FAILED,
30678 XML_I18N_NO_OUTPUT
30679
30680
30681
30682
30683 } xmlParserErrors;
30684 # 844 "/usr/include/libxml2/libxml/xmlerror.h"
30685 typedef void ( *xmlGenericErrorFunc) (void *ctx,
30686 const char *msg,
30687 ...) __attribute__((__format__(__printf__,2,3)));
30688 # 855 "/usr/include/libxml2/libxml/xmlerror.h"
30689 typedef void ( *xmlStructuredErrorFunc) (void *userData, xmlErrorPtr error);
30690
30691
30692
30693
30694
30695 void
30696 xmlSetGenericErrorFunc (void *ctx,
30697 xmlGenericErrorFunc handler);
30698 void
30699 initGenericErrorDefaultFunc (xmlGenericErrorFunc *handler);
30700
30701 void
30702 xmlSetStructuredErrorFunc (void *ctx,
30703 xmlStructuredErrorFunc handler);
30704
30705
30706
30707
30708 void
30709 xmlParserError (void *ctx,
30710 const char *msg,
30711 ...) __attribute__((__format__(__printf__,2,3)));
30712 void
30713 xmlParserWarning (void *ctx,
30714 const char *msg,
30715 ...) __attribute__((__format__(__printf__,2,3)));
30716 void
30717 xmlParserValidityError (void *ctx,
30718 const char *msg,
30719 ...) __attribute__((__format__(__printf__,2,3)));
30720 void
30721 xmlParserValidityWarning (void *ctx,
30722 const char *msg,
30723 ...) __attribute__((__format__(__printf__,2,3)));
30724 void
30725 xmlParserPrintFileInfo (xmlParserInputPtr input);
30726 void
30727 xmlParserPrintFileContext (xmlParserInputPtr input);
30728
30729
30730
30731
30732 xmlErrorPtr
30733 xmlGetLastError (void);
30734 void
30735 xmlResetLastError (void);
30736 xmlErrorPtr
30737 xmlCtxtGetLastError (void *ctx);
30738 void
30739 xmlCtxtResetLastError (void *ctx);
30740 void
30741 xmlResetError (xmlErrorPtr err);
30742 int
30743 xmlCopyError (xmlErrorPtr from,
30744 xmlErrorPtr to);
30745 # 942 "/usr/include/libxml2/libxml/xmlerror.h"
30746 }
30747 # 16 "/usr/include/libxml2/libxml/valid.h" 2
30748
30749 # 1 "/usr/include/libxml2/libxml/list.h" 1
30750 # 12 "/usr/include/libxml2/libxml/list.h"
30751 #define __XML_LINK_INCLUDE__
30752
30753
30754
30755
30756 extern "C" {
30757
30758
30759 typedef struct _xmlLink xmlLink;
30760 typedef xmlLink *xmlLinkPtr;
30761
30762 typedef struct _xmlList xmlList;
30763 typedef xmlList *xmlListPtr;
30764
30765
30766
30767
30768
30769
30770
30771 typedef void (*xmlListDeallocator) (xmlLinkPtr lk);
30772 # 42 "/usr/include/libxml2/libxml/list.h"
30773 typedef int (*xmlListDataCompare) (const void *data0, const void *data1);
30774 # 52 "/usr/include/libxml2/libxml/list.h"
30775 typedef int (*xmlListWalker) (const void *data, const void *user);
30776
30777
30778 xmlListPtr
30779 xmlListCreate (xmlListDeallocator deallocator,
30780 xmlListDataCompare compare);
30781 void
30782 xmlListDelete (xmlListPtr l);
30783
30784
30785 void *
30786 xmlListSearch (xmlListPtr l,
30787 void *data);
30788 void *
30789 xmlListReverseSearch (xmlListPtr l,
30790 void *data);
30791 int
30792 xmlListInsert (xmlListPtr l,
30793 void *data) ;
30794 int
30795 xmlListAppend (xmlListPtr l,
30796 void *data) ;
30797 int
30798 xmlListRemoveFirst (xmlListPtr l,
30799 void *data);
30800 int
30801 xmlListRemoveLast (xmlListPtr l,
30802 void *data);
30803 int
30804 xmlListRemoveAll (xmlListPtr l,
30805 void *data);
30806 void
30807 xmlListClear (xmlListPtr l);
30808 int
30809 xmlListEmpty (xmlListPtr l);
30810 xmlLinkPtr
30811 xmlListFront (xmlListPtr l);
30812 xmlLinkPtr
30813 xmlListEnd (xmlListPtr l);
30814 int
30815 xmlListSize (xmlListPtr l);
30816
30817 void
30818 xmlListPopFront (xmlListPtr l);
30819 void
30820 xmlListPopBack (xmlListPtr l);
30821 int
30822 xmlListPushFront (xmlListPtr l,
30823 void *data);
30824 int
30825 xmlListPushBack (xmlListPtr l,
30826 void *data);
30827
30828
30829 void
30830 xmlListReverse (xmlListPtr l);
30831 void
30832 xmlListSort (xmlListPtr l);
30833 void
30834 xmlListWalk (xmlListPtr l,
30835 xmlListWalker walker,
30836 const void *user);
30837 void
30838 xmlListReverseWalk (xmlListPtr l,
30839 xmlListWalker walker,
30840 const void *user);
30841 void
30842 xmlListMerge (xmlListPtr l1,
30843 xmlListPtr l2);
30844 xmlListPtr
30845 xmlListDup (const xmlListPtr old);
30846 int
30847 xmlListCopy (xmlListPtr cur,
30848 const xmlListPtr old);
30849
30850 void *
30851 xmlLinkGetData (xmlLinkPtr lk);
30852
30853
30854
30855
30856
30857 }
30858 # 18 "/usr/include/libxml2/libxml/valid.h" 2
30859 # 1 "/usr/include/libxml2/libxml/xmlautomata.h" 1
30860 # 11 "/usr/include/libxml2/libxml/xmlautomata.h"
30861 #define __XML_AUTOMATA_H__
30862 # 21 "/usr/include/libxml2/libxml/xmlautomata.h"
30863 extern "C" {
30864
30865
30866
30867
30868
30869
30870
30871 typedef struct _xmlAutomata xmlAutomata;
30872 typedef xmlAutomata *xmlAutomataPtr;
30873
30874
30875
30876
30877
30878
30879 typedef struct _xmlAutomataState xmlAutomataState;
30880 typedef xmlAutomataState *xmlAutomataStatePtr;
30881
30882
30883
30884
30885 xmlAutomataPtr
30886 xmlNewAutomata (void);
30887 void
30888 xmlFreeAutomata (xmlAutomataPtr am);
30889
30890 xmlAutomataStatePtr
30891 xmlAutomataGetInitState (xmlAutomataPtr am);
30892 int
30893 xmlAutomataSetFinalState (xmlAutomataPtr am,
30894 xmlAutomataStatePtr state);
30895 xmlAutomataStatePtr
30896 xmlAutomataNewState (xmlAutomataPtr am);
30897 xmlAutomataStatePtr
30898 xmlAutomataNewTransition (xmlAutomataPtr am,
30899 xmlAutomataStatePtr from,
30900 xmlAutomataStatePtr to,
30901 const xmlChar *token,
30902 void *data);
30903 xmlAutomataStatePtr
30904 xmlAutomataNewTransition2 (xmlAutomataPtr am,
30905 xmlAutomataStatePtr from,
30906 xmlAutomataStatePtr to,
30907 const xmlChar *token,
30908 const xmlChar *token2,
30909 void *data);
30910 xmlAutomataStatePtr
30911 xmlAutomataNewNegTrans (xmlAutomataPtr am,
30912 xmlAutomataStatePtr from,
30913 xmlAutomataStatePtr to,
30914 const xmlChar *token,
30915 const xmlChar *token2,
30916 void *data);
30917
30918 xmlAutomataStatePtr
30919 xmlAutomataNewCountTrans (xmlAutomataPtr am,
30920 xmlAutomataStatePtr from,
30921 xmlAutomataStatePtr to,
30922 const xmlChar *token,
30923 int min,
30924 int max,
30925 void *data);
30926 xmlAutomataStatePtr
30927 xmlAutomataNewCountTrans2 (xmlAutomataPtr am,
30928 xmlAutomataStatePtr from,
30929 xmlAutomataStatePtr to,
30930 const xmlChar *token,
30931 const xmlChar *token2,
30932 int min,
30933 int max,
30934 void *data);
30935 xmlAutomataStatePtr
30936 xmlAutomataNewOnceTrans (xmlAutomataPtr am,
30937 xmlAutomataStatePtr from,
30938 xmlAutomataStatePtr to,
30939 const xmlChar *token,
30940 int min,
30941 int max,
30942 void *data);
30943 xmlAutomataStatePtr
30944 xmlAutomataNewOnceTrans2 (xmlAutomataPtr am,
30945 xmlAutomataStatePtr from,
30946 xmlAutomataStatePtr to,
30947 const xmlChar *token,
30948 const xmlChar *token2,
30949 int min,
30950 int max,
30951 void *data);
30952 xmlAutomataStatePtr
30953 xmlAutomataNewAllTrans (xmlAutomataPtr am,
30954 xmlAutomataStatePtr from,
30955 xmlAutomataStatePtr to,
30956 int lax);
30957 xmlAutomataStatePtr
30958 xmlAutomataNewEpsilon (xmlAutomataPtr am,
30959 xmlAutomataStatePtr from,
30960 xmlAutomataStatePtr to);
30961 xmlAutomataStatePtr
30962 xmlAutomataNewCountedTrans (xmlAutomataPtr am,
30963 xmlAutomataStatePtr from,
30964 xmlAutomataStatePtr to,
30965 int counter);
30966 xmlAutomataStatePtr
30967 xmlAutomataNewCounterTrans (xmlAutomataPtr am,
30968 xmlAutomataStatePtr from,
30969 xmlAutomataStatePtr to,
30970 int counter);
30971 int
30972 xmlAutomataNewCounter (xmlAutomataPtr am,
30973 int min,
30974 int max);
30975
30976 xmlRegexpPtr
30977 xmlAutomataCompile (xmlAutomataPtr am);
30978 int
30979 xmlAutomataIsDeterminist (xmlAutomataPtr am);
30980
30981
30982 }
30983 # 19 "/usr/include/libxml2/libxml/valid.h" 2
30984
30985
30986
30987 extern "C" {
30988
30989
30990
30991
30992
30993 typedef struct _xmlValidState xmlValidState;
30994 typedef xmlValidState *xmlValidStatePtr;
30995 # 42 "/usr/include/libxml2/libxml/valid.h"
30996 typedef void ( *xmlValidityErrorFunc) (void *ctx,
30997 const char *msg,
30998 ...) __attribute__((__format__(__printf__,2,3)));
30999 # 57 "/usr/include/libxml2/libxml/valid.h"
31000 typedef void ( *xmlValidityWarningFunc) (void *ctx,
31001 const char *msg,
31002 ...) __attribute__((__format__(__printf__,2,3)));
31003 # 80 "/usr/include/libxml2/libxml/valid.h"
31004 typedef struct _xmlValidCtxt xmlValidCtxt;
31005 typedef xmlValidCtxt *xmlValidCtxtPtr;
31006 struct _xmlValidCtxt {
31007 void *userData;
31008 xmlValidityErrorFunc error;
31009 xmlValidityWarningFunc warning;
31010
31011
31012 xmlNodePtr node;
31013 int nodeNr;
31014 int nodeMax;
31015 xmlNodePtr *nodeTab;
31016
31017 unsigned int finishDtd;
31018 xmlDocPtr doc;
31019 int valid;
31020
31021
31022 xmlValidState *vstate;
31023 int vstateNr;
31024 int vstateMax;
31025 xmlValidState *vstateTab;
31026
31027
31028 xmlAutomataPtr am;
31029 xmlAutomataStatePtr state;
31030
31031
31032
31033
31034 };
31035
31036
31037
31038
31039
31040
31041 typedef struct _xmlHashTable xmlNotationTable;
31042 typedef xmlNotationTable *xmlNotationTablePtr;
31043
31044
31045
31046
31047
31048
31049 typedef struct _xmlHashTable xmlElementTable;
31050 typedef xmlElementTable *xmlElementTablePtr;
31051
31052
31053
31054
31055
31056
31057 typedef struct _xmlHashTable xmlAttributeTable;
31058 typedef xmlAttributeTable *xmlAttributeTablePtr;
31059
31060
31061
31062
31063
31064
31065 typedef struct _xmlHashTable xmlIDTable;
31066 typedef xmlIDTable *xmlIDTablePtr;
31067
31068
31069
31070
31071
31072
31073 typedef struct _xmlHashTable xmlRefTable;
31074 typedef xmlRefTable *xmlRefTablePtr;
31075
31076
31077 xmlNotationPtr
31078 xmlAddNotationDecl (xmlValidCtxtPtr ctxt,
31079 xmlDtdPtr dtd,
31080 const xmlChar *name,
31081 const xmlChar *PublicID,
31082 const xmlChar *SystemID);
31083
31084 xmlNotationTablePtr
31085 xmlCopyNotationTable (xmlNotationTablePtr table);
31086
31087 void
31088 xmlFreeNotationTable (xmlNotationTablePtr table);
31089
31090 void
31091 xmlDumpNotationDecl (xmlBufferPtr buf,
31092 xmlNotationPtr nota);
31093 void
31094 xmlDumpNotationTable (xmlBufferPtr buf,
31095 xmlNotationTablePtr table);
31096
31097
31098
31099
31100 xmlElementContentPtr
31101 xmlNewElementContent (const xmlChar *name,
31102 xmlElementContentType type);
31103 xmlElementContentPtr
31104 xmlCopyElementContent (xmlElementContentPtr content);
31105 void
31106 xmlFreeElementContent (xmlElementContentPtr cur);
31107
31108 xmlElementContentPtr
31109 xmlNewDocElementContent (xmlDocPtr doc,
31110 const xmlChar *name,
31111 xmlElementContentType type);
31112 xmlElementContentPtr
31113 xmlCopyDocElementContent(xmlDocPtr doc,
31114 xmlElementContentPtr content);
31115 void
31116 xmlFreeDocElementContent(xmlDocPtr doc,
31117 xmlElementContentPtr cur);
31118 void
31119 xmlSnprintfElementContent(char *buf,
31120 int size,
31121 xmlElementContentPtr content,
31122 int englob);
31123
31124
31125 void
31126 xmlSprintfElementContent(char *buf,
31127 xmlElementContentPtr content,
31128 int englob);
31129
31130
31131
31132
31133 xmlElementPtr
31134 xmlAddElementDecl (xmlValidCtxtPtr ctxt,
31135 xmlDtdPtr dtd,
31136 const xmlChar *name,
31137 xmlElementTypeVal type,
31138 xmlElementContentPtr content);
31139
31140 xmlElementTablePtr
31141 xmlCopyElementTable (xmlElementTablePtr table);
31142
31143 void
31144 xmlFreeElementTable (xmlElementTablePtr table);
31145
31146 void
31147 xmlDumpElementTable (xmlBufferPtr buf,
31148 xmlElementTablePtr table);
31149 void
31150 xmlDumpElementDecl (xmlBufferPtr buf,
31151 xmlElementPtr elem);
31152
31153
31154
31155 xmlEnumerationPtr
31156 xmlCreateEnumeration (const xmlChar *name);
31157 void
31158 xmlFreeEnumeration (xmlEnumerationPtr cur);
31159
31160 xmlEnumerationPtr
31161 xmlCopyEnumeration (xmlEnumerationPtr cur);
31162
31163
31164
31165 xmlAttributePtr
31166 xmlAddAttributeDecl (xmlValidCtxtPtr ctxt,
31167 xmlDtdPtr dtd,
31168 const xmlChar *elem,
31169 const xmlChar *name,
31170 const xmlChar *ns,
31171 xmlAttributeType type,
31172 xmlAttributeDefault def,
31173 const xmlChar *defaultValue,
31174 xmlEnumerationPtr tree);
31175
31176 xmlAttributeTablePtr
31177 xmlCopyAttributeTable (xmlAttributeTablePtr table);
31178
31179 void
31180 xmlFreeAttributeTable (xmlAttributeTablePtr table);
31181
31182 void
31183 xmlDumpAttributeTable (xmlBufferPtr buf,
31184 xmlAttributeTablePtr table);
31185 void
31186 xmlDumpAttributeDecl (xmlBufferPtr buf,
31187 xmlAttributePtr attr);
31188
31189
31190
31191 xmlIDPtr
31192 xmlAddID (xmlValidCtxtPtr ctxt,
31193 xmlDocPtr doc,
31194 const xmlChar *value,
31195 xmlAttrPtr attr);
31196 void
31197 xmlFreeIDTable (xmlIDTablePtr table);
31198 xmlAttrPtr
31199 xmlGetID (xmlDocPtr doc,
31200 const xmlChar *ID);
31201 int
31202 xmlIsID (xmlDocPtr doc,
31203 xmlNodePtr elem,
31204 xmlAttrPtr attr);
31205 int
31206 xmlRemoveID (xmlDocPtr doc,
31207 xmlAttrPtr attr);
31208
31209
31210 xmlRefPtr
31211 xmlAddRef (xmlValidCtxtPtr ctxt,
31212 xmlDocPtr doc,
31213 const xmlChar *value,
31214 xmlAttrPtr attr);
31215 void
31216 xmlFreeRefTable (xmlRefTablePtr table);
31217 int
31218 xmlIsRef (xmlDocPtr doc,
31219 xmlNodePtr elem,
31220 xmlAttrPtr attr);
31221 int
31222 xmlRemoveRef (xmlDocPtr doc,
31223 xmlAttrPtr attr);
31224 xmlListPtr
31225 xmlGetRefs (xmlDocPtr doc,
31226 const xmlChar *ID);
31227
31228
31229
31230
31231
31232
31233 xmlValidCtxtPtr
31234 xmlNewValidCtxt(void);
31235 void
31236 xmlFreeValidCtxt(xmlValidCtxtPtr);
31237
31238 int
31239 xmlValidateRoot (xmlValidCtxtPtr ctxt,
31240 xmlDocPtr doc);
31241 int
31242 xmlValidateElementDecl (xmlValidCtxtPtr ctxt,
31243 xmlDocPtr doc,
31244 xmlElementPtr elem);
31245 xmlChar *
31246 xmlValidNormalizeAttributeValue(xmlDocPtr doc,
31247 xmlNodePtr elem,
31248 const xmlChar *name,
31249 const xmlChar *value);
31250 xmlChar *
31251 xmlValidCtxtNormalizeAttributeValue(xmlValidCtxtPtr ctxt,
31252 xmlDocPtr doc,
31253 xmlNodePtr elem,
31254 const xmlChar *name,
31255 const xmlChar *value);
31256 int
31257 xmlValidateAttributeDecl(xmlValidCtxtPtr ctxt,
31258 xmlDocPtr doc,
31259 xmlAttributePtr attr);
31260 int
31261 xmlValidateAttributeValue(xmlAttributeType type,
31262 const xmlChar *value);
31263 int
31264 xmlValidateNotationDecl (xmlValidCtxtPtr ctxt,
31265 xmlDocPtr doc,
31266 xmlNotationPtr nota);
31267 int
31268 xmlValidateDtd (xmlValidCtxtPtr ctxt,
31269 xmlDocPtr doc,
31270 xmlDtdPtr dtd);
31271 int
31272 xmlValidateDtdFinal (xmlValidCtxtPtr ctxt,
31273 xmlDocPtr doc);
31274 int
31275 xmlValidateDocument (xmlValidCtxtPtr ctxt,
31276 xmlDocPtr doc);
31277 int
31278 xmlValidateElement (xmlValidCtxtPtr ctxt,
31279 xmlDocPtr doc,
31280 xmlNodePtr elem);
31281 int
31282 xmlValidateOneElement (xmlValidCtxtPtr ctxt,
31283 xmlDocPtr doc,
31284 xmlNodePtr elem);
31285 int
31286 xmlValidateOneAttribute (xmlValidCtxtPtr ctxt,
31287 xmlDocPtr doc,
31288 xmlNodePtr elem,
31289 xmlAttrPtr attr,
31290 const xmlChar *value);
31291 int
31292 xmlValidateOneNamespace (xmlValidCtxtPtr ctxt,
31293 xmlDocPtr doc,
31294 xmlNodePtr elem,
31295 const xmlChar *prefix,
31296 xmlNsPtr ns,
31297 const xmlChar *value);
31298 int
31299 xmlValidateDocumentFinal(xmlValidCtxtPtr ctxt,
31300 xmlDocPtr doc);
31301
31302
31303
31304 int
31305 xmlValidateNotationUse (xmlValidCtxtPtr ctxt,
31306 xmlDocPtr doc,
31307 const xmlChar *notationName);
31308
31309
31310 int
31311 xmlIsMixedElement (xmlDocPtr doc,
31312 const xmlChar *name);
31313 xmlAttributePtr
31314 xmlGetDtdAttrDesc (xmlDtdPtr dtd,
31315 const xmlChar *elem,
31316 const xmlChar *name);
31317 xmlAttributePtr
31318 xmlGetDtdQAttrDesc (xmlDtdPtr dtd,
31319 const xmlChar *elem,
31320 const xmlChar *name,
31321 const xmlChar *prefix);
31322 xmlNotationPtr
31323 xmlGetDtdNotationDesc (xmlDtdPtr dtd,
31324 const xmlChar *name);
31325 xmlElementPtr
31326 xmlGetDtdQElementDesc (xmlDtdPtr dtd,
31327 const xmlChar *name,
31328 const xmlChar *prefix);
31329 xmlElementPtr
31330 xmlGetDtdElementDesc (xmlDtdPtr dtd,
31331 const xmlChar *name);
31332
31333
31334
31335 int
31336 xmlValidGetPotentialChildren(xmlElementContent *ctree,
31337 const xmlChar **names,
31338 int *len,
31339 int max);
31340
31341 int
31342 xmlValidGetValidElements(xmlNode *prev,
31343 xmlNode *next,
31344 const xmlChar **names,
31345 int max);
31346 int
31347 xmlValidateNameValue (const xmlChar *value);
31348 int
31349 xmlValidateNamesValue (const xmlChar *value);
31350 int
31351 xmlValidateNmtokenValue (const xmlChar *value);
31352 int
31353 xmlValidateNmtokensValue(const xmlChar *value);
31354
31355
31356
31357
31358
31359 int
31360 xmlValidBuildContentModel(xmlValidCtxtPtr ctxt,
31361 xmlElementPtr elem);
31362
31363 int
31364 xmlValidatePushElement (xmlValidCtxtPtr ctxt,
31365 xmlDocPtr doc,
31366 xmlNodePtr elem,
31367 const xmlChar *qname);
31368 int
31369 xmlValidatePushCData (xmlValidCtxtPtr ctxt,
31370 const xmlChar *data,
31371 int len);
31372 int
31373 xmlValidatePopElement (xmlValidCtxtPtr ctxt,
31374 xmlDocPtr doc,
31375 xmlNodePtr elem,
31376 const xmlChar *qname);
31377
31378
31379
31380 }
31381 # 20 "/usr/include/libxml2/libxml/parser.h" 2
31382 # 1 "/usr/include/libxml2/libxml/entities.h" 1
31383 # 12 "/usr/include/libxml2/libxml/entities.h"
31384 #define __XML_ENTITIES_H__
31385
31386
31387
31388
31389
31390 extern "C" {
31391
31392
31393
31394
31395
31396 typedef enum {
31397 XML_INTERNAL_GENERAL_ENTITY = 1,
31398 XML_EXTERNAL_GENERAL_PARSED_ENTITY = 2,
31399 XML_EXTERNAL_GENERAL_UNPARSED_ENTITY = 3,
31400 XML_INTERNAL_PARAMETER_ENTITY = 4,
31401 XML_EXTERNAL_PARAMETER_ENTITY = 5,
31402 XML_INTERNAL_PREDEFINED_ENTITY = 6
31403 } xmlEntityType;
31404
31405
31406
31407
31408
31409
31410 struct _xmlEntity {
31411 void *_private;
31412 xmlElementType type;
31413 const xmlChar *name;
31414 struct _xmlNode *children;
31415 struct _xmlNode *last;
31416 struct _xmlDtd *parent;
31417 struct _xmlNode *next;
31418 struct _xmlNode *prev;
31419 struct _xmlDoc *doc;
31420
31421 xmlChar *orig;
31422 xmlChar *content;
31423 int length;
31424 xmlEntityType etype;
31425 const xmlChar *ExternalID;
31426 const xmlChar *SystemID;
31427
31428 struct _xmlEntity *nexte;
31429 const xmlChar *URI;
31430 int owner;
31431 int checked;
31432
31433
31434 };
31435
31436
31437
31438
31439
31440
31441 typedef struct _xmlHashTable xmlEntitiesTable;
31442 typedef xmlEntitiesTable *xmlEntitiesTablePtr;
31443
31444
31445
31446
31447
31448
31449 void
31450 xmlInitializePredefinedEntities (void);
31451
31452
31453 xmlEntityPtr
31454 xmlNewEntity (xmlDocPtr doc,
31455 const xmlChar *name,
31456 int type,
31457 const xmlChar *ExternalID,
31458 const xmlChar *SystemID,
31459 const xmlChar *content);
31460 xmlEntityPtr
31461 xmlAddDocEntity (xmlDocPtr doc,
31462 const xmlChar *name,
31463 int type,
31464 const xmlChar *ExternalID,
31465 const xmlChar *SystemID,
31466 const xmlChar *content);
31467 xmlEntityPtr
31468 xmlAddDtdEntity (xmlDocPtr doc,
31469 const xmlChar *name,
31470 int type,
31471 const xmlChar *ExternalID,
31472 const xmlChar *SystemID,
31473 const xmlChar *content);
31474 xmlEntityPtr
31475 xmlGetPredefinedEntity (const xmlChar *name);
31476 xmlEntityPtr
31477 xmlGetDocEntity (xmlDocPtr doc,
31478 const xmlChar *name);
31479 xmlEntityPtr
31480 xmlGetDtdEntity (xmlDocPtr doc,
31481 const xmlChar *name);
31482 xmlEntityPtr
31483 xmlGetParameterEntity (xmlDocPtr doc,
31484 const xmlChar *name);
31485
31486 const xmlChar *
31487 xmlEncodeEntities (xmlDocPtr doc,
31488 const xmlChar *input);
31489
31490 xmlChar *
31491 xmlEncodeEntitiesReentrant(xmlDocPtr doc,
31492 const xmlChar *input);
31493 xmlChar *
31494 xmlEncodeSpecialChars (xmlDocPtr doc,
31495 const xmlChar *input);
31496 xmlEntitiesTablePtr
31497 xmlCreateEntitiesTable (void);
31498
31499 xmlEntitiesTablePtr
31500 xmlCopyEntitiesTable (xmlEntitiesTablePtr table);
31501
31502 void
31503 xmlFreeEntitiesTable (xmlEntitiesTablePtr table);
31504
31505 void
31506 xmlDumpEntitiesTable (xmlBufferPtr buf,
31507 xmlEntitiesTablePtr table);
31508 void
31509 xmlDumpEntityDecl (xmlBufferPtr buf,
31510 xmlEntityPtr ent);
31511
31512
31513 void
31514 xmlCleanupPredefinedEntities(void);
31515
31516
31517
31518
31519 }
31520 # 21 "/usr/include/libxml2/libxml/parser.h" 2
31521 # 1 "/usr/include/libxml2/libxml/xmlerror.h" 1
31522 # 22 "/usr/include/libxml2/libxml/parser.h" 2
31523
31524
31525
31526 extern "C" {
31527
31528
31529
31530
31531
31532
31533
31534 #define XML_DEFAULT_VERSION "1.0"
31535 # 52 "/usr/include/libxml2/libxml/parser.h"
31536 typedef void (* xmlParserInputDeallocate)(xmlChar *str);
31537
31538 struct _xmlParserInput {
31539
31540 xmlParserInputBufferPtr buf;
31541
31542 const char *filename;
31543 const char *directory;
31544 const xmlChar *base;
31545 const xmlChar *cur;
31546 const xmlChar *end;
31547 int length;
31548 int line;
31549 int col;
31550
31551
31552
31553
31554
31555 unsigned long consumed;
31556 xmlParserInputDeallocate free;
31557 const xmlChar *encoding;
31558 const xmlChar *version;
31559 int standalone;
31560 int id;
31561 };
31562 # 86 "/usr/include/libxml2/libxml/parser.h"
31563 typedef struct _xmlParserNodeInfo xmlParserNodeInfo;
31564 typedef xmlParserNodeInfo *xmlParserNodeInfoPtr;
31565
31566 struct _xmlParserNodeInfo {
31567 const struct _xmlNode* node;
31568
31569 unsigned long begin_pos;
31570 unsigned long begin_line;
31571 unsigned long end_pos;
31572 unsigned long end_line;
31573 };
31574
31575 typedef struct _xmlParserNodeInfoSeq xmlParserNodeInfoSeq;
31576 typedef xmlParserNodeInfoSeq *xmlParserNodeInfoSeqPtr;
31577 struct _xmlParserNodeInfoSeq {
31578 unsigned long maximum;
31579 unsigned long length;
31580 xmlParserNodeInfo* buffer;
31581 };
31582
31583
31584
31585
31586
31587
31588
31589 typedef enum {
31590 XML_PARSER_EOF = -1,
31591 XML_PARSER_START = 0,
31592 XML_PARSER_MISC,
31593 XML_PARSER_PI,
31594 XML_PARSER_DTD,
31595 XML_PARSER_PROLOG,
31596 XML_PARSER_COMMENT,
31597 XML_PARSER_START_TAG,
31598 XML_PARSER_CONTENT,
31599 XML_PARSER_CDATA_SECTION,
31600 XML_PARSER_END_TAG,
31601 XML_PARSER_ENTITY_DECL,
31602 XML_PARSER_ENTITY_VALUE,
31603 XML_PARSER_ATTRIBUTE_VALUE,
31604 XML_PARSER_SYSTEM_LITERAL,
31605 XML_PARSER_EPILOG,
31606 XML_PARSER_IGNORE,
31607 XML_PARSER_PUBLIC_LITERAL
31608 } xmlParserInputState;
31609
31610
31611
31612
31613
31614
31615
31616 #define XML_DETECT_IDS 2
31617 # 148 "/usr/include/libxml2/libxml/parser.h"
31618 #define XML_COMPLETE_ATTRS 4
31619
31620
31621
31622
31623
31624
31625
31626 #define XML_SKIP_IDS 8
31627
31628
31629
31630
31631
31632
31633 typedef enum {
31634 XML_PARSE_UNKNOWN = 0,
31635 XML_PARSE_DOM = 1,
31636 XML_PARSE_SAX = 2,
31637 XML_PARSE_PUSH_DOM = 3,
31638 XML_PARSE_PUSH_SAX = 4,
31639 XML_PARSE_READER = 5
31640 } xmlParserMode;
31641 # 184 "/usr/include/libxml2/libxml/parser.h"
31642 struct _xmlParserCtxt {
31643 struct _xmlSAXHandler *sax;
31644 void *userData;
31645 xmlDocPtr myDoc;
31646 int wellFormed;
31647 int replaceEntities;
31648 const xmlChar *version;
31649 const xmlChar *encoding;
31650 int standalone;
31651 int html;
31652
31653
31654
31655
31656
31657 xmlParserInputPtr input;
31658 int inputNr;
31659 int inputMax;
31660 xmlParserInputPtr *inputTab;
31661
31662
31663 xmlNodePtr node;
31664 int nodeNr;
31665 int nodeMax;
31666 xmlNodePtr *nodeTab;
31667
31668 int record_info;
31669 xmlParserNodeInfoSeq node_seq;
31670
31671 int errNo;
31672
31673 int hasExternalSubset;
31674 int hasPErefs;
31675 int external;
31676
31677 int valid;
31678 int validate;
31679 xmlValidCtxt vctxt;
31680
31681 xmlParserInputState instate;
31682 int token;
31683
31684 char *directory;
31685
31686
31687 const xmlChar *name;
31688 int nameNr;
31689 int nameMax;
31690 const xmlChar * *nameTab;
31691
31692 long nbChars;
31693 long checkIndex;
31694 int keepBlanks;
31695 int disableSAX;
31696 int inSubset;
31697 const xmlChar * intSubName;
31698 xmlChar * extSubURI;
31699 xmlChar * extSubSystem;
31700
31701
31702 int * space;
31703 int spaceNr;
31704 int spaceMax;
31705 int * spaceTab;
31706
31707 int depth;
31708 xmlParserInputPtr entity;
31709 int charset;
31710
31711 int nodelen;
31712 int nodemem;
31713 int pedantic;
31714 void *_private;
31715
31716 int loadsubset;
31717 int linenumbers;
31718 void *catalogs;
31719 int recovery;
31720 int progressive;
31721 xmlDictPtr dict;
31722 const xmlChar * *atts;
31723 int maxatts;
31724 int docdict;
31725
31726
31727
31728
31729 const xmlChar *str_xml;
31730 const xmlChar *str_xmlns;
31731 const xmlChar *str_xml_ns;
31732
31733
31734
31735
31736 int sax2;
31737 int nsNr;
31738 int nsMax;
31739 const xmlChar * *nsTab;
31740 int *attallocs;
31741 void * *pushTab;
31742 xmlHashTablePtr attsDefault;
31743 xmlHashTablePtr attsSpecial;
31744 int nsWellFormed;
31745 int options;
31746
31747
31748
31749
31750 int dictNames;
31751 int freeElemsNr;
31752 xmlNodePtr freeElems;
31753 int freeAttrsNr;
31754 xmlAttrPtr freeAttrs;
31755
31756
31757
31758
31759 xmlError lastError;
31760 xmlParserMode parseMode;
31761 unsigned long nbentities;
31762 unsigned long sizeentities;
31763
31764
31765 xmlParserNodeInfo *nodeInfo;
31766 int nodeInfoNr;
31767 int nodeInfoMax;
31768 xmlParserNodeInfo *nodeInfoTab;
31769 };
31770
31771
31772
31773
31774
31775
31776 struct _xmlSAXLocator {
31777 const xmlChar *(*getPublicId)(void *ctx);
31778 const xmlChar *(*getSystemId)(void *ctx);
31779 int (*getLineNumber)(void *ctx);
31780 int (*getColumnNumber)(void *ctx);
31781 };
31782 # 347 "/usr/include/libxml2/libxml/parser.h"
31783 typedef xmlParserInputPtr (*resolveEntitySAXFunc) (void *ctx,
31784 const xmlChar *publicId,
31785 const xmlChar *systemId);
31786 # 359 "/usr/include/libxml2/libxml/parser.h"
31787 typedef void (*internalSubsetSAXFunc) (void *ctx,
31788 const xmlChar *name,
31789 const xmlChar *ExternalID,
31790 const xmlChar *SystemID);
31791 # 372 "/usr/include/libxml2/libxml/parser.h"
31792 typedef void (*externalSubsetSAXFunc) (void *ctx,
31793 const xmlChar *name,
31794 const xmlChar *ExternalID,
31795 const xmlChar *SystemID);
31796 # 385 "/usr/include/libxml2/libxml/parser.h"
31797 typedef xmlEntityPtr (*getEntitySAXFunc) (void *ctx,
31798 const xmlChar *name);
31799 # 396 "/usr/include/libxml2/libxml/parser.h"
31800 typedef xmlEntityPtr (*getParameterEntitySAXFunc) (void *ctx,
31801 const xmlChar *name);
31802 # 409 "/usr/include/libxml2/libxml/parser.h"
31803 typedef void (*entityDeclSAXFunc) (void *ctx,
31804 const xmlChar *name,
31805 int type,
31806 const xmlChar *publicId,
31807 const xmlChar *systemId,
31808 xmlChar *content);
31809 # 424 "/usr/include/libxml2/libxml/parser.h"
31810 typedef void (*notationDeclSAXFunc)(void *ctx,
31811 const xmlChar *name,
31812 const xmlChar *publicId,
31813 const xmlChar *systemId);
31814 # 440 "/usr/include/libxml2/libxml/parser.h"
31815 typedef void (*attributeDeclSAXFunc)(void *ctx,
31816 const xmlChar *elem,
31817 const xmlChar *fullname,
31818 int type,
31819 int def,
31820 const xmlChar *defaultValue,
31821 xmlEnumerationPtr tree);
31822 # 456 "/usr/include/libxml2/libxml/parser.h"
31823 typedef void (*elementDeclSAXFunc)(void *ctx,
31824 const xmlChar *name,
31825 int type,
31826 xmlElementContentPtr content);
31827 # 470 "/usr/include/libxml2/libxml/parser.h"
31828 typedef void (*unparsedEntityDeclSAXFunc)(void *ctx,
31829 const xmlChar *name,
31830 const xmlChar *publicId,
31831 const xmlChar *systemId,
31832 const xmlChar *notationName);
31833 # 483 "/usr/include/libxml2/libxml/parser.h"
31834 typedef void (*setDocumentLocatorSAXFunc) (void *ctx,
31835 xmlSAXLocatorPtr loc);
31836
31837
31838
31839
31840
31841
31842 typedef void (*startDocumentSAXFunc) (void *ctx);
31843
31844
31845
31846
31847
31848
31849 typedef void (*endDocumentSAXFunc) (void *ctx);
31850 # 507 "/usr/include/libxml2/libxml/parser.h"
31851 typedef void (*startElementSAXFunc) (void *ctx,
31852 const xmlChar *name,
31853 const xmlChar **atts);
31854
31855
31856
31857
31858
31859
31860
31861 typedef void (*endElementSAXFunc) (void *ctx,
31862 const xmlChar *name);
31863 # 530 "/usr/include/libxml2/libxml/parser.h"
31864 typedef void (*attributeSAXFunc) (void *ctx,
31865 const xmlChar *name,
31866 const xmlChar *value);
31867
31868
31869
31870
31871
31872
31873
31874 typedef void (*referenceSAXFunc) (void *ctx,
31875 const xmlChar *name);
31876 # 550 "/usr/include/libxml2/libxml/parser.h"
31877 typedef void (*charactersSAXFunc) (void *ctx,
31878 const xmlChar *ch,
31879 int len);
31880 # 562 "/usr/include/libxml2/libxml/parser.h"
31881 typedef void (*ignorableWhitespaceSAXFunc) (void *ctx,
31882 const xmlChar *ch,
31883 int len);
31884 # 573 "/usr/include/libxml2/libxml/parser.h"
31885 typedef void (*processingInstructionSAXFunc) (void *ctx,
31886 const xmlChar *target,
31887 const xmlChar *data);
31888
31889
31890
31891
31892
31893
31894
31895 typedef void (*commentSAXFunc) (void *ctx,
31896 const xmlChar *value);
31897 # 593 "/usr/include/libxml2/libxml/parser.h"
31898 typedef void (*cdataBlockSAXFunc) (
31899 void *ctx,
31900 const xmlChar *value,
31901 int len);
31902 # 605 "/usr/include/libxml2/libxml/parser.h"
31903 typedef void ( *warningSAXFunc) (void *ctx,
31904 const char *msg, ...) __attribute__((__format__(__printf__,2,3)));
31905 # 615 "/usr/include/libxml2/libxml/parser.h"
31906 typedef void ( *errorSAXFunc) (void *ctx,
31907 const char *msg, ...) __attribute__((__format__(__printf__,2,3)));
31908 # 627 "/usr/include/libxml2/libxml/parser.h"
31909 typedef void ( *fatalErrorSAXFunc) (void *ctx,
31910 const char *msg, ...) __attribute__((__format__(__printf__,2,3)));
31911 # 637 "/usr/include/libxml2/libxml/parser.h"
31912 typedef int (*isStandaloneSAXFunc) (void *ctx);
31913 # 646 "/usr/include/libxml2/libxml/parser.h"
31914 typedef int (*hasInternalSubsetSAXFunc) (void *ctx);
31915 # 656 "/usr/include/libxml2/libxml/parser.h"
31916 typedef int (*hasExternalSubsetSAXFunc) (void *ctx);
31917 # 668 "/usr/include/libxml2/libxml/parser.h"
31918 #define XML_SAX2_MAGIC 0xDEEDBEAF
31919 # 689 "/usr/include/libxml2/libxml/parser.h"
31920 typedef void (*startElementNsSAX2Func) (void *ctx,
31921 const xmlChar *localname,
31922 const xmlChar *prefix,
31923 const xmlChar *URI,
31924 int nb_namespaces,
31925 const xmlChar **namespaces,
31926 int nb_attributes,
31927 int nb_defaulted,
31928 const xmlChar **attributes);
31929 # 710 "/usr/include/libxml2/libxml/parser.h"
31930 typedef void (*endElementNsSAX2Func) (void *ctx,
31931 const xmlChar *localname,
31932 const xmlChar *prefix,
31933 const xmlChar *URI);
31934
31935
31936 struct _xmlSAXHandler {
31937 internalSubsetSAXFunc internalSubset;
31938 isStandaloneSAXFunc isStandalone;
31939 hasInternalSubsetSAXFunc hasInternalSubset;
31940 hasExternalSubsetSAXFunc hasExternalSubset;
31941 resolveEntitySAXFunc resolveEntity;
31942 getEntitySAXFunc getEntity;
31943 entityDeclSAXFunc entityDecl;
31944 notationDeclSAXFunc notationDecl;
31945 attributeDeclSAXFunc attributeDecl;
31946 elementDeclSAXFunc elementDecl;
31947 unparsedEntityDeclSAXFunc unparsedEntityDecl;
31948 setDocumentLocatorSAXFunc setDocumentLocator;
31949 startDocumentSAXFunc startDocument;
31950 endDocumentSAXFunc endDocument;
31951 startElementSAXFunc startElement;
31952 endElementSAXFunc endElement;
31953 referenceSAXFunc reference;
31954 charactersSAXFunc characters;
31955 ignorableWhitespaceSAXFunc ignorableWhitespace;
31956 processingInstructionSAXFunc processingInstruction;
31957 commentSAXFunc comment;
31958 warningSAXFunc warning;
31959 errorSAXFunc error;
31960 fatalErrorSAXFunc fatalError;
31961 getParameterEntitySAXFunc getParameterEntity;
31962 cdataBlockSAXFunc cdataBlock;
31963 externalSubsetSAXFunc externalSubset;
31964 unsigned int initialized;
31965
31966 void *_private;
31967 startElementNsSAX2Func startElementNs;
31968 endElementNsSAX2Func endElementNs;
31969 xmlStructuredErrorFunc serror;
31970 };
31971
31972
31973
31974
31975 typedef struct _xmlSAXHandlerV1 xmlSAXHandlerV1;
31976 typedef xmlSAXHandlerV1 *xmlSAXHandlerV1Ptr;
31977 struct _xmlSAXHandlerV1 {
31978 internalSubsetSAXFunc internalSubset;
31979 isStandaloneSAXFunc isStandalone;
31980 hasInternalSubsetSAXFunc hasInternalSubset;
31981 hasExternalSubsetSAXFunc hasExternalSubset;
31982 resolveEntitySAXFunc resolveEntity;
31983 getEntitySAXFunc getEntity;
31984 entityDeclSAXFunc entityDecl;
31985 notationDeclSAXFunc notationDecl;
31986 attributeDeclSAXFunc attributeDecl;
31987 elementDeclSAXFunc elementDecl;
31988 unparsedEntityDeclSAXFunc unparsedEntityDecl;
31989 setDocumentLocatorSAXFunc setDocumentLocator;
31990 startDocumentSAXFunc startDocument;
31991 endDocumentSAXFunc endDocument;
31992 startElementSAXFunc startElement;
31993 endElementSAXFunc endElement;
31994 referenceSAXFunc reference;
31995 charactersSAXFunc characters;
31996 ignorableWhitespaceSAXFunc ignorableWhitespace;
31997 processingInstructionSAXFunc processingInstruction;
31998 commentSAXFunc comment;
31999 warningSAXFunc warning;
32000 errorSAXFunc error;
32001 fatalErrorSAXFunc fatalError;
32002 getParameterEntitySAXFunc getParameterEntity;
32003 cdataBlockSAXFunc cdataBlock;
32004 externalSubsetSAXFunc externalSubset;
32005 unsigned int initialized;
32006 };
32007 # 799 "/usr/include/libxml2/libxml/parser.h"
32008 typedef xmlParserInputPtr (*xmlExternalEntityLoader) (const char *URL,
32009 const char *ID,
32010 xmlParserCtxtPtr context);
32011
32012
32013 }
32014
32015
32016 # 1 "/usr/include/libxml2/libxml/encoding.h" 1
32017 # 23 "/usr/include/libxml2/libxml/encoding.h"
32018 #define __XML_CHAR_ENCODING_H__
32019
32020
32021
32022
32023 # 1 "/usr/include/iconv.h" 1 3 4
32024 # 20 "/usr/include/iconv.h" 3 4
32025 #define _ICONV_H 1
32026
32027
32028 #define __need_size_t
32029 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 1 3 4
32030 # 160 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 3 4
32031 #undef __need_ptrdiff_t
32032 # 233 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 3 4
32033 #undef __need_size_t
32034 # 342 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 3 4
32035 #undef __need_wchar_t
32036 # 395 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 3 4
32037 #undef NULL
32038
32039 #define NULL __null
32040 # 406 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 3 4
32041 #undef __need_NULL
32042
32043
32044
32045
32046 #define offsetof(TYPE,MEMBER) __builtin_offsetof (TYPE, MEMBER)
32047 # 25 "/usr/include/iconv.h" 2 3 4
32048
32049
32050 extern "C" {
32051
32052
32053 typedef void *iconv_t;
32054
32055
32056
32057
32058
32059
32060
32061 extern iconv_t iconv_open (__const char *__tocode, __const char *__fromcode);
32062
32063
32064
32065
32066 extern size_t iconv (iconv_t __cd, char **__restrict __inbuf,
32067 size_t *__restrict __inbytesleft,
32068 char **__restrict __outbuf,
32069 size_t *__restrict __outbytesleft);
32070
32071
32072
32073
32074
32075 extern int iconv_close (iconv_t __cd);
32076
32077 }
32078 # 29 "/usr/include/libxml2/libxml/encoding.h" 2
32079
32080
32081 # 1 "/usr/include/unicode/ucnv.h" 1 3 4
32082 # 48 "/usr/include/unicode/ucnv.h" 3 4
32083 #define UCNV_H
32084
32085 # 1 "/usr/include/unicode/ucnv_err.h" 1 3 4
32086 # 84 "/usr/include/unicode/ucnv_err.h" 3 4
32087 #define UCNV_ERR_H
32088
32089 # 1 "/usr/include/unicode/utypes.h" 1 3 4
32090 # 33 "/usr/include/unicode/utypes.h" 3 4
32091 #define UTYPES_H
32092
32093
32094 # 1 "/usr/include/unicode/umachine.h" 1 3 4
32095 # 24 "/usr/include/unicode/umachine.h" 3 4
32096 #define __UMACHINE_H__
32097 # 58 "/usr/include/unicode/umachine.h" 3 4
32098 # 1 "/usr/include/unicode/ptypes.h" 1 3 4
32099 # 21 "/usr/include/unicode/ptypes.h" 3 4
32100 #define _PTYPES_H
32101
32102 # 1 "/usr/include/sys/types.h" 1 3 4
32103 # 24 "/usr/include/sys/types.h" 3 4
32104 #define _SYS_TYPES_H 1
32105
32106
32107
32108 extern "C" {
32109
32110
32111
32112
32113
32114 typedef __u_char u_char;
32115 typedef __u_short u_short;
32116 typedef __u_int u_int;
32117 typedef __u_long u_long;
32118 typedef __quad_t quad_t;
32119 typedef __u_quad_t u_quad_t;
32120 typedef __fsid_t fsid_t;
32121 #define __u_char_defined
32122
32123
32124
32125 typedef __loff_t loff_t;
32126
32127
32128
32129 typedef __ino_t ino_t;
32130
32131
32132
32133 #define __ino_t_defined
32134
32135
32136 typedef __ino64_t ino64_t;
32137 #define __ino64_t_defined
32138
32139
32140
32141 typedef __dev_t dev_t;
32142 #define __dev_t_defined
32143 # 71 "/usr/include/sys/types.h" 3 4
32144 typedef __mode_t mode_t;
32145 #define __mode_t_defined
32146
32147
32148
32149 typedef __nlink_t nlink_t;
32150 #define __nlink_t_defined
32151 # 105 "/usr/include/sys/types.h" 3 4
32152 typedef __id_t id_t;
32153 #define __id_t_defined
32154 # 116 "/usr/include/sys/types.h" 3 4
32155 typedef __daddr_t daddr_t;
32156 typedef __caddr_t caddr_t;
32157 #define __daddr_t_defined
32158
32159
32160
32161
32162 typedef __key_t key_t;
32163 #define __key_t_defined
32164
32165
32166
32167 #define __need_clock_t
32168
32169 #define __need_time_t
32170 #define __need_timer_t
32171 #define __need_clockid_t
32172 # 141 "/usr/include/sys/types.h" 3 4
32173 typedef __suseconds_t suseconds_t;
32174 #define __suseconds_t_defined
32175
32176
32177
32178 #define __need_size_t
32179 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 1 3 4
32180 # 160 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 3 4
32181 #undef __need_ptrdiff_t
32182 # 233 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 3 4
32183 #undef __need_size_t
32184 # 342 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 3 4
32185 #undef __need_wchar_t
32186 # 395 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 3 4
32187 #undef NULL
32188
32189 #define NULL __null
32190 # 406 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 3 4
32191 #undef __need_NULL
32192
32193
32194
32195
32196 #define offsetof(TYPE,MEMBER) __builtin_offsetof (TYPE, MEMBER)
32197 # 148 "/usr/include/sys/types.h" 2 3 4
32198
32199
32200
32201 typedef unsigned long int ulong;
32202 typedef unsigned short int ushort;
32203 typedef unsigned int uint;
32204 # 188 "/usr/include/sys/types.h" 3 4
32205 #define __intN_t(N,MODE) typedef int int ##N ##_t __attribute__ ((__mode__ (MODE)))
32206
32207 #define __u_intN_t(N,MODE) typedef unsigned int u_int ##N ##_t __attribute__ ((__mode__ (MODE)))
32208
32209
32210
32211 #define __int8_t_defined
32212 typedef int int8_t __attribute__ ((__mode__ (__QI__)));
32213 typedef int int16_t __attribute__ ((__mode__ (__HI__)));
32214 typedef int int32_t __attribute__ ((__mode__ (__SI__)));
32215 typedef int int64_t __attribute__ ((__mode__ (__DI__)));
32216
32217
32218 typedef unsigned int u_int8_t __attribute__ ((__mode__ (__QI__)));
32219 typedef unsigned int u_int16_t __attribute__ ((__mode__ (__HI__)));
32220 typedef unsigned int u_int32_t __attribute__ ((__mode__ (__SI__)));
32221 typedef unsigned int u_int64_t __attribute__ ((__mode__ (__DI__)));
32222
32223 typedef int register_t __attribute__ ((__mode__ (__word__)));
32224
32225
32226
32227
32228
32229 #define __BIT_TYPES_DEFINED__ 1
32230
32231
32232
32233
32234
32235
32236
32237 # 1 "/usr/include/sys/select.h" 1 3 4
32238 # 23 "/usr/include/sys/select.h" 3 4
32239 #define _SYS_SELECT_H 1
32240
32241
32242
32243
32244
32245
32246
32247 # 1 "/usr/include/bits/select.h" 1 3 4
32248 # 23 "/usr/include/bits/select.h" 3 4
32249 # 1 "/usr/include/bits/wordsize.h" 1 3 4
32250
32251
32252
32253 #define __WORDSIZE 64
32254 #define __WORDSIZE_COMPAT32 1
32255 # 24 "/usr/include/bits/select.h" 2 3 4
32256
32257
32258
32259
32260
32261 #define __FD_ZERO_STOS "stosq"
32262
32263
32264
32265
32266 #define __FD_ZERO(fdsp) do { int __d0, __d1; __asm__ __volatile__ ("cld; rep; " __FD_ZERO_STOS : "=c" (__d0), "=D" (__d1) : "a" (0), "0" (sizeof (fd_set) / sizeof (__fd_mask)), "1" (&__FDS_BITS (fdsp)[0]) : "memory"); } while (0)
32267 # 59 "/usr/include/bits/select.h" 3 4
32268 #define __FD_SET(d,set) ((void) (__FDS_BITS (set)[__FDELT (d)] |= __FDMASK (d)))
32269
32270 #define __FD_CLR(d,set) ((void) (__FDS_BITS (set)[__FDELT (d)] &= ~__FDMASK (d)))
32271
32272 #define __FD_ISSET(d,set) ((__FDS_BITS (set)[__FDELT (d)] & __FDMASK (d)) != 0)
32273 # 32 "/usr/include/sys/select.h" 2 3 4
32274
32275
32276 # 1 "/usr/include/bits/sigset.h" 1 3 4
32277 # 22 "/usr/include/bits/sigset.h" 3 4
32278 #define _SIGSET_H_types 1
32279
32280 typedef int __sig_atomic_t;
32281
32282
32283
32284 #define _SIGSET_NWORDS (1024 / (8 * sizeof (unsigned long int)))
32285 typedef struct
32286 {
32287 unsigned long int __val[(1024 / (8 * sizeof (unsigned long int)))];
32288 } __sigset_t;
32289 # 35 "/usr/include/sys/select.h" 2 3 4
32290
32291
32292 #define __sigset_t_defined
32293 typedef __sigset_t sigset_t;
32294
32295
32296
32297 #define __need_time_t
32298 #define __need_timespec
32299
32300 #define __need_timeval
32301 # 1 "/usr/include/bits/time.h" 1 3 4
32302 # 99 "/usr/include/bits/time.h" 3 4
32303 #undef __need_timeval
32304 # 47 "/usr/include/sys/select.h" 2 3 4
32305 # 55 "/usr/include/sys/select.h" 3 4
32306 typedef long int __fd_mask;
32307
32308
32309 #undef __NFDBITS
32310 #undef __FDELT
32311 #undef __FDMASK
32312
32313 #define __NFDBITS (8 * (int) sizeof (__fd_mask))
32314 #define __FDELT(d) ((d) / __NFDBITS)
32315 #define __FDMASK(d) ((__fd_mask) 1 << ((d) % __NFDBITS))
32316
32317
32318 typedef struct
32319 {
32320
32321
32322
32323 __fd_mask fds_bits[1024 / (8 * (int) sizeof (__fd_mask))];
32324 #define __FDS_BITS(set) ((set)->fds_bits)
32325
32326
32327
32328
32329 } fd_set;
32330
32331
32332 #define FD_SETSIZE __FD_SETSIZE
32333
32334
32335
32336 typedef __fd_mask fd_mask;
32337
32338
32339 #define NFDBITS __NFDBITS
32340
32341
32342
32343
32344 #define FD_SET(fd,fdsetp) __FD_SET (fd, fdsetp)
32345 #define FD_CLR(fd,fdsetp) __FD_CLR (fd, fdsetp)
32346 #define FD_ISSET(fd,fdsetp) __FD_ISSET (fd, fdsetp)
32347 #define FD_ZERO(fdsetp) __FD_ZERO (fdsetp)
32348
32349
32350 extern "C" {
32351 # 109 "/usr/include/sys/select.h" 3 4
32352 extern int select (int __nfds, fd_set *__restrict __readfds,
32353 fd_set *__restrict __writefds,
32354 fd_set *__restrict __exceptfds,
32355 struct timeval *__restrict __timeout);
32356 # 121 "/usr/include/sys/select.h" 3 4
32357 extern int pselect (int __nfds, fd_set *__restrict __readfds,
32358 fd_set *__restrict __writefds,
32359 fd_set *__restrict __exceptfds,
32360 const struct timespec *__restrict __timeout,
32361 const __sigset_t *__restrict __sigmask);
32362
32363
32364 }
32365 # 221 "/usr/include/sys/types.h" 2 3 4
32366
32367
32368 # 1 "/usr/include/sys/sysmacros.h" 1 3 4
32369 # 22 "/usr/include/sys/sysmacros.h" 3 4
32370 #define _SYS_SYSMACROS_H 1
32371
32372
32373
32374
32375
32376
32377
32378 extern "C" {
32379
32380 __extension__
32381 extern unsigned int gnu_dev_major (unsigned long long int __dev)
32382 throw ();
32383 __extension__
32384 extern unsigned int gnu_dev_minor (unsigned long long int __dev)
32385 throw ();
32386 __extension__
32387 extern unsigned long long int gnu_dev_makedev (unsigned int __major,
32388 unsigned int __minor)
32389 throw ();
32390
32391
32392 __extension__ extern __inline __attribute__ ((__gnu_inline__)) unsigned int
32393 gnu_dev_major (unsigned long long int __dev) throw ()
32394 {
32395 return ((__dev >> 8) & 0xfff) | ((unsigned int) (__dev >> 32) & ~0xfff);
32396 }
32397
32398 __extension__ extern __inline __attribute__ ((__gnu_inline__)) unsigned int
32399 gnu_dev_minor (unsigned long long int __dev) throw ()
32400 {
32401 return (__dev & 0xff) | ((unsigned int) (__dev >> 12) & ~0xff);
32402 }
32403
32404 __extension__ extern __inline __attribute__ ((__gnu_inline__)) unsigned long long int
32405 gnu_dev_makedev (unsigned int __major, unsigned int __minor) throw ()
32406 {
32407 return ((__minor & 0xff) | ((__major & 0xfff) << 8)
32408 | (((unsigned long long int) (__minor & ~0xff)) << 12)
32409 | (((unsigned long long int) (__major & ~0xfff)) << 32));
32410 }
32411
32412 }
32413
32414
32415 #define major(dev) gnu_dev_major (dev)
32416 #define minor(dev) gnu_dev_minor (dev)
32417 #define makedev(maj,min) gnu_dev_makedev (maj, min)
32418 # 224 "/usr/include/sys/types.h" 2 3 4
32419
32420
32421
32422
32423
32424 typedef __blksize_t blksize_t;
32425 #define __blksize_t_defined
32426
32427
32428
32429
32430
32431 typedef __blkcnt_t blkcnt_t;
32432 #define __blkcnt_t_defined
32433
32434
32435 typedef __fsblkcnt_t fsblkcnt_t;
32436 #define __fsblkcnt_t_defined
32437
32438
32439 typedef __fsfilcnt_t fsfilcnt_t;
32440 #define __fsfilcnt_t_defined
32441 # 263 "/usr/include/sys/types.h" 3 4
32442 typedef __blkcnt64_t blkcnt64_t;
32443 typedef __fsblkcnt64_t fsblkcnt64_t;
32444 typedef __fsfilcnt64_t fsfilcnt64_t;
32445 # 274 "/usr/include/sys/types.h" 3 4
32446 }
32447 # 24 "/usr/include/unicode/ptypes.h" 2 3 4
32448
32449 # 1 "/usr/include/unicode/platform.h" 1 3 4
32450 # 24 "/usr/include/unicode/platform.h" 3 4
32451 #define _PLATFORM_H
32452 # 41 "/usr/include/unicode/platform.h" 3 4
32453 #define UCLN_NO_AUTO_CLEANUP 1
32454 # 53 "/usr/include/unicode/platform.h" 3 4
32455 #define U_LINUX
32456 # 62 "/usr/include/unicode/platform.h" 3 4
32457 #define U_HAVE_DIRENT_H 1
32458
32459
32460
32461
32462 #define U_HAVE_INTTYPES_H 1
32463 # 85 "/usr/include/unicode/platform.h" 3 4
32464 #define U_IOSTREAM_SOURCE 199711
32465 # 97 "/usr/include/unicode/platform.h" 3 4
32466 #define U_HAVE_STD_STRING 1
32467
32468
32469
32470
32471 #define U_HAVE_INT8_T 1
32472
32473
32474
32475 #define U_HAVE_UINT8_T 1
32476
32477
32478
32479 #define U_HAVE_INT16_T 1
32480
32481
32482
32483 #define U_HAVE_UINT16_T 1
32484
32485
32486
32487 #define U_HAVE_INT32_T 1
32488
32489
32490
32491 #define U_HAVE_UINT32_T 1
32492
32493
32494
32495 #define U_HAVE_INT64_T 1
32496
32497
32498
32499 #define U_HAVE_UINT64_T 1
32500 # 141 "/usr/include/unicode/platform.h" 3 4
32501 #define U_HAVE_NAMESPACE 1
32502
32503
32504
32505
32506
32507
32508 #define U_IS_BIG_ENDIAN (BYTE_ORDER == BIG_ENDIAN)
32509
32510
32511
32512
32513
32514
32515 #define ICU_USE_THREADS 1
32516
32517
32518
32519 #define U_DEBUG 0
32520
32521
32522
32523 #define U_RELEASE 1
32524
32525
32526
32527
32528
32529 #define U_DISABLE_RENAMING 0
32530
32531
32532
32533
32534 #define U_OVERRIDE_CXX_ALLOCATION 1
32535
32536
32537
32538 #define U_HAVE_PLACEMENT_NEW 1
32539
32540
32541
32542
32543 #define U_ENABLE_TRACING 0
32544
32545
32546
32547
32548
32549
32550
32551 #define U_ENABLE_DYLOAD 1
32552
32553
32554
32555
32556
32557
32558
32559 #define U_CHECK_DYLOAD 1
32560
32561
32562
32563
32564
32565 #define U_DEFAULT_SHOW_DRAFT 1
32566 # 225 "/usr/include/unicode/platform.h" 3 4
32567 #define U_HAVE_WCHAR_H 1
32568
32569
32570
32571 #define U_SIZEOF_WCHAR_T 4
32572
32573
32574
32575 #define U_HAVE_WCSCPY 1
32576 # 249 "/usr/include/unicode/platform.h" 3 4
32577 #define U_GNUC_UTF16_STRING 0
32578 # 274 "/usr/include/unicode/platform.h" 3 4
32579 #define U_HAVE_NL_LANGINFO_CODESET 1
32580
32581
32582
32583 #define U_NL_LANGINFO_CODESET CODESET
32584
32585
32586
32587 #define U_TZSET tzset
32588
32589
32590 #define U_TIMEZONE __timezone
32591
32592
32593 #define U_TZNAME tzname
32594
32595
32596 #define U_HAVE_MMAP 1
32597 #define U_HAVE_POPEN 1
32598 # 303 "/usr/include/unicode/platform.h" 3 4
32599 #define U_EXPORT __attribute__((visibility("default")))
32600 # 314 "/usr/include/unicode/platform.h" 3 4
32601 #define U_EXPORT2
32602
32603
32604
32605
32606
32607 #define U_IMPORT
32608 # 331 "/usr/include/unicode/platform.h" 3 4
32609 #define U_INLINE inline
32610
32611
32612
32613
32614
32615
32616 #define U_ALIGN_CODE(n)
32617 # 352 "/usr/include/unicode/platform.h" 3 4
32618 #define U_HAVE_GCC_ATOMICS 1
32619 # 366 "/usr/include/unicode/platform.h" 3 4
32620 #define U_MAKE "/usr/bin/gmake"
32621 # 381 "/usr/include/unicode/platform.h" 3 4
32622 #define U_LIB_SUFFIX_C_NAME
32623
32624
32625
32626
32627 #define U_LIB_SUFFIX_C_NAME_STRING ""
32628
32629
32630
32631
32632 #define U_HAVE_LIB_SUFFIX 0
32633 # 26 "/usr/include/unicode/ptypes.h" 2 3 4
32634 # 51 "/usr/include/unicode/ptypes.h" 3 4
32635 # 1 "/usr/include/inttypes.h" 1 3 4
32636 # 24 "/usr/include/inttypes.h" 3 4
32637 #define _INTTYPES_H 1
32638
32639
32640
32641 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stdint.h" 1 3 4
32642
32643
32644 # 1 "/usr/include/stdint.h" 1 3 4
32645 # 24 "/usr/include/stdint.h" 3 4
32646 #define _STDINT_H 1
32647
32648
32649
32650 # 1 "/usr/include/bits/wordsize.h" 1 3 4
32651
32652
32653
32654 #define __WORDSIZE 64
32655 #define __WORDSIZE_COMPAT32 1
32656 # 29 "/usr/include/stdint.h" 2 3 4
32657 # 49 "/usr/include/stdint.h" 3 4
32658 typedef unsigned char uint8_t;
32659 typedef unsigned short int uint16_t;
32660
32661 typedef unsigned int uint32_t;
32662 #define __uint32_t_defined
32663
32664
32665 typedef unsigned long int uint64_t;
32666 # 66 "/usr/include/stdint.h" 3 4
32667 typedef signed char int_least8_t;
32668 typedef short int int_least16_t;
32669 typedef int int_least32_t;
32670
32671 typedef long int int_least64_t;
32672
32673
32674
32675
32676
32677
32678 typedef unsigned char uint_least8_t;
32679 typedef unsigned short int uint_least16_t;
32680 typedef unsigned int uint_least32_t;
32681
32682 typedef unsigned long int uint_least64_t;
32683 # 91 "/usr/include/stdint.h" 3 4
32684 typedef signed char int_fast8_t;
32685
32686 typedef long int int_fast16_t;
32687 typedef long int int_fast32_t;
32688 typedef long int int_fast64_t;
32689 # 104 "/usr/include/stdint.h" 3 4
32690 typedef unsigned char uint_fast8_t;
32691
32692 typedef unsigned long int uint_fast16_t;
32693 typedef unsigned long int uint_fast32_t;
32694 typedef unsigned long int uint_fast64_t;
32695 # 123 "/usr/include/stdint.h" 3 4
32696 typedef unsigned long int uintptr_t;
32697 # 135 "/usr/include/stdint.h" 3 4
32698 typedef long int intmax_t;
32699 typedef unsigned long int uintmax_t;
32700 # 4 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stdint.h" 2 3 4
32701
32702
32703
32704 #define _GCC_WRAP_STDINT_H
32705 # 29 "/usr/include/inttypes.h" 2 3 4
32706
32707
32708
32709
32710 #define __gwchar_t wchar_t
32711
32712
32713
32714
32715
32716
32717
32718 #define ____gwchar_t_defined 1
32719 # 274 "/usr/include/inttypes.h" 3 4
32720 extern "C" {
32721
32722
32723
32724
32725 typedef struct
32726 {
32727 long int quot;
32728 long int rem;
32729 } imaxdiv_t;
32730 # 298 "/usr/include/inttypes.h" 3 4
32731 extern intmax_t imaxabs (intmax_t __n) throw () __attribute__ ((__const__));
32732
32733
32734 extern imaxdiv_t imaxdiv (intmax_t __numer, intmax_t __denom)
32735 throw () __attribute__ ((__const__));
32736
32737
32738 extern intmax_t strtoimax (__const char *__restrict __nptr,
32739 char **__restrict __endptr, int __base) throw ();
32740
32741
32742 extern uintmax_t strtoumax (__const char *__restrict __nptr,
32743 char ** __restrict __endptr, int __base) throw ();
32744
32745
32746 extern intmax_t wcstoimax (__const wchar_t *__restrict __nptr,
32747 wchar_t **__restrict __endptr, int __base)
32748 throw ();
32749
32750
32751 extern uintmax_t wcstoumax (__const wchar_t *__restrict __nptr,
32752 wchar_t ** __restrict __endptr, int __base)
32753 throw ();
32754
32755
32756
32757
32758
32759 extern long int __strtol_internal (__const char *__restrict __nptr,
32760 char **__restrict __endptr,
32761 int __base, int __group)
32762 throw () __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
32763
32764 extern __inline __attribute__ ((__gnu_inline__)) intmax_t
32765 strtoimax (__const char *__restrict nptr, char **__restrict endptr, int base) throw ()
32766
32767 {
32768 return __strtol_internal (nptr, endptr, base, 0);
32769 }
32770
32771 extern unsigned long int __strtoul_internal (__const char *
32772 __restrict __nptr,
32773 char ** __restrict __endptr,
32774 int __base, int __group)
32775 throw () __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
32776
32777 extern __inline __attribute__ ((__gnu_inline__)) uintmax_t
32778 strtoumax (__const char *__restrict nptr, char **__restrict endptr, int base) throw ()
32779
32780 {
32781 return __strtoul_internal (nptr, endptr, base, 0);
32782 }
32783
32784 extern long int __wcstol_internal (__const wchar_t * __restrict __nptr,
32785 wchar_t **__restrict __endptr,
32786 int __base, int __group)
32787 throw () __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
32788
32789 extern __inline __attribute__ ((__gnu_inline__)) intmax_t
32790 wcstoimax (__const wchar_t *__restrict nptr, wchar_t **__restrict endptr, int base) throw ()
32791
32792 {
32793 return __wcstol_internal (nptr, endptr, base, 0);
32794 }
32795
32796 extern unsigned long int __wcstoul_internal (__const wchar_t *
32797 __restrict __nptr,
32798 wchar_t **
32799 __restrict __endptr,
32800 int __base, int __group)
32801 throw () __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
32802
32803 extern __inline __attribute__ ((__gnu_inline__)) uintmax_t
32804 wcstoumax (__const wchar_t *__restrict nptr, wchar_t **__restrict endptr, int base) throw ()
32805
32806 {
32807 return __wcstoul_internal (nptr, endptr, base, 0);
32808 }
32809 # 442 "/usr/include/inttypes.h" 3 4
32810 }
32811 # 52 "/usr/include/unicode/ptypes.h" 2 3 4
32812 # 59 "/usr/include/unicode/umachine.h" 2 3 4
32813
32814
32815
32816
32817
32818
32819 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 1 3 4
32820 # 66 "/usr/include/unicode/umachine.h" 2 3 4
32821 # 74 "/usr/include/unicode/umachine.h" 3 4
32822 #define XP_CPLUSPLUS
32823 # 105 "/usr/include/unicode/umachine.h" 3 4
32824 #define U_CFUNC extern "C"
32825 #define U_CDECL_BEGIN extern "C" {
32826 #define U_CDECL_END }
32827 # 121 "/usr/include/unicode/umachine.h" 3 4
32828 #define U_ATTRIBUTE_DEPRECATED __attribute__ ((deprecated))
32829 # 135 "/usr/include/unicode/umachine.h" 3 4
32830 #define U_CAPI U_CFUNC U_EXPORT
32831
32832 #define U_STABLE U_CAPI
32833
32834 #define U_DRAFT U_CAPI
32835
32836 #define U_DEPRECATED U_CAPI U_ATTRIBUTE_DEPRECATED
32837
32838 #define U_OBSOLETE U_CAPI
32839
32840 #define U_INTERNAL U_CAPI
32841
32842
32843
32844
32845
32846
32847
32848 #define INT8_MIN ((int8_t)(-128))
32849
32850
32851
32852 #define INT16_MIN ((int16_t)(-32767-1))
32853
32854
32855
32856 #define INT32_MIN ((int32_t)(-2147483647-1))
32857
32858
32859
32860
32861 #define INT8_MAX ((int8_t)(127))
32862
32863
32864
32865 #define INT16_MAX ((int16_t)(32767))
32866
32867
32868
32869 #define INT32_MAX ((int32_t)(2147483647))
32870
32871
32872
32873
32874 #define UINT8_MAX ((uint8_t)(255U))
32875
32876
32877
32878 #define UINT16_MAX ((uint16_t)(65535U))
32879
32880
32881
32882 #define UINT32_MAX ((uint32_t)(4294967295U))
32883 # 199 "/usr/include/unicode/umachine.h" 3 4
32884 #define INT64_C(c) c ## LL
32885
32886
32887
32888
32889
32890
32891
32892 #define UINT64_C(c) c ## ULL
32893
32894
32895
32896 #define U_INT64_MIN ((int64_t)(INT64_C(-9223372036854775807)-1))
32897
32898
32899
32900 #define U_INT64_MAX ((int64_t)(INT64_C(9223372036854775807)))
32901
32902
32903
32904 #define U_UINT64_MAX ((uint64_t)(UINT64_C(18446744073709551615)))
32905 # 228 "/usr/include/unicode/umachine.h" 3 4
32906 typedef int8_t UBool;
32907
32908
32909
32910 #define TRUE 1
32911
32912
32913
32914 #define FALSE 0
32915 # 284 "/usr/include/unicode/umachine.h" 3 4
32916 #define U_WCHAR_IS_UTF32
32917 # 302 "/usr/include/unicode/umachine.h" 3 4
32918 #define U_SIZEOF_UCHAR 2
32919 # 325 "/usr/include/unicode/umachine.h" 3 4
32920 typedef uint16_t UChar;
32921 # 345 "/usr/include/unicode/umachine.h" 3 4
32922 typedef int32_t UChar32;
32923 # 382 "/usr/include/unicode/umachine.h" 3 4
32924 # 1 "/usr/include/unicode/urename.h" 1 3 4
32925 # 22 "/usr/include/unicode/urename.h" 3 4
32926 #define URENAME_H
32927 # 35 "/usr/include/unicode/urename.h" 3 4
32928 # 1 "/usr/include/unicode/umachine.h" 1 3 4
32929 # 36 "/usr/include/unicode/urename.h" 2 3 4
32930
32931
32932
32933
32934 # 1 "/usr/include/unicode/uvernum.h" 1 3 4
32935 # 38 "/usr/include/unicode/uvernum.h" 3 4
32936 #define UVERNUM_H
32937
32938
32939
32940
32941
32942 #define U_COPYRIGHT_STRING " Copyright (C) 2011, International Business Machines Corporation and others. All Rights Reserved. "
32943
32944
32945
32946
32947
32948
32949 #define U_ICU_VERSION_MAJOR_NUM 4
32950
32951
32952
32953
32954
32955 #define U_ICU_VERSION_MINOR_NUM 8
32956
32957
32958
32959
32960
32961 #define U_ICU_VERSION_PATCHLEVEL_NUM 1
32962
32963
32964
32965
32966
32967
32968 #define U_ICU_VERSION_BUILDLEVEL_NUM 1
32969
32970
32971
32972
32973
32974
32975 #define U_ICU_VERSION_SUFFIX _48
32976 # 86 "/usr/include/unicode/uvernum.h" 3 4
32977 #define U_ICU_ENTRY_POINT_RENAME(x) x ## _48
32978
32979
32980
32981
32982
32983
32984
32985 #define U_ICU_VERSION "4.8.1.1"
32986
32987
32988
32989
32990
32991 #define U_ICU_VERSION_SHORT "48"
32992
32993
32994
32995
32996 #define U_ICU_DATA_VERSION "4.8.1"
32997 # 120 "/usr/include/unicode/uvernum.h" 3 4
32998 #define UCOL_RUNTIME_VERSION 7
32999 # 129 "/usr/include/unicode/uvernum.h" 3 4
33000 #define UCOL_BUILDER_VERSION 8
33001
33002
33003
33004
33005
33006
33007 #define UCOL_TAILORINGS_VERSION 1
33008 # 41 "/usr/include/unicode/urename.h" 2 3 4
33009 # 51 "/usr/include/unicode/urename.h" 3 4
33010 #define DECPOWERS U_ICU_ENTRY_POINT_RENAME(DECPOWERS)
33011 #define DECSTICKYTAB U_ICU_ENTRY_POINT_RENAME(DECSTICKYTAB)
33012 #define LEN_CANONICAL_SYSTEM_LOCATION_ZONES U_ICU_ENTRY_POINT_RENAME(LEN_CANONICAL_SYSTEM_LOCATION_ZONES)
33013 #define LEN_CANONICAL_SYSTEM_ZONES U_ICU_ENTRY_POINT_RENAME(LEN_CANONICAL_SYSTEM_ZONES)
33014 #define LEN_SYSTEM_ZONES U_ICU_ENTRY_POINT_RENAME(LEN_SYSTEM_ZONES)
33015 #define LNnn U_ICU_ENTRY_POINT_RENAME(LNnn)
33016 #define T_CString_int64ToString U_ICU_ENTRY_POINT_RENAME(T_CString_int64ToString)
33017 #define T_CString_integerToString U_ICU_ENTRY_POINT_RENAME(T_CString_integerToString)
33018 #define T_CString_stricmp U_ICU_ENTRY_POINT_RENAME(T_CString_stricmp)
33019 #define T_CString_stringToInteger U_ICU_ENTRY_POINT_RENAME(T_CString_stringToInteger)
33020 #define T_CString_strnicmp U_ICU_ENTRY_POINT_RENAME(T_CString_strnicmp)
33021 #define T_CString_toLowerCase U_ICU_ENTRY_POINT_RENAME(T_CString_toLowerCase)
33022 #define T_CString_toUpperCase U_ICU_ENTRY_POINT_RENAME(T_CString_toUpperCase)
33023 #define UCNV_FROM_U_CALLBACK_ESCAPE U_ICU_ENTRY_POINT_RENAME(UCNV_FROM_U_CALLBACK_ESCAPE)
33024 #define UCNV_FROM_U_CALLBACK_SKIP U_ICU_ENTRY_POINT_RENAME(UCNV_FROM_U_CALLBACK_SKIP)
33025 #define UCNV_FROM_U_CALLBACK_STOP U_ICU_ENTRY_POINT_RENAME(UCNV_FROM_U_CALLBACK_STOP)
33026 #define UCNV_FROM_U_CALLBACK_SUBSTITUTE U_ICU_ENTRY_POINT_RENAME(UCNV_FROM_U_CALLBACK_SUBSTITUTE)
33027 #define UCNV_TO_U_CALLBACK_ESCAPE U_ICU_ENTRY_POINT_RENAME(UCNV_TO_U_CALLBACK_ESCAPE)
33028 #define UCNV_TO_U_CALLBACK_SKIP U_ICU_ENTRY_POINT_RENAME(UCNV_TO_U_CALLBACK_SKIP)
33029 #define UCNV_TO_U_CALLBACK_STOP U_ICU_ENTRY_POINT_RENAME(UCNV_TO_U_CALLBACK_STOP)
33030 #define UCNV_TO_U_CALLBACK_SUBSTITUTE U_ICU_ENTRY_POINT_RENAME(UCNV_TO_U_CALLBACK_SUBSTITUTE)
33031 #define UDataMemory_createNewInstance U_ICU_ENTRY_POINT_RENAME(UDataMemory_createNewInstance)
33032 #define UDataMemory_init U_ICU_ENTRY_POINT_RENAME(UDataMemory_init)
33033 #define UDataMemory_isLoaded U_ICU_ENTRY_POINT_RENAME(UDataMemory_isLoaded)
33034 #define UDataMemory_normalizeDataPointer U_ICU_ENTRY_POINT_RENAME(UDataMemory_normalizeDataPointer)
33035 #define UDataMemory_setData U_ICU_ENTRY_POINT_RENAME(UDataMemory_setData)
33036 #define UDatamemory_assign U_ICU_ENTRY_POINT_RENAME(UDatamemory_assign)
33037 #define _ASCIIData U_ICU_ENTRY_POINT_RENAME(_ASCIIData)
33038 #define _Bocu1Data U_ICU_ENTRY_POINT_RENAME(_Bocu1Data)
33039 #define _CESU8Data U_ICU_ENTRY_POINT_RENAME(_CESU8Data)
33040 #define _CompoundTextData U_ICU_ENTRY_POINT_RENAME(_CompoundTextData)
33041 #define _HZData U_ICU_ENTRY_POINT_RENAME(_HZData)
33042 #define _IMAPData U_ICU_ENTRY_POINT_RENAME(_IMAPData)
33043 #define _ISCIIData U_ICU_ENTRY_POINT_RENAME(_ISCIIData)
33044 #define _ISO2022Data U_ICU_ENTRY_POINT_RENAME(_ISO2022Data)
33045 #define _LMBCSData1 U_ICU_ENTRY_POINT_RENAME(_LMBCSData1)
33046 #define _LMBCSData11 U_ICU_ENTRY_POINT_RENAME(_LMBCSData11)
33047 #define _LMBCSData16 U_ICU_ENTRY_POINT_RENAME(_LMBCSData16)
33048 #define _LMBCSData17 U_ICU_ENTRY_POINT_RENAME(_LMBCSData17)
33049 #define _LMBCSData18 U_ICU_ENTRY_POINT_RENAME(_LMBCSData18)
33050 #define _LMBCSData19 U_ICU_ENTRY_POINT_RENAME(_LMBCSData19)
33051 #define _LMBCSData2 U_ICU_ENTRY_POINT_RENAME(_LMBCSData2)
33052 #define _LMBCSData3 U_ICU_ENTRY_POINT_RENAME(_LMBCSData3)
33053 #define _LMBCSData4 U_ICU_ENTRY_POINT_RENAME(_LMBCSData4)
33054 #define _LMBCSData5 U_ICU_ENTRY_POINT_RENAME(_LMBCSData5)
33055 #define _LMBCSData6 U_ICU_ENTRY_POINT_RENAME(_LMBCSData6)
33056 #define _LMBCSData8 U_ICU_ENTRY_POINT_RENAME(_LMBCSData8)
33057 #define _Latin1Data U_ICU_ENTRY_POINT_RENAME(_Latin1Data)
33058 #define _MBCSData U_ICU_ENTRY_POINT_RENAME(_MBCSData)
33059 #define _SCSUData U_ICU_ENTRY_POINT_RENAME(_SCSUData)
33060 #define _UTF16BEData U_ICU_ENTRY_POINT_RENAME(_UTF16BEData)
33061 #define _UTF16Data U_ICU_ENTRY_POINT_RENAME(_UTF16Data)
33062 #define _UTF16LEData U_ICU_ENTRY_POINT_RENAME(_UTF16LEData)
33063 #define _UTF32BEData U_ICU_ENTRY_POINT_RENAME(_UTF32BEData)
33064 #define _UTF32Data U_ICU_ENTRY_POINT_RENAME(_UTF32Data)
33065 #define _UTF32LEData U_ICU_ENTRY_POINT_RENAME(_UTF32LEData)
33066 #define _UTF7Data U_ICU_ENTRY_POINT_RENAME(_UTF7Data)
33067 #define _UTF8Data U_ICU_ENTRY_POINT_RENAME(_UTF8Data)
33068 #define bms_close U_ICU_ENTRY_POINT_RENAME(bms_close)
33069 #define bms_empty U_ICU_ENTRY_POINT_RENAME(bms_empty)
33070 #define bms_getData U_ICU_ENTRY_POINT_RENAME(bms_getData)
33071 #define bms_open U_ICU_ENTRY_POINT_RENAME(bms_open)
33072 #define bms_search U_ICU_ENTRY_POINT_RENAME(bms_search)
33073 #define bms_setTargetString U_ICU_ENTRY_POINT_RENAME(bms_setTargetString)
33074 #define buildWSConfusableData U_ICU_ENTRY_POINT_RENAME(buildWSConfusableData)
33075 #define cmemory_cleanup U_ICU_ENTRY_POINT_RENAME(cmemory_cleanup)
33076 #define cmemory_inUse U_ICU_ENTRY_POINT_RENAME(cmemory_inUse)
33077 #define d2utable U_ICU_ENTRY_POINT_RENAME(d2utable)
33078 #define deleteCEList U_ICU_ENTRY_POINT_RENAME(deleteCEList)
33079 #define deleteChars U_ICU_ENTRY_POINT_RENAME(deleteChars)
33080 #define deleteCollDataCacheEntry U_ICU_ENTRY_POINT_RENAME(deleteCollDataCacheEntry)
33081 #define deleteStringList U_ICU_ENTRY_POINT_RENAME(deleteStringList)
33082 #define deleteUnicodeStringKey U_ICU_ENTRY_POINT_RENAME(deleteUnicodeStringKey)
33083 #define izrule_clone U_ICU_ENTRY_POINT_RENAME(izrule_clone)
33084 #define izrule_close U_ICU_ENTRY_POINT_RENAME(izrule_close)
33085 #define izrule_equals U_ICU_ENTRY_POINT_RENAME(izrule_equals)
33086 #define izrule_getDSTSavings U_ICU_ENTRY_POINT_RENAME(izrule_getDSTSavings)
33087 #define izrule_getDynamicClassID U_ICU_ENTRY_POINT_RENAME(izrule_getDynamicClassID)
33088 #define izrule_getFinalStart U_ICU_ENTRY_POINT_RENAME(izrule_getFinalStart)
33089 #define izrule_getFirstStart U_ICU_ENTRY_POINT_RENAME(izrule_getFirstStart)
33090 #define izrule_getName U_ICU_ENTRY_POINT_RENAME(izrule_getName)
33091 #define izrule_getNextStart U_ICU_ENTRY_POINT_RENAME(izrule_getNextStart)
33092 #define izrule_getPreviousStart U_ICU_ENTRY_POINT_RENAME(izrule_getPreviousStart)
33093 #define izrule_getRawOffset U_ICU_ENTRY_POINT_RENAME(izrule_getRawOffset)
33094 #define izrule_getStaticClassID U_ICU_ENTRY_POINT_RENAME(izrule_getStaticClassID)
33095 #define izrule_isEquivalentTo U_ICU_ENTRY_POINT_RENAME(izrule_isEquivalentTo)
33096 #define izrule_open U_ICU_ENTRY_POINT_RENAME(izrule_open)
33097 #define le_close U_ICU_ENTRY_POINT_RENAME(le_close)
33098 #define le_create U_ICU_ENTRY_POINT_RENAME(le_create)
33099 #define le_getCharIndices U_ICU_ENTRY_POINT_RENAME(le_getCharIndices)
33100 #define le_getCharIndicesWithBase U_ICU_ENTRY_POINT_RENAME(le_getCharIndicesWithBase)
33101 #define le_getGlyphCount U_ICU_ENTRY_POINT_RENAME(le_getGlyphCount)
33102 #define le_getGlyphPosition U_ICU_ENTRY_POINT_RENAME(le_getGlyphPosition)
33103 #define le_getGlyphPositions U_ICU_ENTRY_POINT_RENAME(le_getGlyphPositions)
33104 #define le_getGlyphs U_ICU_ENTRY_POINT_RENAME(le_getGlyphs)
33105 #define le_layoutChars U_ICU_ENTRY_POINT_RENAME(le_layoutChars)
33106 #define le_reset U_ICU_ENTRY_POINT_RENAME(le_reset)
33107 #define locale_getKeywords U_ICU_ENTRY_POINT_RENAME(locale_getKeywords)
33108 #define locale_getKeywordsStart U_ICU_ENTRY_POINT_RENAME(locale_getKeywordsStart)
33109 #define locale_get_default U_ICU_ENTRY_POINT_RENAME(locale_get_default)
33110 #define locale_set_default U_ICU_ENTRY_POINT_RENAME(locale_set_default)
33111 #define pl_addFontRun U_ICU_ENTRY_POINT_RENAME(pl_addFontRun)
33112 #define pl_addLocaleRun U_ICU_ENTRY_POINT_RENAME(pl_addLocaleRun)
33113 #define pl_addValueRun U_ICU_ENTRY_POINT_RENAME(pl_addValueRun)
33114 #define pl_close U_ICU_ENTRY_POINT_RENAME(pl_close)
33115 #define pl_closeFontRuns U_ICU_ENTRY_POINT_RENAME(pl_closeFontRuns)
33116 #define pl_closeLine U_ICU_ENTRY_POINT_RENAME(pl_closeLine)
33117 #define pl_closeLocaleRuns U_ICU_ENTRY_POINT_RENAME(pl_closeLocaleRuns)
33118 #define pl_closeValueRuns U_ICU_ENTRY_POINT_RENAME(pl_closeValueRuns)
33119 #define pl_countLineRuns U_ICU_ENTRY_POINT_RENAME(pl_countLineRuns)
33120 #define pl_create U_ICU_ENTRY_POINT_RENAME(pl_create)
33121 #define pl_getAscent U_ICU_ENTRY_POINT_RENAME(pl_getAscent)
33122 #define pl_getDescent U_ICU_ENTRY_POINT_RENAME(pl_getDescent)
33123 #define pl_getFontRunCount U_ICU_ENTRY_POINT_RENAME(pl_getFontRunCount)
33124 #define pl_getFontRunFont U_ICU_ENTRY_POINT_RENAME(pl_getFontRunFont)
33125 #define pl_getFontRunLastLimit U_ICU_ENTRY_POINT_RENAME(pl_getFontRunLastLimit)
33126 #define pl_getFontRunLimit U_ICU_ENTRY_POINT_RENAME(pl_getFontRunLimit)
33127 #define pl_getLeading U_ICU_ENTRY_POINT_RENAME(pl_getLeading)
33128 #define pl_getLineAscent U_ICU_ENTRY_POINT_RENAME(pl_getLineAscent)
33129 #define pl_getLineDescent U_ICU_ENTRY_POINT_RENAME(pl_getLineDescent)
33130 #define pl_getLineLeading U_ICU_ENTRY_POINT_RENAME(pl_getLineLeading)
33131 #define pl_getLineVisualRun U_ICU_ENTRY_POINT_RENAME(pl_getLineVisualRun)
33132 #define pl_getLineWidth U_ICU_ENTRY_POINT_RENAME(pl_getLineWidth)
33133 #define pl_getLocaleRunCount U_ICU_ENTRY_POINT_RENAME(pl_getLocaleRunCount)
33134 #define pl_getLocaleRunLastLimit U_ICU_ENTRY_POINT_RENAME(pl_getLocaleRunLastLimit)
33135 #define pl_getLocaleRunLimit U_ICU_ENTRY_POINT_RENAME(pl_getLocaleRunLimit)
33136 #define pl_getLocaleRunLocale U_ICU_ENTRY_POINT_RENAME(pl_getLocaleRunLocale)
33137 #define pl_getParagraphLevel U_ICU_ENTRY_POINT_RENAME(pl_getParagraphLevel)
33138 #define pl_getTextDirection U_ICU_ENTRY_POINT_RENAME(pl_getTextDirection)
33139 #define pl_getValueRunCount U_ICU_ENTRY_POINT_RENAME(pl_getValueRunCount)
33140 #define pl_getValueRunLastLimit U_ICU_ENTRY_POINT_RENAME(pl_getValueRunLastLimit)
33141 #define pl_getValueRunLimit U_ICU_ENTRY_POINT_RENAME(pl_getValueRunLimit)
33142 #define pl_getValueRunValue U_ICU_ENTRY_POINT_RENAME(pl_getValueRunValue)
33143 #define pl_getVisualRunAscent U_ICU_ENTRY_POINT_RENAME(pl_getVisualRunAscent)
33144 #define pl_getVisualRunDescent U_ICU_ENTRY_POINT_RENAME(pl_getVisualRunDescent)
33145 #define pl_getVisualRunDirection U_ICU_ENTRY_POINT_RENAME(pl_getVisualRunDirection)
33146 #define pl_getVisualRunFont U_ICU_ENTRY_POINT_RENAME(pl_getVisualRunFont)
33147 #define pl_getVisualRunGlyphCount U_ICU_ENTRY_POINT_RENAME(pl_getVisualRunGlyphCount)
33148 #define pl_getVisualRunGlyphToCharMap U_ICU_ENTRY_POINT_RENAME(pl_getVisualRunGlyphToCharMap)
33149 #define pl_getVisualRunGlyphs U_ICU_ENTRY_POINT_RENAME(pl_getVisualRunGlyphs)
33150 #define pl_getVisualRunLeading U_ICU_ENTRY_POINT_RENAME(pl_getVisualRunLeading)
33151 #define pl_getVisualRunPositions U_ICU_ENTRY_POINT_RENAME(pl_getVisualRunPositions)
33152 #define pl_isComplex U_ICU_ENTRY_POINT_RENAME(pl_isComplex)
33153 #define pl_nextLine U_ICU_ENTRY_POINT_RENAME(pl_nextLine)
33154 #define pl_openEmptyFontRuns U_ICU_ENTRY_POINT_RENAME(pl_openEmptyFontRuns)
33155 #define pl_openEmptyLocaleRuns U_ICU_ENTRY_POINT_RENAME(pl_openEmptyLocaleRuns)
33156 #define pl_openEmptyValueRuns U_ICU_ENTRY_POINT_RENAME(pl_openEmptyValueRuns)
33157 #define pl_openFontRuns U_ICU_ENTRY_POINT_RENAME(pl_openFontRuns)
33158 #define pl_openLocaleRuns U_ICU_ENTRY_POINT_RENAME(pl_openLocaleRuns)
33159 #define pl_openValueRuns U_ICU_ENTRY_POINT_RENAME(pl_openValueRuns)
33160 #define pl_reflow U_ICU_ENTRY_POINT_RENAME(pl_reflow)
33161 #define pl_resetFontRuns U_ICU_ENTRY_POINT_RENAME(pl_resetFontRuns)
33162 #define pl_resetLocaleRuns U_ICU_ENTRY_POINT_RENAME(pl_resetLocaleRuns)
33163 #define pl_resetValueRuns U_ICU_ENTRY_POINT_RENAME(pl_resetValueRuns)
33164 #define res_countArrayItems U_ICU_ENTRY_POINT_RENAME(res_countArrayItems)
33165 #define res_findResource U_ICU_ENTRY_POINT_RENAME(res_findResource)
33166 #define res_getAlias U_ICU_ENTRY_POINT_RENAME(res_getAlias)
33167 #define res_getArrayItem U_ICU_ENTRY_POINT_RENAME(res_getArrayItem)
33168 #define res_getBinary U_ICU_ENTRY_POINT_RENAME(res_getBinary)
33169 #define res_getIntVector U_ICU_ENTRY_POINT_RENAME(res_getIntVector)
33170 #define res_getPublicType U_ICU_ENTRY_POINT_RENAME(res_getPublicType)
33171 #define res_getResource U_ICU_ENTRY_POINT_RENAME(res_getResource)
33172 #define res_getString U_ICU_ENTRY_POINT_RENAME(res_getString)
33173 #define res_getTableItemByIndex U_ICU_ENTRY_POINT_RENAME(res_getTableItemByIndex)
33174 #define res_getTableItemByKey U_ICU_ENTRY_POINT_RENAME(res_getTableItemByKey)
33175 #define res_load U_ICU_ENTRY_POINT_RENAME(res_load)
33176 #define res_read U_ICU_ENTRY_POINT_RENAME(res_read)
33177 #define res_unload U_ICU_ENTRY_POINT_RENAME(res_unload)
33178 #define triedict_swap U_ICU_ENTRY_POINT_RENAME(triedict_swap)
33179 #define u_UCharsToChars U_ICU_ENTRY_POINT_RENAME(u_UCharsToChars)
33180 #define u_austrcpy U_ICU_ENTRY_POINT_RENAME(u_austrcpy)
33181 #define u_austrncpy U_ICU_ENTRY_POINT_RENAME(u_austrncpy)
33182 #define u_catclose U_ICU_ENTRY_POINT_RENAME(u_catclose)
33183 #define u_catgets U_ICU_ENTRY_POINT_RENAME(u_catgets)
33184 #define u_catopen U_ICU_ENTRY_POINT_RENAME(u_catopen)
33185 #define u_charAge U_ICU_ENTRY_POINT_RENAME(u_charAge)
33186 #define u_charDigitValue U_ICU_ENTRY_POINT_RENAME(u_charDigitValue)
33187 #define u_charDirection U_ICU_ENTRY_POINT_RENAME(u_charDirection)
33188 #define u_charFromName U_ICU_ENTRY_POINT_RENAME(u_charFromName)
33189 #define u_charMirror U_ICU_ENTRY_POINT_RENAME(u_charMirror)
33190 #define u_charName U_ICU_ENTRY_POINT_RENAME(u_charName)
33191 #define u_charType U_ICU_ENTRY_POINT_RENAME(u_charType)
33192 #define u_charsToUChars U_ICU_ENTRY_POINT_RENAME(u_charsToUChars)
33193 #define u_cleanup U_ICU_ENTRY_POINT_RENAME(u_cleanup)
33194 #define u_countChar32 U_ICU_ENTRY_POINT_RENAME(u_countChar32)
33195 #define u_digit U_ICU_ENTRY_POINT_RENAME(u_digit)
33196 #define u_enumCharNames U_ICU_ENTRY_POINT_RENAME(u_enumCharNames)
33197 #define u_enumCharTypes U_ICU_ENTRY_POINT_RENAME(u_enumCharTypes)
33198 #define u_errorName U_ICU_ENTRY_POINT_RENAME(u_errorName)
33199 #define u_fadopt U_ICU_ENTRY_POINT_RENAME(u_fadopt)
33200 #define u_fclose U_ICU_ENTRY_POINT_RENAME(u_fclose)
33201 #define u_feof U_ICU_ENTRY_POINT_RENAME(u_feof)
33202 #define u_fflush U_ICU_ENTRY_POINT_RENAME(u_fflush)
33203 #define u_fgetConverter U_ICU_ENTRY_POINT_RENAME(u_fgetConverter)
33204 #define u_fgetc U_ICU_ENTRY_POINT_RENAME(u_fgetc)
33205 #define u_fgetcodepage U_ICU_ENTRY_POINT_RENAME(u_fgetcodepage)
33206 #define u_fgetcx U_ICU_ENTRY_POINT_RENAME(u_fgetcx)
33207 #define u_fgetfile U_ICU_ENTRY_POINT_RENAME(u_fgetfile)
33208 #define u_fgetlocale U_ICU_ENTRY_POINT_RENAME(u_fgetlocale)
33209 #define u_fgets U_ICU_ENTRY_POINT_RENAME(u_fgets)
33210 #define u_file_read U_ICU_ENTRY_POINT_RENAME(u_file_read)
33211 #define u_file_write U_ICU_ENTRY_POINT_RENAME(u_file_write)
33212 #define u_file_write_flush U_ICU_ENTRY_POINT_RENAME(u_file_write_flush)
33213 #define u_finit U_ICU_ENTRY_POINT_RENAME(u_finit)
33214 #define u_flushDefaultConverter U_ICU_ENTRY_POINT_RENAME(u_flushDefaultConverter)
33215 #define u_foldCase U_ICU_ENTRY_POINT_RENAME(u_foldCase)
33216 #define u_fopen U_ICU_ENTRY_POINT_RENAME(u_fopen)
33217 #define u_forDigit U_ICU_ENTRY_POINT_RENAME(u_forDigit)
33218 #define u_formatMessage U_ICU_ENTRY_POINT_RENAME(u_formatMessage)
33219 #define u_formatMessageWithError U_ICU_ENTRY_POINT_RENAME(u_formatMessageWithError)
33220 #define u_fprintf U_ICU_ENTRY_POINT_RENAME(u_fprintf)
33221 #define u_fprintf_u U_ICU_ENTRY_POINT_RENAME(u_fprintf_u)
33222 #define u_fputc U_ICU_ENTRY_POINT_RENAME(u_fputc)
33223 #define u_fputs U_ICU_ENTRY_POINT_RENAME(u_fputs)
33224 #define u_frewind U_ICU_ENTRY_POINT_RENAME(u_frewind)
33225 #define u_fscanf U_ICU_ENTRY_POINT_RENAME(u_fscanf)
33226 #define u_fscanf_u U_ICU_ENTRY_POINT_RENAME(u_fscanf_u)
33227 #define u_fsetcodepage U_ICU_ENTRY_POINT_RENAME(u_fsetcodepage)
33228 #define u_fsetlocale U_ICU_ENTRY_POINT_RENAME(u_fsetlocale)
33229 #define u_fsettransliterator U_ICU_ENTRY_POINT_RENAME(u_fsettransliterator)
33230 #define u_fstropen U_ICU_ENTRY_POINT_RENAME(u_fstropen)
33231 #define u_fungetc U_ICU_ENTRY_POINT_RENAME(u_fungetc)
33232 #define u_getCombiningClass U_ICU_ENTRY_POINT_RENAME(u_getCombiningClass)
33233 #define u_getDataDirectory U_ICU_ENTRY_POINT_RENAME(u_getDataDirectory)
33234 #define u_getDataVersion U_ICU_ENTRY_POINT_RENAME(u_getDataVersion)
33235 #define u_getDefaultConverter U_ICU_ENTRY_POINT_RENAME(u_getDefaultConverter)
33236 #define u_getFC_NFKC_Closure U_ICU_ENTRY_POINT_RENAME(u_getFC_NFKC_Closure)
33237 #define u_getISOComment U_ICU_ENTRY_POINT_RENAME(u_getISOComment)
33238 #define u_getIntPropertyMaxValue U_ICU_ENTRY_POINT_RENAME(u_getIntPropertyMaxValue)
33239 #define u_getIntPropertyMinValue U_ICU_ENTRY_POINT_RENAME(u_getIntPropertyMinValue)
33240 #define u_getIntPropertyValue U_ICU_ENTRY_POINT_RENAME(u_getIntPropertyValue)
33241 #define u_getNumericValue U_ICU_ENTRY_POINT_RENAME(u_getNumericValue)
33242 #define u_getPropertyEnum U_ICU_ENTRY_POINT_RENAME(u_getPropertyEnum)
33243 #define u_getPropertyName U_ICU_ENTRY_POINT_RENAME(u_getPropertyName)
33244 #define u_getPropertyValueEnum U_ICU_ENTRY_POINT_RENAME(u_getPropertyValueEnum)
33245 #define u_getPropertyValueName U_ICU_ENTRY_POINT_RENAME(u_getPropertyValueName)
33246 #define u_getUnicodeProperties U_ICU_ENTRY_POINT_RENAME(u_getUnicodeProperties)
33247 #define u_getUnicodeVersion U_ICU_ENTRY_POINT_RENAME(u_getUnicodeVersion)
33248 #define u_getVersion U_ICU_ENTRY_POINT_RENAME(u_getVersion)
33249 #define u_hasBinaryProperty U_ICU_ENTRY_POINT_RENAME(u_hasBinaryProperty)
33250 #define u_init U_ICU_ENTRY_POINT_RENAME(u_init)
33251 #define u_isDataOlder U_ICU_ENTRY_POINT_RENAME(u_isDataOlder)
33252 #define u_isIDIgnorable U_ICU_ENTRY_POINT_RENAME(u_isIDIgnorable)
33253 #define u_isIDPart U_ICU_ENTRY_POINT_RENAME(u_isIDPart)
33254 #define u_isIDStart U_ICU_ENTRY_POINT_RENAME(u_isIDStart)
33255 #define u_isISOControl U_ICU_ENTRY_POINT_RENAME(u_isISOControl)
33256 #define u_isJavaIDPart U_ICU_ENTRY_POINT_RENAME(u_isJavaIDPart)
33257 #define u_isJavaIDStart U_ICU_ENTRY_POINT_RENAME(u_isJavaIDStart)
33258 #define u_isJavaSpaceChar U_ICU_ENTRY_POINT_RENAME(u_isJavaSpaceChar)
33259 #define u_isMirrored U_ICU_ENTRY_POINT_RENAME(u_isMirrored)
33260 #define u_isUAlphabetic U_ICU_ENTRY_POINT_RENAME(u_isUAlphabetic)
33261 #define u_isULowercase U_ICU_ENTRY_POINT_RENAME(u_isULowercase)
33262 #define u_isUUppercase U_ICU_ENTRY_POINT_RENAME(u_isUUppercase)
33263 #define u_isUWhiteSpace U_ICU_ENTRY_POINT_RENAME(u_isUWhiteSpace)
33264 #define u_isWhitespace U_ICU_ENTRY_POINT_RENAME(u_isWhitespace)
33265 #define u_isalnum U_ICU_ENTRY_POINT_RENAME(u_isalnum)
33266 #define u_isalnumPOSIX U_ICU_ENTRY_POINT_RENAME(u_isalnumPOSIX)
33267 #define u_isalpha U_ICU_ENTRY_POINT_RENAME(u_isalpha)
33268 #define u_isbase U_ICU_ENTRY_POINT_RENAME(u_isbase)
33269 #define u_isblank U_ICU_ENTRY_POINT_RENAME(u_isblank)
33270 #define u_iscntrl U_ICU_ENTRY_POINT_RENAME(u_iscntrl)
33271 #define u_isdefined U_ICU_ENTRY_POINT_RENAME(u_isdefined)
33272 #define u_isdigit U_ICU_ENTRY_POINT_RENAME(u_isdigit)
33273 #define u_isgraph U_ICU_ENTRY_POINT_RENAME(u_isgraph)
33274 #define u_isgraphPOSIX U_ICU_ENTRY_POINT_RENAME(u_isgraphPOSIX)
33275 #define u_islower U_ICU_ENTRY_POINT_RENAME(u_islower)
33276 #define u_isprint U_ICU_ENTRY_POINT_RENAME(u_isprint)
33277 #define u_isprintPOSIX U_ICU_ENTRY_POINT_RENAME(u_isprintPOSIX)
33278 #define u_ispunct U_ICU_ENTRY_POINT_RENAME(u_ispunct)
33279 #define u_isspace U_ICU_ENTRY_POINT_RENAME(u_isspace)
33280 #define u_istitle U_ICU_ENTRY_POINT_RENAME(u_istitle)
33281 #define u_isupper U_ICU_ENTRY_POINT_RENAME(u_isupper)
33282 #define u_isxdigit U_ICU_ENTRY_POINT_RENAME(u_isxdigit)
33283 #define u_locbund_close U_ICU_ENTRY_POINT_RENAME(u_locbund_close)
33284 #define u_locbund_getNumberFormat U_ICU_ENTRY_POINT_RENAME(u_locbund_getNumberFormat)
33285 #define u_locbund_init U_ICU_ENTRY_POINT_RENAME(u_locbund_init)
33286 #define u_memcasecmp U_ICU_ENTRY_POINT_RENAME(u_memcasecmp)
33287 #define u_memchr U_ICU_ENTRY_POINT_RENAME(u_memchr)
33288 #define u_memchr32 U_ICU_ENTRY_POINT_RENAME(u_memchr32)
33289 #define u_memcmp U_ICU_ENTRY_POINT_RENAME(u_memcmp)
33290 #define u_memcmpCodePointOrder U_ICU_ENTRY_POINT_RENAME(u_memcmpCodePointOrder)
33291 #define u_memcpy U_ICU_ENTRY_POINT_RENAME(u_memcpy)
33292 #define u_memmove U_ICU_ENTRY_POINT_RENAME(u_memmove)
33293 #define u_memrchr U_ICU_ENTRY_POINT_RENAME(u_memrchr)
33294 #define u_memrchr32 U_ICU_ENTRY_POINT_RENAME(u_memrchr32)
33295 #define u_memset U_ICU_ENTRY_POINT_RENAME(u_memset)
33296 #define u_parseMessage U_ICU_ENTRY_POINT_RENAME(u_parseMessage)
33297 #define u_parseMessageWithError U_ICU_ENTRY_POINT_RENAME(u_parseMessageWithError)
33298 #define u_printf_parse U_ICU_ENTRY_POINT_RENAME(u_printf_parse)
33299 #define u_releaseDefaultConverter U_ICU_ENTRY_POINT_RENAME(u_releaseDefaultConverter)
33300 #define u_scanf_parse U_ICU_ENTRY_POINT_RENAME(u_scanf_parse)
33301 #define u_setAtomicIncDecFunctions U_ICU_ENTRY_POINT_RENAME(u_setAtomicIncDecFunctions)
33302 #define u_setDataDirectory U_ICU_ENTRY_POINT_RENAME(u_setDataDirectory)
33303 #define u_setMemoryFunctions U_ICU_ENTRY_POINT_RENAME(u_setMemoryFunctions)
33304 #define u_setMutexFunctions U_ICU_ENTRY_POINT_RENAME(u_setMutexFunctions)
33305 #define u_shapeArabic U_ICU_ENTRY_POINT_RENAME(u_shapeArabic)
33306 #define u_snprintf U_ICU_ENTRY_POINT_RENAME(u_snprintf)
33307 #define u_snprintf_u U_ICU_ENTRY_POINT_RENAME(u_snprintf_u)
33308 #define u_sprintf U_ICU_ENTRY_POINT_RENAME(u_sprintf)
33309 #define u_sprintf_u U_ICU_ENTRY_POINT_RENAME(u_sprintf_u)
33310 #define u_sscanf U_ICU_ENTRY_POINT_RENAME(u_sscanf)
33311 #define u_sscanf_u U_ICU_ENTRY_POINT_RENAME(u_sscanf_u)
33312 #define u_strCaseCompare U_ICU_ENTRY_POINT_RENAME(u_strCaseCompare)
33313 #define u_strCompare U_ICU_ENTRY_POINT_RENAME(u_strCompare)
33314 #define u_strCompareIter U_ICU_ENTRY_POINT_RENAME(u_strCompareIter)
33315 #define u_strFindFirst U_ICU_ENTRY_POINT_RENAME(u_strFindFirst)
33316 #define u_strFindLast U_ICU_ENTRY_POINT_RENAME(u_strFindLast)
33317 #define u_strFoldCase U_ICU_ENTRY_POINT_RENAME(u_strFoldCase)
33318 #define u_strFromJavaModifiedUTF8WithSub U_ICU_ENTRY_POINT_RENAME(u_strFromJavaModifiedUTF8WithSub)
33319 #define u_strFromPunycode U_ICU_ENTRY_POINT_RENAME(u_strFromPunycode)
33320 #define u_strFromUTF32 U_ICU_ENTRY_POINT_RENAME(u_strFromUTF32)
33321 #define u_strFromUTF32WithSub U_ICU_ENTRY_POINT_RENAME(u_strFromUTF32WithSub)
33322 #define u_strFromUTF8 U_ICU_ENTRY_POINT_RENAME(u_strFromUTF8)
33323 #define u_strFromUTF8Lenient U_ICU_ENTRY_POINT_RENAME(u_strFromUTF8Lenient)
33324 #define u_strFromUTF8WithSub U_ICU_ENTRY_POINT_RENAME(u_strFromUTF8WithSub)
33325 #define u_strFromWCS U_ICU_ENTRY_POINT_RENAME(u_strFromWCS)
33326 #define u_strHasMoreChar32Than U_ICU_ENTRY_POINT_RENAME(u_strHasMoreChar32Than)
33327 #define u_strToJavaModifiedUTF8 U_ICU_ENTRY_POINT_RENAME(u_strToJavaModifiedUTF8)
33328 #define u_strToLower U_ICU_ENTRY_POINT_RENAME(u_strToLower)
33329 #define u_strToPunycode U_ICU_ENTRY_POINT_RENAME(u_strToPunycode)
33330 #define u_strToTitle U_ICU_ENTRY_POINT_RENAME(u_strToTitle)
33331 #define u_strToUTF32 U_ICU_ENTRY_POINT_RENAME(u_strToUTF32)
33332 #define u_strToUTF32WithSub U_ICU_ENTRY_POINT_RENAME(u_strToUTF32WithSub)
33333 #define u_strToUTF8 U_ICU_ENTRY_POINT_RENAME(u_strToUTF8)
33334 #define u_strToUTF8WithSub U_ICU_ENTRY_POINT_RENAME(u_strToUTF8WithSub)
33335 #define u_strToUpper U_ICU_ENTRY_POINT_RENAME(u_strToUpper)
33336 #define u_strToWCS U_ICU_ENTRY_POINT_RENAME(u_strToWCS)
33337 #define u_strcasecmp U_ICU_ENTRY_POINT_RENAME(u_strcasecmp)
33338 #define u_strcat U_ICU_ENTRY_POINT_RENAME(u_strcat)
33339 #define u_strchr U_ICU_ENTRY_POINT_RENAME(u_strchr)
33340 #define u_strchr32 U_ICU_ENTRY_POINT_RENAME(u_strchr32)
33341 #define u_strcmp U_ICU_ENTRY_POINT_RENAME(u_strcmp)
33342 #define u_strcmpCodePointOrder U_ICU_ENTRY_POINT_RENAME(u_strcmpCodePointOrder)
33343 #define u_strcmpFold U_ICU_ENTRY_POINT_RENAME(u_strcmpFold)
33344 #define u_strcpy U_ICU_ENTRY_POINT_RENAME(u_strcpy)
33345 #define u_strcspn U_ICU_ENTRY_POINT_RENAME(u_strcspn)
33346 #define u_strlen U_ICU_ENTRY_POINT_RENAME(u_strlen)
33347 #define u_strncasecmp U_ICU_ENTRY_POINT_RENAME(u_strncasecmp)
33348 #define u_strncat U_ICU_ENTRY_POINT_RENAME(u_strncat)
33349 #define u_strncmp U_ICU_ENTRY_POINT_RENAME(u_strncmp)
33350 #define u_strncmpCodePointOrder U_ICU_ENTRY_POINT_RENAME(u_strncmpCodePointOrder)
33351 #define u_strncpy U_ICU_ENTRY_POINT_RENAME(u_strncpy)
33352 #define u_strpbrk U_ICU_ENTRY_POINT_RENAME(u_strpbrk)
33353 #define u_strrchr U_ICU_ENTRY_POINT_RENAME(u_strrchr)
33354 #define u_strrchr32 U_ICU_ENTRY_POINT_RENAME(u_strrchr32)
33355 #define u_strrstr U_ICU_ENTRY_POINT_RENAME(u_strrstr)
33356 #define u_strspn U_ICU_ENTRY_POINT_RENAME(u_strspn)
33357 #define u_strstr U_ICU_ENTRY_POINT_RENAME(u_strstr)
33358 #define u_strtok_r U_ICU_ENTRY_POINT_RENAME(u_strtok_r)
33359 #define u_terminateChars U_ICU_ENTRY_POINT_RENAME(u_terminateChars)
33360 #define u_terminateUChar32s U_ICU_ENTRY_POINT_RENAME(u_terminateUChar32s)
33361 #define u_terminateUChars U_ICU_ENTRY_POINT_RENAME(u_terminateUChars)
33362 #define u_terminateWChars U_ICU_ENTRY_POINT_RENAME(u_terminateWChars)
33363 #define u_tolower U_ICU_ENTRY_POINT_RENAME(u_tolower)
33364 #define u_totitle U_ICU_ENTRY_POINT_RENAME(u_totitle)
33365 #define u_toupper U_ICU_ENTRY_POINT_RENAME(u_toupper)
33366 #define u_uastrcpy U_ICU_ENTRY_POINT_RENAME(u_uastrcpy)
33367 #define u_uastrncpy U_ICU_ENTRY_POINT_RENAME(u_uastrncpy)
33368 #define u_unescape U_ICU_ENTRY_POINT_RENAME(u_unescape)
33369 #define u_unescapeAt U_ICU_ENTRY_POINT_RENAME(u_unescapeAt)
33370 #define u_versionFromString U_ICU_ENTRY_POINT_RENAME(u_versionFromString)
33371 #define u_versionFromUString U_ICU_ENTRY_POINT_RENAME(u_versionFromUString)
33372 #define u_versionToString U_ICU_ENTRY_POINT_RENAME(u_versionToString)
33373 #define u_vformatMessage U_ICU_ENTRY_POINT_RENAME(u_vformatMessage)
33374 #define u_vformatMessageWithError U_ICU_ENTRY_POINT_RENAME(u_vformatMessageWithError)
33375 #define u_vfprintf U_ICU_ENTRY_POINT_RENAME(u_vfprintf)
33376 #define u_vfprintf_u U_ICU_ENTRY_POINT_RENAME(u_vfprintf_u)
33377 #define u_vfscanf U_ICU_ENTRY_POINT_RENAME(u_vfscanf)
33378 #define u_vfscanf_u U_ICU_ENTRY_POINT_RENAME(u_vfscanf_u)
33379 #define u_vparseMessage U_ICU_ENTRY_POINT_RENAME(u_vparseMessage)
33380 #define u_vparseMessageWithError U_ICU_ENTRY_POINT_RENAME(u_vparseMessageWithError)
33381 #define u_vsnprintf U_ICU_ENTRY_POINT_RENAME(u_vsnprintf)
33382 #define u_vsnprintf_u U_ICU_ENTRY_POINT_RENAME(u_vsnprintf_u)
33383 #define u_vsprintf U_ICU_ENTRY_POINT_RENAME(u_vsprintf)
33384 #define u_vsprintf_u U_ICU_ENTRY_POINT_RENAME(u_vsprintf_u)
33385 #define u_vsscanf U_ICU_ENTRY_POINT_RENAME(u_vsscanf)
33386 #define u_vsscanf_u U_ICU_ENTRY_POINT_RENAME(u_vsscanf_u)
33387 #define u_writeDiff U_ICU_ENTRY_POINT_RENAME(u_writeDiff)
33388 #define u_writeIdenticalLevelRun U_ICU_ENTRY_POINT_RENAME(u_writeIdenticalLevelRun)
33389 #define u_writeIdenticalLevelRunTwoChars U_ICU_ENTRY_POINT_RENAME(u_writeIdenticalLevelRunTwoChars)
33390 #define ubidi_addPropertyStarts U_ICU_ENTRY_POINT_RENAME(ubidi_addPropertyStarts)
33391 #define ubidi_close U_ICU_ENTRY_POINT_RENAME(ubidi_close)
33392 #define ubidi_countParagraphs U_ICU_ENTRY_POINT_RENAME(ubidi_countParagraphs)
33393 #define ubidi_countRuns U_ICU_ENTRY_POINT_RENAME(ubidi_countRuns)
33394 #define ubidi_getBaseDirection U_ICU_ENTRY_POINT_RENAME(ubidi_getBaseDirection)
33395 #define ubidi_getClass U_ICU_ENTRY_POINT_RENAME(ubidi_getClass)
33396 #define ubidi_getClassCallback U_ICU_ENTRY_POINT_RENAME(ubidi_getClassCallback)
33397 #define ubidi_getCustomizedClass U_ICU_ENTRY_POINT_RENAME(ubidi_getCustomizedClass)
33398 #define ubidi_getDirection U_ICU_ENTRY_POINT_RENAME(ubidi_getDirection)
33399 #define ubidi_getJoiningGroup U_ICU_ENTRY_POINT_RENAME(ubidi_getJoiningGroup)
33400 #define ubidi_getJoiningType U_ICU_ENTRY_POINT_RENAME(ubidi_getJoiningType)
33401 #define ubidi_getLength U_ICU_ENTRY_POINT_RENAME(ubidi_getLength)
33402 #define ubidi_getLevelAt U_ICU_ENTRY_POINT_RENAME(ubidi_getLevelAt)
33403 #define ubidi_getLevels U_ICU_ENTRY_POINT_RENAME(ubidi_getLevels)
33404 #define ubidi_getLogicalIndex U_ICU_ENTRY_POINT_RENAME(ubidi_getLogicalIndex)
33405 #define ubidi_getLogicalMap U_ICU_ENTRY_POINT_RENAME(ubidi_getLogicalMap)
33406 #define ubidi_getLogicalRun U_ICU_ENTRY_POINT_RENAME(ubidi_getLogicalRun)
33407 #define ubidi_getMaxValue U_ICU_ENTRY_POINT_RENAME(ubidi_getMaxValue)
33408 #define ubidi_getMemory U_ICU_ENTRY_POINT_RENAME(ubidi_getMemory)
33409 #define ubidi_getMirror U_ICU_ENTRY_POINT_RENAME(ubidi_getMirror)
33410 #define ubidi_getParaLevel U_ICU_ENTRY_POINT_RENAME(ubidi_getParaLevel)
33411 #define ubidi_getParagraph U_ICU_ENTRY_POINT_RENAME(ubidi_getParagraph)
33412 #define ubidi_getParagraphByIndex U_ICU_ENTRY_POINT_RENAME(ubidi_getParagraphByIndex)
33413 #define ubidi_getProcessedLength U_ICU_ENTRY_POINT_RENAME(ubidi_getProcessedLength)
33414 #define ubidi_getReorderingMode U_ICU_ENTRY_POINT_RENAME(ubidi_getReorderingMode)
33415 #define ubidi_getReorderingOptions U_ICU_ENTRY_POINT_RENAME(ubidi_getReorderingOptions)
33416 #define ubidi_getResultLength U_ICU_ENTRY_POINT_RENAME(ubidi_getResultLength)
33417 #define ubidi_getRuns U_ICU_ENTRY_POINT_RENAME(ubidi_getRuns)
33418 #define ubidi_getSingleton U_ICU_ENTRY_POINT_RENAME(ubidi_getSingleton)
33419 #define ubidi_getText U_ICU_ENTRY_POINT_RENAME(ubidi_getText)
33420 #define ubidi_getVisualIndex U_ICU_ENTRY_POINT_RENAME(ubidi_getVisualIndex)
33421 #define ubidi_getVisualMap U_ICU_ENTRY_POINT_RENAME(ubidi_getVisualMap)
33422 #define ubidi_getVisualRun U_ICU_ENTRY_POINT_RENAME(ubidi_getVisualRun)
33423 #define ubidi_invertMap U_ICU_ENTRY_POINT_RENAME(ubidi_invertMap)
33424 #define ubidi_isBidiControl U_ICU_ENTRY_POINT_RENAME(ubidi_isBidiControl)
33425 #define ubidi_isInverse U_ICU_ENTRY_POINT_RENAME(ubidi_isInverse)
33426 #define ubidi_isJoinControl U_ICU_ENTRY_POINT_RENAME(ubidi_isJoinControl)
33427 #define ubidi_isMirrored U_ICU_ENTRY_POINT_RENAME(ubidi_isMirrored)
33428 #define ubidi_isOrderParagraphsLTR U_ICU_ENTRY_POINT_RENAME(ubidi_isOrderParagraphsLTR)
33429 #define ubidi_open U_ICU_ENTRY_POINT_RENAME(ubidi_open)
33430 #define ubidi_openSized U_ICU_ENTRY_POINT_RENAME(ubidi_openSized)
33431 #define ubidi_orderParagraphsLTR U_ICU_ENTRY_POINT_RENAME(ubidi_orderParagraphsLTR)
33432 #define ubidi_reorderLogical U_ICU_ENTRY_POINT_RENAME(ubidi_reorderLogical)
33433 #define ubidi_reorderVisual U_ICU_ENTRY_POINT_RENAME(ubidi_reorderVisual)
33434 #define ubidi_setClassCallback U_ICU_ENTRY_POINT_RENAME(ubidi_setClassCallback)
33435 #define ubidi_setContext U_ICU_ENTRY_POINT_RENAME(ubidi_setContext)
33436 #define ubidi_setInverse U_ICU_ENTRY_POINT_RENAME(ubidi_setInverse)
33437 #define ubidi_setLine U_ICU_ENTRY_POINT_RENAME(ubidi_setLine)
33438 #define ubidi_setPara U_ICU_ENTRY_POINT_RENAME(ubidi_setPara)
33439 #define ubidi_setReorderingMode U_ICU_ENTRY_POINT_RENAME(ubidi_setReorderingMode)
33440 #define ubidi_setReorderingOptions U_ICU_ENTRY_POINT_RENAME(ubidi_setReorderingOptions)
33441 #define ubidi_writeReordered U_ICU_ENTRY_POINT_RENAME(ubidi_writeReordered)
33442 #define ubidi_writeReverse U_ICU_ENTRY_POINT_RENAME(ubidi_writeReverse)
33443 #define ublock_getCode U_ICU_ENTRY_POINT_RENAME(ublock_getCode)
33444 #define ubrk_close U_ICU_ENTRY_POINT_RENAME(ubrk_close)
33445 #define ubrk_countAvailable U_ICU_ENTRY_POINT_RENAME(ubrk_countAvailable)
33446 #define ubrk_current U_ICU_ENTRY_POINT_RENAME(ubrk_current)
33447 #define ubrk_first U_ICU_ENTRY_POINT_RENAME(ubrk_first)
33448 #define ubrk_following U_ICU_ENTRY_POINT_RENAME(ubrk_following)
33449 #define ubrk_getAvailable U_ICU_ENTRY_POINT_RENAME(ubrk_getAvailable)
33450 #define ubrk_getLocaleByType U_ICU_ENTRY_POINT_RENAME(ubrk_getLocaleByType)
33451 #define ubrk_getRuleStatus U_ICU_ENTRY_POINT_RENAME(ubrk_getRuleStatus)
33452 #define ubrk_getRuleStatusVec U_ICU_ENTRY_POINT_RENAME(ubrk_getRuleStatusVec)
33453 #define ubrk_isBoundary U_ICU_ENTRY_POINT_RENAME(ubrk_isBoundary)
33454 #define ubrk_last U_ICU_ENTRY_POINT_RENAME(ubrk_last)
33455 #define ubrk_next U_ICU_ENTRY_POINT_RENAME(ubrk_next)
33456 #define ubrk_open U_ICU_ENTRY_POINT_RENAME(ubrk_open)
33457 #define ubrk_openRules U_ICU_ENTRY_POINT_RENAME(ubrk_openRules)
33458 #define ubrk_preceding U_ICU_ENTRY_POINT_RENAME(ubrk_preceding)
33459 #define ubrk_previous U_ICU_ENTRY_POINT_RENAME(ubrk_previous)
33460 #define ubrk_safeClone U_ICU_ENTRY_POINT_RENAME(ubrk_safeClone)
33461 #define ubrk_setText U_ICU_ENTRY_POINT_RENAME(ubrk_setText)
33462 #define ubrk_setUText U_ICU_ENTRY_POINT_RENAME(ubrk_setUText)
33463 #define ubrk_swap U_ICU_ENTRY_POINT_RENAME(ubrk_swap)
33464 #define ucal_add U_ICU_ENTRY_POINT_RENAME(ucal_add)
33465 #define ucal_clear U_ICU_ENTRY_POINT_RENAME(ucal_clear)
33466 #define ucal_clearField U_ICU_ENTRY_POINT_RENAME(ucal_clearField)
33467 #define ucal_clone U_ICU_ENTRY_POINT_RENAME(ucal_clone)
33468 #define ucal_close U_ICU_ENTRY_POINT_RENAME(ucal_close)
33469 #define ucal_countAvailable U_ICU_ENTRY_POINT_RENAME(ucal_countAvailable)
33470 #define ucal_equivalentTo U_ICU_ENTRY_POINT_RENAME(ucal_equivalentTo)
33471 #define ucal_get U_ICU_ENTRY_POINT_RENAME(ucal_get)
33472 #define ucal_getAttribute U_ICU_ENTRY_POINT_RENAME(ucal_getAttribute)
33473 #define ucal_getAvailable U_ICU_ENTRY_POINT_RENAME(ucal_getAvailable)
33474 #define ucal_getCanonicalTimeZoneID U_ICU_ENTRY_POINT_RENAME(ucal_getCanonicalTimeZoneID)
33475 #define ucal_getDSTSavings U_ICU_ENTRY_POINT_RENAME(ucal_getDSTSavings)
33476 #define ucal_getDayOfWeekType U_ICU_ENTRY_POINT_RENAME(ucal_getDayOfWeekType)
33477 #define ucal_getDefaultTimeZone U_ICU_ENTRY_POINT_RENAME(ucal_getDefaultTimeZone)
33478 #define ucal_getFieldDifference U_ICU_ENTRY_POINT_RENAME(ucal_getFieldDifference)
33479 #define ucal_getGregorianChange U_ICU_ENTRY_POINT_RENAME(ucal_getGregorianChange)
33480 #define ucal_getKeywordValuesForLocale U_ICU_ENTRY_POINT_RENAME(ucal_getKeywordValuesForLocale)
33481 #define ucal_getLimit U_ICU_ENTRY_POINT_RENAME(ucal_getLimit)
33482 #define ucal_getLocaleByType U_ICU_ENTRY_POINT_RENAME(ucal_getLocaleByType)
33483 #define ucal_getMillis U_ICU_ENTRY_POINT_RENAME(ucal_getMillis)
33484 #define ucal_getNow U_ICU_ENTRY_POINT_RENAME(ucal_getNow)
33485 #define ucal_getTZDataVersion U_ICU_ENTRY_POINT_RENAME(ucal_getTZDataVersion)
33486 #define ucal_getTimeZoneDisplayName U_ICU_ENTRY_POINT_RENAME(ucal_getTimeZoneDisplayName)
33487 #define ucal_getType U_ICU_ENTRY_POINT_RENAME(ucal_getType)
33488 #define ucal_getWeekendTransition U_ICU_ENTRY_POINT_RENAME(ucal_getWeekendTransition)
33489 #define ucal_inDaylightTime U_ICU_ENTRY_POINT_RENAME(ucal_inDaylightTime)
33490 #define ucal_isSet U_ICU_ENTRY_POINT_RENAME(ucal_isSet)
33491 #define ucal_isWeekend U_ICU_ENTRY_POINT_RENAME(ucal_isWeekend)
33492 #define ucal_open U_ICU_ENTRY_POINT_RENAME(ucal_open)
33493 #define ucal_openCountryTimeZones U_ICU_ENTRY_POINT_RENAME(ucal_openCountryTimeZones)
33494 #define ucal_openTimeZoneIDEnumeration U_ICU_ENTRY_POINT_RENAME(ucal_openTimeZoneIDEnumeration)
33495 #define ucal_openTimeZones U_ICU_ENTRY_POINT_RENAME(ucal_openTimeZones)
33496 #define ucal_roll U_ICU_ENTRY_POINT_RENAME(ucal_roll)
33497 #define ucal_set U_ICU_ENTRY_POINT_RENAME(ucal_set)
33498 #define ucal_setAttribute U_ICU_ENTRY_POINT_RENAME(ucal_setAttribute)
33499 #define ucal_setDate U_ICU_ENTRY_POINT_RENAME(ucal_setDate)
33500 #define ucal_setDateTime U_ICU_ENTRY_POINT_RENAME(ucal_setDateTime)
33501 #define ucal_setDefaultTimeZone U_ICU_ENTRY_POINT_RENAME(ucal_setDefaultTimeZone)
33502 #define ucal_setGregorianChange U_ICU_ENTRY_POINT_RENAME(ucal_setGregorianChange)
33503 #define ucal_setMillis U_ICU_ENTRY_POINT_RENAME(ucal_setMillis)
33504 #define ucal_setTimeZone U_ICU_ENTRY_POINT_RENAME(ucal_setTimeZone)
33505 #define ucase_addCaseClosure U_ICU_ENTRY_POINT_RENAME(ucase_addCaseClosure)
33506 #define ucase_addPropertyStarts U_ICU_ENTRY_POINT_RENAME(ucase_addPropertyStarts)
33507 #define ucase_addStringCaseClosure U_ICU_ENTRY_POINT_RENAME(ucase_addStringCaseClosure)
33508 #define ucase_fold U_ICU_ENTRY_POINT_RENAME(ucase_fold)
33509 #define ucase_getCaseLocale U_ICU_ENTRY_POINT_RENAME(ucase_getCaseLocale)
33510 #define ucase_getSingleton U_ICU_ENTRY_POINT_RENAME(ucase_getSingleton)
33511 #define ucase_getType U_ICU_ENTRY_POINT_RENAME(ucase_getType)
33512 #define ucase_getTypeOrIgnorable U_ICU_ENTRY_POINT_RENAME(ucase_getTypeOrIgnorable)
33513 #define ucase_hasBinaryProperty U_ICU_ENTRY_POINT_RENAME(ucase_hasBinaryProperty)
33514 #define ucase_isCaseSensitive U_ICU_ENTRY_POINT_RENAME(ucase_isCaseSensitive)
33515 #define ucase_isSoftDotted U_ICU_ENTRY_POINT_RENAME(ucase_isSoftDotted)
33516 #define ucase_toFullFolding U_ICU_ENTRY_POINT_RENAME(ucase_toFullFolding)
33517 #define ucase_toFullLower U_ICU_ENTRY_POINT_RENAME(ucase_toFullLower)
33518 #define ucase_toFullTitle U_ICU_ENTRY_POINT_RENAME(ucase_toFullTitle)
33519 #define ucase_toFullUpper U_ICU_ENTRY_POINT_RENAME(ucase_toFullUpper)
33520 #define ucase_tolower U_ICU_ENTRY_POINT_RENAME(ucase_tolower)
33521 #define ucase_totitle U_ICU_ENTRY_POINT_RENAME(ucase_totitle)
33522 #define ucase_toupper U_ICU_ENTRY_POINT_RENAME(ucase_toupper)
33523 #define ucasemap_close U_ICU_ENTRY_POINT_RENAME(ucasemap_close)
33524 #define ucasemap_getBreakIterator U_ICU_ENTRY_POINT_RENAME(ucasemap_getBreakIterator)
33525 #define ucasemap_getLocale U_ICU_ENTRY_POINT_RENAME(ucasemap_getLocale)
33526 #define ucasemap_getOptions U_ICU_ENTRY_POINT_RENAME(ucasemap_getOptions)
33527 #define ucasemap_open U_ICU_ENTRY_POINT_RENAME(ucasemap_open)
33528 #define ucasemap_setBreakIterator U_ICU_ENTRY_POINT_RENAME(ucasemap_setBreakIterator)
33529 #define ucasemap_setLocale U_ICU_ENTRY_POINT_RENAME(ucasemap_setLocale)
33530 #define ucasemap_setOptions U_ICU_ENTRY_POINT_RENAME(ucasemap_setOptions)
33531 #define ucasemap_toTitle U_ICU_ENTRY_POINT_RENAME(ucasemap_toTitle)
33532 #define ucasemap_utf8FoldCase U_ICU_ENTRY_POINT_RENAME(ucasemap_utf8FoldCase)
33533 #define ucasemap_utf8ToLower U_ICU_ENTRY_POINT_RENAME(ucasemap_utf8ToLower)
33534 #define ucasemap_utf8ToTitle U_ICU_ENTRY_POINT_RENAME(ucasemap_utf8ToTitle)
33535 #define ucasemap_utf8ToUpper U_ICU_ENTRY_POINT_RENAME(ucasemap_utf8ToUpper)
33536 #define ucd_close U_ICU_ENTRY_POINT_RENAME(ucd_close)
33537 #define ucd_flushCache U_ICU_ENTRY_POINT_RENAME(ucd_flushCache)
33538 #define ucd_freeCache U_ICU_ENTRY_POINT_RENAME(ucd_freeCache)
33539 #define ucd_getCollator U_ICU_ENTRY_POINT_RENAME(ucd_getCollator)
33540 #define ucd_open U_ICU_ENTRY_POINT_RENAME(ucd_open)
33541 #define uchar_addPropertyStarts U_ICU_ENTRY_POINT_RENAME(uchar_addPropertyStarts)
33542 #define uchar_swapNames U_ICU_ENTRY_POINT_RENAME(uchar_swapNames)
33543 #define ucln_cleanupOne U_ICU_ENTRY_POINT_RENAME(ucln_cleanupOne)
33544 #define ucln_common_registerCleanup U_ICU_ENTRY_POINT_RENAME(ucln_common_registerCleanup)
33545 #define ucln_i18n_registerCleanup U_ICU_ENTRY_POINT_RENAME(ucln_i18n_registerCleanup)
33546 #define ucln_io_registerCleanup U_ICU_ENTRY_POINT_RENAME(ucln_io_registerCleanup)
33547 #define ucln_lib_cleanup U_ICU_ENTRY_POINT_RENAME(ucln_lib_cleanup)
33548 #define ucln_registerCleanup U_ICU_ENTRY_POINT_RENAME(ucln_registerCleanup)
33549 #define ucnv_MBCSFromUChar32 U_ICU_ENTRY_POINT_RENAME(ucnv_MBCSFromUChar32)
33550 #define ucnv_MBCSFromUnicodeWithOffsets U_ICU_ENTRY_POINT_RENAME(ucnv_MBCSFromUnicodeWithOffsets)
33551 #define ucnv_MBCSGetFilteredUnicodeSetForUnicode U_ICU_ENTRY_POINT_RENAME(ucnv_MBCSGetFilteredUnicodeSetForUnicode)
33552 #define ucnv_MBCSGetType U_ICU_ENTRY_POINT_RENAME(ucnv_MBCSGetType)
33553 #define ucnv_MBCSGetUnicodeSetForUnicode U_ICU_ENTRY_POINT_RENAME(ucnv_MBCSGetUnicodeSetForUnicode)
33554 #define ucnv_MBCSIsLeadByte U_ICU_ENTRY_POINT_RENAME(ucnv_MBCSIsLeadByte)
33555 #define ucnv_MBCSSimpleGetNextUChar U_ICU_ENTRY_POINT_RENAME(ucnv_MBCSSimpleGetNextUChar)
33556 #define ucnv_MBCSToUnicodeWithOffsets U_ICU_ENTRY_POINT_RENAME(ucnv_MBCSToUnicodeWithOffsets)
33557 #define ucnv_bld_countAvailableConverters U_ICU_ENTRY_POINT_RENAME(ucnv_bld_countAvailableConverters)
33558 #define ucnv_bld_getAvailableConverter U_ICU_ENTRY_POINT_RENAME(ucnv_bld_getAvailableConverter)
33559 #define ucnv_canCreateConverter U_ICU_ENTRY_POINT_RENAME(ucnv_canCreateConverter)
33560 #define ucnv_cbFromUWriteBytes U_ICU_ENTRY_POINT_RENAME(ucnv_cbFromUWriteBytes)
33561 #define ucnv_cbFromUWriteSub U_ICU_ENTRY_POINT_RENAME(ucnv_cbFromUWriteSub)
33562 #define ucnv_cbFromUWriteUChars U_ICU_ENTRY_POINT_RENAME(ucnv_cbFromUWriteUChars)
33563 #define ucnv_cbToUWriteSub U_ICU_ENTRY_POINT_RENAME(ucnv_cbToUWriteSub)
33564 #define ucnv_cbToUWriteUChars U_ICU_ENTRY_POINT_RENAME(ucnv_cbToUWriteUChars)
33565 #define ucnv_close U_ICU_ENTRY_POINT_RENAME(ucnv_close)
33566 #define ucnv_compareNames U_ICU_ENTRY_POINT_RENAME(ucnv_compareNames)
33567 #define ucnv_convert U_ICU_ENTRY_POINT_RENAME(ucnv_convert)
33568 #define ucnv_convertEx U_ICU_ENTRY_POINT_RENAME(ucnv_convertEx)
33569 #define ucnv_countAliases U_ICU_ENTRY_POINT_RENAME(ucnv_countAliases)
33570 #define ucnv_countAvailable U_ICU_ENTRY_POINT_RENAME(ucnv_countAvailable)
33571 #define ucnv_countStandards U_ICU_ENTRY_POINT_RENAME(ucnv_countStandards)
33572 #define ucnv_createAlgorithmicConverter U_ICU_ENTRY_POINT_RENAME(ucnv_createAlgorithmicConverter)
33573 #define ucnv_createConverter U_ICU_ENTRY_POINT_RENAME(ucnv_createConverter)
33574 #define ucnv_createConverterFromPackage U_ICU_ENTRY_POINT_RENAME(ucnv_createConverterFromPackage)
33575 #define ucnv_createConverterFromSharedData U_ICU_ENTRY_POINT_RENAME(ucnv_createConverterFromSharedData)
33576 #define ucnv_detectUnicodeSignature U_ICU_ENTRY_POINT_RENAME(ucnv_detectUnicodeSignature)
33577 #define ucnv_extContinueMatchFromU U_ICU_ENTRY_POINT_RENAME(ucnv_extContinueMatchFromU)
33578 #define ucnv_extContinueMatchToU U_ICU_ENTRY_POINT_RENAME(ucnv_extContinueMatchToU)
33579 #define ucnv_extGetUnicodeSet U_ICU_ENTRY_POINT_RENAME(ucnv_extGetUnicodeSet)
33580 #define ucnv_extInitialMatchFromU U_ICU_ENTRY_POINT_RENAME(ucnv_extInitialMatchFromU)
33581 #define ucnv_extInitialMatchToU U_ICU_ENTRY_POINT_RENAME(ucnv_extInitialMatchToU)
33582 #define ucnv_extSimpleMatchFromU U_ICU_ENTRY_POINT_RENAME(ucnv_extSimpleMatchFromU)
33583 #define ucnv_extSimpleMatchToU U_ICU_ENTRY_POINT_RENAME(ucnv_extSimpleMatchToU)
33584 #define ucnv_fixFileSeparator U_ICU_ENTRY_POINT_RENAME(ucnv_fixFileSeparator)
33585 #define ucnv_flushCache U_ICU_ENTRY_POINT_RENAME(ucnv_flushCache)
33586 #define ucnv_fromAlgorithmic U_ICU_ENTRY_POINT_RENAME(ucnv_fromAlgorithmic)
33587 #define ucnv_fromUChars U_ICU_ENTRY_POINT_RENAME(ucnv_fromUChars)
33588 #define ucnv_fromUCountPending U_ICU_ENTRY_POINT_RENAME(ucnv_fromUCountPending)
33589 #define ucnv_fromUWriteBytes U_ICU_ENTRY_POINT_RENAME(ucnv_fromUWriteBytes)
33590 #define ucnv_fromUnicode U_ICU_ENTRY_POINT_RENAME(ucnv_fromUnicode)
33591 #define ucnv_fromUnicode_UTF8 U_ICU_ENTRY_POINT_RENAME(ucnv_fromUnicode_UTF8)
33592 #define ucnv_fromUnicode_UTF8_OFFSETS_LOGIC U_ICU_ENTRY_POINT_RENAME(ucnv_fromUnicode_UTF8_OFFSETS_LOGIC)
33593 #define ucnv_getAlias U_ICU_ENTRY_POINT_RENAME(ucnv_getAlias)
33594 #define ucnv_getAliases U_ICU_ENTRY_POINT_RENAME(ucnv_getAliases)
33595 #define ucnv_getAvailableName U_ICU_ENTRY_POINT_RENAME(ucnv_getAvailableName)
33596 #define ucnv_getCCSID U_ICU_ENTRY_POINT_RENAME(ucnv_getCCSID)
33597 #define ucnv_getCanonicalName U_ICU_ENTRY_POINT_RENAME(ucnv_getCanonicalName)
33598 #define ucnv_getCompleteUnicodeSet U_ICU_ENTRY_POINT_RENAME(ucnv_getCompleteUnicodeSet)
33599 #define ucnv_getDefaultName U_ICU_ENTRY_POINT_RENAME(ucnv_getDefaultName)
33600 #define ucnv_getDisplayName U_ICU_ENTRY_POINT_RENAME(ucnv_getDisplayName)
33601 #define ucnv_getFromUCallBack U_ICU_ENTRY_POINT_RENAME(ucnv_getFromUCallBack)
33602 #define ucnv_getInvalidChars U_ICU_ENTRY_POINT_RENAME(ucnv_getInvalidChars)
33603 #define ucnv_getInvalidUChars U_ICU_ENTRY_POINT_RENAME(ucnv_getInvalidUChars)
33604 #define ucnv_getMaxCharSize U_ICU_ENTRY_POINT_RENAME(ucnv_getMaxCharSize)
33605 #define ucnv_getMinCharSize U_ICU_ENTRY_POINT_RENAME(ucnv_getMinCharSize)
33606 #define ucnv_getName U_ICU_ENTRY_POINT_RENAME(ucnv_getName)
33607 #define ucnv_getNextUChar U_ICU_ENTRY_POINT_RENAME(ucnv_getNextUChar)
33608 #define ucnv_getNonSurrogateUnicodeSet U_ICU_ENTRY_POINT_RENAME(ucnv_getNonSurrogateUnicodeSet)
33609 #define ucnv_getPlatform U_ICU_ENTRY_POINT_RENAME(ucnv_getPlatform)
33610 #define ucnv_getStandard U_ICU_ENTRY_POINT_RENAME(ucnv_getStandard)
33611 #define ucnv_getStandardName U_ICU_ENTRY_POINT_RENAME(ucnv_getStandardName)
33612 #define ucnv_getStarters U_ICU_ENTRY_POINT_RENAME(ucnv_getStarters)
33613 #define ucnv_getSubstChars U_ICU_ENTRY_POINT_RENAME(ucnv_getSubstChars)
33614 #define ucnv_getToUCallBack U_ICU_ENTRY_POINT_RENAME(ucnv_getToUCallBack)
33615 #define ucnv_getType U_ICU_ENTRY_POINT_RENAME(ucnv_getType)
33616 #define ucnv_getUnicodeSet U_ICU_ENTRY_POINT_RENAME(ucnv_getUnicodeSet)
33617 #define ucnv_incrementRefCount U_ICU_ENTRY_POINT_RENAME(ucnv_incrementRefCount)
33618 #define ucnv_io_countKnownConverters U_ICU_ENTRY_POINT_RENAME(ucnv_io_countKnownConverters)
33619 #define ucnv_io_getConverterName U_ICU_ENTRY_POINT_RENAME(ucnv_io_getConverterName)
33620 #define ucnv_io_stripASCIIForCompare U_ICU_ENTRY_POINT_RENAME(ucnv_io_stripASCIIForCompare)
33621 #define ucnv_io_stripEBCDICForCompare U_ICU_ENTRY_POINT_RENAME(ucnv_io_stripEBCDICForCompare)
33622 #define ucnv_isAmbiguous U_ICU_ENTRY_POINT_RENAME(ucnv_isAmbiguous)
33623 #define ucnv_isFixedWidth U_ICU_ENTRY_POINT_RENAME(ucnv_isFixedWidth)
33624 #define ucnv_load U_ICU_ENTRY_POINT_RENAME(ucnv_load)
33625 #define ucnv_loadSharedData U_ICU_ENTRY_POINT_RENAME(ucnv_loadSharedData)
33626 #define ucnv_open U_ICU_ENTRY_POINT_RENAME(ucnv_open)
33627 #define ucnv_openAllNames U_ICU_ENTRY_POINT_RENAME(ucnv_openAllNames)
33628 #define ucnv_openCCSID U_ICU_ENTRY_POINT_RENAME(ucnv_openCCSID)
33629 #define ucnv_openPackage U_ICU_ENTRY_POINT_RENAME(ucnv_openPackage)
33630 #define ucnv_openStandardNames U_ICU_ENTRY_POINT_RENAME(ucnv_openStandardNames)
33631 #define ucnv_openU U_ICU_ENTRY_POINT_RENAME(ucnv_openU)
33632 #define ucnv_reset U_ICU_ENTRY_POINT_RENAME(ucnv_reset)
33633 #define ucnv_resetFromUnicode U_ICU_ENTRY_POINT_RENAME(ucnv_resetFromUnicode)
33634 #define ucnv_resetToUnicode U_ICU_ENTRY_POINT_RENAME(ucnv_resetToUnicode)
33635 #define ucnv_safeClone U_ICU_ENTRY_POINT_RENAME(ucnv_safeClone)
33636 #define ucnv_setDefaultName U_ICU_ENTRY_POINT_RENAME(ucnv_setDefaultName)
33637 #define ucnv_setFallback U_ICU_ENTRY_POINT_RENAME(ucnv_setFallback)
33638 #define ucnv_setFromUCallBack U_ICU_ENTRY_POINT_RENAME(ucnv_setFromUCallBack)
33639 #define ucnv_setSubstChars U_ICU_ENTRY_POINT_RENAME(ucnv_setSubstChars)
33640 #define ucnv_setSubstString U_ICU_ENTRY_POINT_RENAME(ucnv_setSubstString)
33641 #define ucnv_setToUCallBack U_ICU_ENTRY_POINT_RENAME(ucnv_setToUCallBack)
33642 #define ucnv_swap U_ICU_ENTRY_POINT_RENAME(ucnv_swap)
33643 #define ucnv_swapAliases U_ICU_ENTRY_POINT_RENAME(ucnv_swapAliases)
33644 #define ucnv_toAlgorithmic U_ICU_ENTRY_POINT_RENAME(ucnv_toAlgorithmic)
33645 #define ucnv_toUChars U_ICU_ENTRY_POINT_RENAME(ucnv_toUChars)
33646 #define ucnv_toUCountPending U_ICU_ENTRY_POINT_RENAME(ucnv_toUCountPending)
33647 #define ucnv_toUWriteCodePoint U_ICU_ENTRY_POINT_RENAME(ucnv_toUWriteCodePoint)
33648 #define ucnv_toUWriteUChars U_ICU_ENTRY_POINT_RENAME(ucnv_toUWriteUChars)
33649 #define ucnv_toUnicode U_ICU_ENTRY_POINT_RENAME(ucnv_toUnicode)
33650 #define ucnv_unload U_ICU_ENTRY_POINT_RENAME(ucnv_unload)
33651 #define ucnv_unloadSharedDataIfReady U_ICU_ENTRY_POINT_RENAME(ucnv_unloadSharedDataIfReady)
33652 #define ucnv_usesFallback U_ICU_ENTRY_POINT_RENAME(ucnv_usesFallback)
33653 #define ucnvsel_close U_ICU_ENTRY_POINT_RENAME(ucnvsel_close)
33654 #define ucnvsel_open U_ICU_ENTRY_POINT_RENAME(ucnvsel_open)
33655 #define ucnvsel_openFromSerialized U_ICU_ENTRY_POINT_RENAME(ucnvsel_openFromSerialized)
33656 #define ucnvsel_selectForString U_ICU_ENTRY_POINT_RENAME(ucnvsel_selectForString)
33657 #define ucnvsel_selectForUTF8 U_ICU_ENTRY_POINT_RENAME(ucnvsel_selectForUTF8)
33658 #define ucnvsel_serialize U_ICU_ENTRY_POINT_RENAME(ucnvsel_serialize)
33659 #define ucol_allocWeights U_ICU_ENTRY_POINT_RENAME(ucol_allocWeights)
33660 #define ucol_assembleTailoringTable U_ICU_ENTRY_POINT_RENAME(ucol_assembleTailoringTable)
33661 #define ucol_buildPermutationTable U_ICU_ENTRY_POINT_RENAME(ucol_buildPermutationTable)
33662 #define ucol_calcSortKey U_ICU_ENTRY_POINT_RENAME(ucol_calcSortKey)
33663 #define ucol_calcSortKeySimpleTertiary U_ICU_ENTRY_POINT_RENAME(ucol_calcSortKeySimpleTertiary)
33664 #define ucol_cloneBinary U_ICU_ENTRY_POINT_RENAME(ucol_cloneBinary)
33665 #define ucol_cloneRuleData U_ICU_ENTRY_POINT_RENAME(ucol_cloneRuleData)
33666 #define ucol_close U_ICU_ENTRY_POINT_RENAME(ucol_close)
33667 #define ucol_closeElements U_ICU_ENTRY_POINT_RENAME(ucol_closeElements)
33668 #define ucol_countAvailable U_ICU_ENTRY_POINT_RENAME(ucol_countAvailable)
33669 #define ucol_createElements U_ICU_ENTRY_POINT_RENAME(ucol_createElements)
33670 #define ucol_doCE U_ICU_ENTRY_POINT_RENAME(ucol_doCE)
33671 #define ucol_equal U_ICU_ENTRY_POINT_RENAME(ucol_equal)
33672 #define ucol_equals U_ICU_ENTRY_POINT_RENAME(ucol_equals)
33673 #define ucol_findReorderingEntry U_ICU_ENTRY_POINT_RENAME(ucol_findReorderingEntry)
33674 #define ucol_forceHanImplicit U_ICU_ENTRY_POINT_RENAME(ucol_forceHanImplicit)
33675 #define ucol_forgetUCA U_ICU_ENTRY_POINT_RENAME(ucol_forgetUCA)
33676 #define ucol_freeOffsetBuffer U_ICU_ENTRY_POINT_RENAME(ucol_freeOffsetBuffer)
33677 #define ucol_getAttribute U_ICU_ENTRY_POINT_RENAME(ucol_getAttribute)
33678 #define ucol_getAttributeOrDefault U_ICU_ENTRY_POINT_RENAME(ucol_getAttributeOrDefault)
33679 #define ucol_getAvailable U_ICU_ENTRY_POINT_RENAME(ucol_getAvailable)
33680 #define ucol_getBound U_ICU_ENTRY_POINT_RENAME(ucol_getBound)
33681 #define ucol_getCEStrengthDifference U_ICU_ENTRY_POINT_RENAME(ucol_getCEStrengthDifference)
33682 #define ucol_getContractions U_ICU_ENTRY_POINT_RENAME(ucol_getContractions)
33683 #define ucol_getContractionsAndExpansions U_ICU_ENTRY_POINT_RENAME(ucol_getContractionsAndExpansions)
33684 #define ucol_getDisplayName U_ICU_ENTRY_POINT_RENAME(ucol_getDisplayName)
33685 #define ucol_getEquivalentReorderCodes U_ICU_ENTRY_POINT_RENAME(ucol_getEquivalentReorderCodes)
33686 #define ucol_getFirstCE U_ICU_ENTRY_POINT_RENAME(ucol_getFirstCE)
33687 #define ucol_getFunctionalEquivalent U_ICU_ENTRY_POINT_RENAME(ucol_getFunctionalEquivalent)
33688 #define ucol_getKeywordValues U_ICU_ENTRY_POINT_RENAME(ucol_getKeywordValues)
33689 #define ucol_getKeywordValuesForLocale U_ICU_ENTRY_POINT_RENAME(ucol_getKeywordValuesForLocale)
33690 #define ucol_getKeywords U_ICU_ENTRY_POINT_RENAME(ucol_getKeywords)
33691 #define ucol_getLeadBytesForReorderCode U_ICU_ENTRY_POINT_RENAME(ucol_getLeadBytesForReorderCode)
33692 #define ucol_getLocale U_ICU_ENTRY_POINT_RENAME(ucol_getLocale)
33693 #define ucol_getLocaleByType U_ICU_ENTRY_POINT_RENAME(ucol_getLocaleByType)
33694 #define ucol_getMaxExpansion U_ICU_ENTRY_POINT_RENAME(ucol_getMaxExpansion)
33695 #define ucol_getNextCE U_ICU_ENTRY_POINT_RENAME(ucol_getNextCE)
33696 #define ucol_getOffset U_ICU_ENTRY_POINT_RENAME(ucol_getOffset)
33697 #define ucol_getPrevCE U_ICU_ENTRY_POINT_RENAME(ucol_getPrevCE)
33698 #define ucol_getReorderCodes U_ICU_ENTRY_POINT_RENAME(ucol_getReorderCodes)
33699 #define ucol_getReorderCodesForLeadByte U_ICU_ENTRY_POINT_RENAME(ucol_getReorderCodesForLeadByte)
33700 #define ucol_getRules U_ICU_ENTRY_POINT_RENAME(ucol_getRules)
33701 #define ucol_getRulesEx U_ICU_ENTRY_POINT_RENAME(ucol_getRulesEx)
33702 #define ucol_getShortDefinitionString U_ICU_ENTRY_POINT_RENAME(ucol_getShortDefinitionString)
33703 #define ucol_getSortKey U_ICU_ENTRY_POINT_RENAME(ucol_getSortKey)
33704 #define ucol_getSortKeyWithAllocation U_ICU_ENTRY_POINT_RENAME(ucol_getSortKeyWithAllocation)
33705 #define ucol_getStrength U_ICU_ENTRY_POINT_RENAME(ucol_getStrength)
33706 #define ucol_getTailoredSet U_ICU_ENTRY_POINT_RENAME(ucol_getTailoredSet)
33707 #define ucol_getUCAVersion U_ICU_ENTRY_POINT_RENAME(ucol_getUCAVersion)
33708 #define ucol_getUnsafeSet U_ICU_ENTRY_POINT_RENAME(ucol_getUnsafeSet)
33709 #define ucol_getVariableTop U_ICU_ENTRY_POINT_RENAME(ucol_getVariableTop)
33710 #define ucol_getVersion U_ICU_ENTRY_POINT_RENAME(ucol_getVersion)
33711 #define ucol_greater U_ICU_ENTRY_POINT_RENAME(ucol_greater)
33712 #define ucol_greaterOrEqual U_ICU_ENTRY_POINT_RENAME(ucol_greaterOrEqual)
33713 #define ucol_initBuffers U_ICU_ENTRY_POINT_RENAME(ucol_initBuffers)
33714 #define ucol_initCollator U_ICU_ENTRY_POINT_RENAME(ucol_initCollator)
33715 #define ucol_initInverseUCA U_ICU_ENTRY_POINT_RENAME(ucol_initInverseUCA)
33716 #define ucol_initUCA U_ICU_ENTRY_POINT_RENAME(ucol_initUCA)
33717 #define ucol_inv_getNextCE U_ICU_ENTRY_POINT_RENAME(ucol_inv_getNextCE)
33718 #define ucol_inv_getPrevCE U_ICU_ENTRY_POINT_RENAME(ucol_inv_getPrevCE)
33719 #define ucol_isTailored U_ICU_ENTRY_POINT_RENAME(ucol_isTailored)
33720 #define ucol_keyHashCode U_ICU_ENTRY_POINT_RENAME(ucol_keyHashCode)
33721 #define ucol_looksLikeCollationBinary U_ICU_ENTRY_POINT_RENAME(ucol_looksLikeCollationBinary)
33722 #define ucol_mergeSortkeys U_ICU_ENTRY_POINT_RENAME(ucol_mergeSortkeys)
33723 #define ucol_next U_ICU_ENTRY_POINT_RENAME(ucol_next)
33724 #define ucol_nextProcessed U_ICU_ENTRY_POINT_RENAME(ucol_nextProcessed)
33725 #define ucol_nextSortKeyPart U_ICU_ENTRY_POINT_RENAME(ucol_nextSortKeyPart)
33726 #define ucol_nextWeight U_ICU_ENTRY_POINT_RENAME(ucol_nextWeight)
33727 #define ucol_normalizeShortDefinitionString U_ICU_ENTRY_POINT_RENAME(ucol_normalizeShortDefinitionString)
33728 #define ucol_open U_ICU_ENTRY_POINT_RENAME(ucol_open)
33729 #define ucol_openAvailableLocales U_ICU_ENTRY_POINT_RENAME(ucol_openAvailableLocales)
33730 #define ucol_openBinary U_ICU_ENTRY_POINT_RENAME(ucol_openBinary)
33731 #define ucol_openElements U_ICU_ENTRY_POINT_RENAME(ucol_openElements)
33732 #define ucol_openFromShortString U_ICU_ENTRY_POINT_RENAME(ucol_openFromShortString)
33733 #define ucol_openRules U_ICU_ENTRY_POINT_RENAME(ucol_openRules)
33734 #define ucol_openRulesForImport U_ICU_ENTRY_POINT_RENAME(ucol_openRulesForImport)
33735 #define ucol_open_internal U_ICU_ENTRY_POINT_RENAME(ucol_open_internal)
33736 #define ucol_prepareShortStringOpen U_ICU_ENTRY_POINT_RENAME(ucol_prepareShortStringOpen)
33737 #define ucol_previous U_ICU_ENTRY_POINT_RENAME(ucol_previous)
33738 #define ucol_previousProcessed U_ICU_ENTRY_POINT_RENAME(ucol_previousProcessed)
33739 #define ucol_primaryOrder U_ICU_ENTRY_POINT_RENAME(ucol_primaryOrder)
33740 #define ucol_prv_getSpecialCE U_ICU_ENTRY_POINT_RENAME(ucol_prv_getSpecialCE)
33741 #define ucol_prv_getSpecialPrevCE U_ICU_ENTRY_POINT_RENAME(ucol_prv_getSpecialPrevCE)
33742 #define ucol_reset U_ICU_ENTRY_POINT_RENAME(ucol_reset)
33743 #define ucol_restoreVariableTop U_ICU_ENTRY_POINT_RENAME(ucol_restoreVariableTop)
33744 #define ucol_safeClone U_ICU_ENTRY_POINT_RENAME(ucol_safeClone)
33745 #define ucol_secondaryOrder U_ICU_ENTRY_POINT_RENAME(ucol_secondaryOrder)
33746 #define ucol_setAttribute U_ICU_ENTRY_POINT_RENAME(ucol_setAttribute)
33747 #define ucol_setOffset U_ICU_ENTRY_POINT_RENAME(ucol_setOffset)
33748 #define ucol_setOptionsFromHeader U_ICU_ENTRY_POINT_RENAME(ucol_setOptionsFromHeader)
33749 #define ucol_setReorderCodes U_ICU_ENTRY_POINT_RENAME(ucol_setReorderCodes)
33750 #define ucol_setReqValidLocales U_ICU_ENTRY_POINT_RENAME(ucol_setReqValidLocales)
33751 #define ucol_setStrength U_ICU_ENTRY_POINT_RENAME(ucol_setStrength)
33752 #define ucol_setText U_ICU_ENTRY_POINT_RENAME(ucol_setText)
33753 #define ucol_setVariableTop U_ICU_ENTRY_POINT_RENAME(ucol_setVariableTop)
33754 #define ucol_strcoll U_ICU_ENTRY_POINT_RENAME(ucol_strcoll)
33755 #define ucol_strcollIter U_ICU_ENTRY_POINT_RENAME(ucol_strcollIter)
33756 #define ucol_swap U_ICU_ENTRY_POINT_RENAME(ucol_swap)
33757 #define ucol_swapBinary U_ICU_ENTRY_POINT_RENAME(ucol_swapBinary)
33758 #define ucol_swapInverseUCA U_ICU_ENTRY_POINT_RENAME(ucol_swapInverseUCA)
33759 #define ucol_tertiaryOrder U_ICU_ENTRY_POINT_RENAME(ucol_tertiaryOrder)
33760 #define ucol_tok_assembleTokenList U_ICU_ENTRY_POINT_RENAME(ucol_tok_assembleTokenList)
33761 #define ucol_tok_closeTokenList U_ICU_ENTRY_POINT_RENAME(ucol_tok_closeTokenList)
33762 #define ucol_tok_getNextArgument U_ICU_ENTRY_POINT_RENAME(ucol_tok_getNextArgument)
33763 #define ucol_tok_getRulesFromBundle U_ICU_ENTRY_POINT_RENAME(ucol_tok_getRulesFromBundle)
33764 #define ucol_tok_initTokenList U_ICU_ENTRY_POINT_RENAME(ucol_tok_initTokenList)
33765 #define ucol_tok_parseNextToken U_ICU_ENTRY_POINT_RENAME(ucol_tok_parseNextToken)
33766 #define ucol_updateInternalState U_ICU_ENTRY_POINT_RENAME(ucol_updateInternalState)
33767 #define ucsdet_close U_ICU_ENTRY_POINT_RENAME(ucsdet_close)
33768 #define ucsdet_detect U_ICU_ENTRY_POINT_RENAME(ucsdet_detect)
33769 #define ucsdet_detectAll U_ICU_ENTRY_POINT_RENAME(ucsdet_detectAll)
33770 #define ucsdet_enableInputFilter U_ICU_ENTRY_POINT_RENAME(ucsdet_enableInputFilter)
33771 #define ucsdet_getAllDetectableCharsets U_ICU_ENTRY_POINT_RENAME(ucsdet_getAllDetectableCharsets)
33772 #define ucsdet_getConfidence U_ICU_ENTRY_POINT_RENAME(ucsdet_getConfidence)
33773 #define ucsdet_getLanguage U_ICU_ENTRY_POINT_RENAME(ucsdet_getLanguage)
33774 #define ucsdet_getName U_ICU_ENTRY_POINT_RENAME(ucsdet_getName)
33775 #define ucsdet_getUChars U_ICU_ENTRY_POINT_RENAME(ucsdet_getUChars)
33776 #define ucsdet_isInputFilterEnabled U_ICU_ENTRY_POINT_RENAME(ucsdet_isInputFilterEnabled)
33777 #define ucsdet_open U_ICU_ENTRY_POINT_RENAME(ucsdet_open)
33778 #define ucsdet_setDeclaredEncoding U_ICU_ENTRY_POINT_RENAME(ucsdet_setDeclaredEncoding)
33779 #define ucsdet_setText U_ICU_ENTRY_POINT_RENAME(ucsdet_setText)
33780 #define ucurr_countCurrencies U_ICU_ENTRY_POINT_RENAME(ucurr_countCurrencies)
33781 #define ucurr_forLocale U_ICU_ENTRY_POINT_RENAME(ucurr_forLocale)
33782 #define ucurr_forLocaleAndDate U_ICU_ENTRY_POINT_RENAME(ucurr_forLocaleAndDate)
33783 #define ucurr_getDefaultFractionDigits U_ICU_ENTRY_POINT_RENAME(ucurr_getDefaultFractionDigits)
33784 #define ucurr_getKeywordValuesForLocale U_ICU_ENTRY_POINT_RENAME(ucurr_getKeywordValuesForLocale)
33785 #define ucurr_getName U_ICU_ENTRY_POINT_RENAME(ucurr_getName)
33786 #define ucurr_getPluralName U_ICU_ENTRY_POINT_RENAME(ucurr_getPluralName)
33787 #define ucurr_getRoundingIncrement U_ICU_ENTRY_POINT_RENAME(ucurr_getRoundingIncrement)
33788 #define ucurr_isAvailable U_ICU_ENTRY_POINT_RENAME(ucurr_isAvailable)
33789 #define ucurr_openISOCurrencies U_ICU_ENTRY_POINT_RENAME(ucurr_openISOCurrencies)
33790 #define ucurr_register U_ICU_ENTRY_POINT_RENAME(ucurr_register)
33791 #define ucurr_unregister U_ICU_ENTRY_POINT_RENAME(ucurr_unregister)
33792 #define udat_applyPattern U_ICU_ENTRY_POINT_RENAME(udat_applyPattern)
33793 #define udat_applyPatternRelative U_ICU_ENTRY_POINT_RENAME(udat_applyPatternRelative)
33794 #define udat_clone U_ICU_ENTRY_POINT_RENAME(udat_clone)
33795 #define udat_close U_ICU_ENTRY_POINT_RENAME(udat_close)
33796 #define udat_countAvailable U_ICU_ENTRY_POINT_RENAME(udat_countAvailable)
33797 #define udat_countSymbols U_ICU_ENTRY_POINT_RENAME(udat_countSymbols)
33798 #define udat_format U_ICU_ENTRY_POINT_RENAME(udat_format)
33799 #define udat_get2DigitYearStart U_ICU_ENTRY_POINT_RENAME(udat_get2DigitYearStart)
33800 #define udat_getAvailable U_ICU_ENTRY_POINT_RENAME(udat_getAvailable)
33801 #define udat_getCalendar U_ICU_ENTRY_POINT_RENAME(udat_getCalendar)
33802 #define udat_getLocaleByType U_ICU_ENTRY_POINT_RENAME(udat_getLocaleByType)
33803 #define udat_getNumberFormat U_ICU_ENTRY_POINT_RENAME(udat_getNumberFormat)
33804 #define udat_getSymbols U_ICU_ENTRY_POINT_RENAME(udat_getSymbols)
33805 #define udat_isLenient U_ICU_ENTRY_POINT_RENAME(udat_isLenient)
33806 #define udat_open U_ICU_ENTRY_POINT_RENAME(udat_open)
33807 #define udat_parse U_ICU_ENTRY_POINT_RENAME(udat_parse)
33808 #define udat_parseCalendar U_ICU_ENTRY_POINT_RENAME(udat_parseCalendar)
33809 #define udat_set2DigitYearStart U_ICU_ENTRY_POINT_RENAME(udat_set2DigitYearStart)
33810 #define udat_setCalendar U_ICU_ENTRY_POINT_RENAME(udat_setCalendar)
33811 #define udat_setLenient U_ICU_ENTRY_POINT_RENAME(udat_setLenient)
33812 #define udat_setNumberFormat U_ICU_ENTRY_POINT_RENAME(udat_setNumberFormat)
33813 #define udat_setSymbols U_ICU_ENTRY_POINT_RENAME(udat_setSymbols)
33814 #define udat_toCalendarDateField U_ICU_ENTRY_POINT_RENAME(udat_toCalendarDateField)
33815 #define udat_toPattern U_ICU_ENTRY_POINT_RENAME(udat_toPattern)
33816 #define udat_toPatternRelativeDate U_ICU_ENTRY_POINT_RENAME(udat_toPatternRelativeDate)
33817 #define udat_toPatternRelativeTime U_ICU_ENTRY_POINT_RENAME(udat_toPatternRelativeTime)
33818 #define udata_checkCommonData U_ICU_ENTRY_POINT_RENAME(udata_checkCommonData)
33819 #define udata_close U_ICU_ENTRY_POINT_RENAME(udata_close)
33820 #define udata_closeSwapper U_ICU_ENTRY_POINT_RENAME(udata_closeSwapper)
33821 #define udata_getHeaderSize U_ICU_ENTRY_POINT_RENAME(udata_getHeaderSize)
33822 #define udata_getInfo U_ICU_ENTRY_POINT_RENAME(udata_getInfo)
33823 #define udata_getInfoSize U_ICU_ENTRY_POINT_RENAME(udata_getInfoSize)
33824 #define udata_getLength U_ICU_ENTRY_POINT_RENAME(udata_getLength)
33825 #define udata_getMemory U_ICU_ENTRY_POINT_RENAME(udata_getMemory)
33826 #define udata_getRawMemory U_ICU_ENTRY_POINT_RENAME(udata_getRawMemory)
33827 #define udata_open U_ICU_ENTRY_POINT_RENAME(udata_open)
33828 #define udata_openChoice U_ICU_ENTRY_POINT_RENAME(udata_openChoice)
33829 #define udata_openSwapper U_ICU_ENTRY_POINT_RENAME(udata_openSwapper)
33830 #define udata_openSwapperForInputData U_ICU_ENTRY_POINT_RENAME(udata_openSwapperForInputData)
33831 #define udata_printError U_ICU_ENTRY_POINT_RENAME(udata_printError)
33832 #define udata_readInt16 U_ICU_ENTRY_POINT_RENAME(udata_readInt16)
33833 #define udata_readInt32 U_ICU_ENTRY_POINT_RENAME(udata_readInt32)
33834 #define udata_setAppData U_ICU_ENTRY_POINT_RENAME(udata_setAppData)
33835 #define udata_setCommonData U_ICU_ENTRY_POINT_RENAME(udata_setCommonData)
33836 #define udata_setFileAccess U_ICU_ENTRY_POINT_RENAME(udata_setFileAccess)
33837 #define udata_swapDataHeader U_ICU_ENTRY_POINT_RENAME(udata_swapDataHeader)
33838 #define udata_swapInvStringBlock U_ICU_ENTRY_POINT_RENAME(udata_swapInvStringBlock)
33839 #define udatpg_addPattern U_ICU_ENTRY_POINT_RENAME(udatpg_addPattern)
33840 #define udatpg_clone U_ICU_ENTRY_POINT_RENAME(udatpg_clone)
33841 #define udatpg_close U_ICU_ENTRY_POINT_RENAME(udatpg_close)
33842 #define udatpg_getAppendItemFormat U_ICU_ENTRY_POINT_RENAME(udatpg_getAppendItemFormat)
33843 #define udatpg_getAppendItemName U_ICU_ENTRY_POINT_RENAME(udatpg_getAppendItemName)
33844 #define udatpg_getBaseSkeleton U_ICU_ENTRY_POINT_RENAME(udatpg_getBaseSkeleton)
33845 #define udatpg_getBestPattern U_ICU_ENTRY_POINT_RENAME(udatpg_getBestPattern)
33846 #define udatpg_getBestPatternWithOptions U_ICU_ENTRY_POINT_RENAME(udatpg_getBestPatternWithOptions)
33847 #define udatpg_getDateTimeFormat U_ICU_ENTRY_POINT_RENAME(udatpg_getDateTimeFormat)
33848 #define udatpg_getDecimal U_ICU_ENTRY_POINT_RENAME(udatpg_getDecimal)
33849 #define udatpg_getPatternForSkeleton U_ICU_ENTRY_POINT_RENAME(udatpg_getPatternForSkeleton)
33850 #define udatpg_getSkeleton U_ICU_ENTRY_POINT_RENAME(udatpg_getSkeleton)
33851 #define udatpg_open U_ICU_ENTRY_POINT_RENAME(udatpg_open)
33852 #define udatpg_openBaseSkeletons U_ICU_ENTRY_POINT_RENAME(udatpg_openBaseSkeletons)
33853 #define udatpg_openEmpty U_ICU_ENTRY_POINT_RENAME(udatpg_openEmpty)
33854 #define udatpg_openSkeletons U_ICU_ENTRY_POINT_RENAME(udatpg_openSkeletons)
33855 #define udatpg_replaceFieldTypes U_ICU_ENTRY_POINT_RENAME(udatpg_replaceFieldTypes)
33856 #define udatpg_replaceFieldTypesWithOptions U_ICU_ENTRY_POINT_RENAME(udatpg_replaceFieldTypesWithOptions)
33857 #define udatpg_setAppendItemFormat U_ICU_ENTRY_POINT_RENAME(udatpg_setAppendItemFormat)
33858 #define udatpg_setAppendItemName U_ICU_ENTRY_POINT_RENAME(udatpg_setAppendItemName)
33859 #define udatpg_setDateTimeFormat U_ICU_ENTRY_POINT_RENAME(udatpg_setDateTimeFormat)
33860 #define udatpg_setDecimal U_ICU_ENTRY_POINT_RENAME(udatpg_setDecimal)
33861 #define udtitvfmt_close U_ICU_ENTRY_POINT_RENAME(udtitvfmt_close)
33862 #define udtitvfmt_format U_ICU_ENTRY_POINT_RENAME(udtitvfmt_format)
33863 #define udtitvfmt_open U_ICU_ENTRY_POINT_RENAME(udtitvfmt_open)
33864 #define uenum_close U_ICU_ENTRY_POINT_RENAME(uenum_close)
33865 #define uenum_count U_ICU_ENTRY_POINT_RENAME(uenum_count)
33866 #define uenum_next U_ICU_ENTRY_POINT_RENAME(uenum_next)
33867 #define uenum_nextDefault U_ICU_ENTRY_POINT_RENAME(uenum_nextDefault)
33868 #define uenum_openCharStringsEnumeration U_ICU_ENTRY_POINT_RENAME(uenum_openCharStringsEnumeration)
33869 #define uenum_openFromStringEnumeration U_ICU_ENTRY_POINT_RENAME(uenum_openFromStringEnumeration)
33870 #define uenum_reset U_ICU_ENTRY_POINT_RENAME(uenum_reset)
33871 #define uenum_unext U_ICU_ENTRY_POINT_RENAME(uenum_unext)
33872 #define uenum_unextDefault U_ICU_ENTRY_POINT_RENAME(uenum_unextDefault)
33873 #define ufile_close_translit U_ICU_ENTRY_POINT_RENAME(ufile_close_translit)
33874 #define ufile_fill_uchar_buffer U_ICU_ENTRY_POINT_RENAME(ufile_fill_uchar_buffer)
33875 #define ufile_flush_io U_ICU_ENTRY_POINT_RENAME(ufile_flush_io)
33876 #define ufile_flush_translit U_ICU_ENTRY_POINT_RENAME(ufile_flush_translit)
33877 #define ufile_getch U_ICU_ENTRY_POINT_RENAME(ufile_getch)
33878 #define ufile_getch32 U_ICU_ENTRY_POINT_RENAME(ufile_getch32)
33879 #define ufmt_64tou U_ICU_ENTRY_POINT_RENAME(ufmt_64tou)
33880 #define ufmt_defaultCPToUnicode U_ICU_ENTRY_POINT_RENAME(ufmt_defaultCPToUnicode)
33881 #define ufmt_digitvalue U_ICU_ENTRY_POINT_RENAME(ufmt_digitvalue)
33882 #define ufmt_isdigit U_ICU_ENTRY_POINT_RENAME(ufmt_isdigit)
33883 #define ufmt_ptou U_ICU_ENTRY_POINT_RENAME(ufmt_ptou)
33884 #define ufmt_uto64 U_ICU_ENTRY_POINT_RENAME(ufmt_uto64)
33885 #define ufmt_utop U_ICU_ENTRY_POINT_RENAME(ufmt_utop)
33886 #define uhash_close U_ICU_ENTRY_POINT_RENAME(uhash_close)
33887 #define uhash_compareCaselessUnicodeString U_ICU_ENTRY_POINT_RENAME(uhash_compareCaselessUnicodeString)
33888 #define uhash_compareChars U_ICU_ENTRY_POINT_RENAME(uhash_compareChars)
33889 #define uhash_compareIChars U_ICU_ENTRY_POINT_RENAME(uhash_compareIChars)
33890 #define uhash_compareLong U_ICU_ENTRY_POINT_RENAME(uhash_compareLong)
33891 #define uhash_compareUChars U_ICU_ENTRY_POINT_RENAME(uhash_compareUChars)
33892 #define uhash_compareUnicodeString U_ICU_ENTRY_POINT_RENAME(uhash_compareUnicodeString)
33893 #define uhash_count U_ICU_ENTRY_POINT_RENAME(uhash_count)
33894 #define uhash_deleteHashtable U_ICU_ENTRY_POINT_RENAME(uhash_deleteHashtable)
33895 #define uhash_deleteUObject U_ICU_ENTRY_POINT_RENAME(uhash_deleteUObject)
33896 #define uhash_deleteUnicodeString U_ICU_ENTRY_POINT_RENAME(uhash_deleteUnicodeString)
33897 #define uhash_equals U_ICU_ENTRY_POINT_RENAME(uhash_equals)
33898 #define uhash_find U_ICU_ENTRY_POINT_RENAME(uhash_find)
33899 #define uhash_freeBlock U_ICU_ENTRY_POINT_RENAME(uhash_freeBlock)
33900 #define uhash_get U_ICU_ENTRY_POINT_RENAME(uhash_get)
33901 #define uhash_geti U_ICU_ENTRY_POINT_RENAME(uhash_geti)
33902 #define uhash_hashCaselessUnicodeString U_ICU_ENTRY_POINT_RENAME(uhash_hashCaselessUnicodeString)
33903 #define uhash_hashChars U_ICU_ENTRY_POINT_RENAME(uhash_hashChars)
33904 #define uhash_hashCharsN U_ICU_ENTRY_POINT_RENAME(uhash_hashCharsN)
33905 #define uhash_hashIChars U_ICU_ENTRY_POINT_RENAME(uhash_hashIChars)
33906 #define uhash_hashLong U_ICU_ENTRY_POINT_RENAME(uhash_hashLong)
33907 #define uhash_hashUChars U_ICU_ENTRY_POINT_RENAME(uhash_hashUChars)
33908 #define uhash_hashUCharsN U_ICU_ENTRY_POINT_RENAME(uhash_hashUCharsN)
33909 #define uhash_hashUnicodeString U_ICU_ENTRY_POINT_RENAME(uhash_hashUnicodeString)
33910 #define uhash_iget U_ICU_ENTRY_POINT_RENAME(uhash_iget)
33911 #define uhash_igeti U_ICU_ENTRY_POINT_RENAME(uhash_igeti)
33912 #define uhash_init U_ICU_ENTRY_POINT_RENAME(uhash_init)
33913 #define uhash_iput U_ICU_ENTRY_POINT_RENAME(uhash_iput)
33914 #define uhash_iputi U_ICU_ENTRY_POINT_RENAME(uhash_iputi)
33915 #define uhash_iremove U_ICU_ENTRY_POINT_RENAME(uhash_iremove)
33916 #define uhash_iremovei U_ICU_ENTRY_POINT_RENAME(uhash_iremovei)
33917 #define uhash_nextElement U_ICU_ENTRY_POINT_RENAME(uhash_nextElement)
33918 #define uhash_open U_ICU_ENTRY_POINT_RENAME(uhash_open)
33919 #define uhash_openSize U_ICU_ENTRY_POINT_RENAME(uhash_openSize)
33920 #define uhash_put U_ICU_ENTRY_POINT_RENAME(uhash_put)
33921 #define uhash_puti U_ICU_ENTRY_POINT_RENAME(uhash_puti)
33922 #define uhash_remove U_ICU_ENTRY_POINT_RENAME(uhash_remove)
33923 #define uhash_removeAll U_ICU_ENTRY_POINT_RENAME(uhash_removeAll)
33924 #define uhash_removeElement U_ICU_ENTRY_POINT_RENAME(uhash_removeElement)
33925 #define uhash_removei U_ICU_ENTRY_POINT_RENAME(uhash_removei)
33926 #define uhash_setKeyComparator U_ICU_ENTRY_POINT_RENAME(uhash_setKeyComparator)
33927 #define uhash_setKeyDeleter U_ICU_ENTRY_POINT_RENAME(uhash_setKeyDeleter)
33928 #define uhash_setKeyHasher U_ICU_ENTRY_POINT_RENAME(uhash_setKeyHasher)
33929 #define uhash_setResizePolicy U_ICU_ENTRY_POINT_RENAME(uhash_setResizePolicy)
33930 #define uhash_setValueComparator U_ICU_ENTRY_POINT_RENAME(uhash_setValueComparator)
33931 #define uhash_setValueDeleter U_ICU_ENTRY_POINT_RENAME(uhash_setValueDeleter)
33932 #define uidna_IDNToASCII U_ICU_ENTRY_POINT_RENAME(uidna_IDNToASCII)
33933 #define uidna_IDNToUnicode U_ICU_ENTRY_POINT_RENAME(uidna_IDNToUnicode)
33934 #define uidna_close U_ICU_ENTRY_POINT_RENAME(uidna_close)
33935 #define uidna_compare U_ICU_ENTRY_POINT_RENAME(uidna_compare)
33936 #define uidna_labelToASCII U_ICU_ENTRY_POINT_RENAME(uidna_labelToASCII)
33937 #define uidna_labelToASCII_UTF8 U_ICU_ENTRY_POINT_RENAME(uidna_labelToASCII_UTF8)
33938 #define uidna_labelToUnicode U_ICU_ENTRY_POINT_RENAME(uidna_labelToUnicode)
33939 #define uidna_labelToUnicodeUTF8 U_ICU_ENTRY_POINT_RENAME(uidna_labelToUnicodeUTF8)
33940 #define uidna_nameToASCII U_ICU_ENTRY_POINT_RENAME(uidna_nameToASCII)
33941 #define uidna_nameToASCII_UTF8 U_ICU_ENTRY_POINT_RENAME(uidna_nameToASCII_UTF8)
33942 #define uidna_nameToUnicode U_ICU_ENTRY_POINT_RENAME(uidna_nameToUnicode)
33943 #define uidna_nameToUnicodeUTF8 U_ICU_ENTRY_POINT_RENAME(uidna_nameToUnicodeUTF8)
33944 #define uidna_openUTS46 U_ICU_ENTRY_POINT_RENAME(uidna_openUTS46)
33945 #define uidna_toASCII U_ICU_ENTRY_POINT_RENAME(uidna_toASCII)
33946 #define uidna_toUnicode U_ICU_ENTRY_POINT_RENAME(uidna_toUnicode)
33947 #define uiter_current32 U_ICU_ENTRY_POINT_RENAME(uiter_current32)
33948 #define uiter_getState U_ICU_ENTRY_POINT_RENAME(uiter_getState)
33949 #define uiter_next32 U_ICU_ENTRY_POINT_RENAME(uiter_next32)
33950 #define uiter_previous32 U_ICU_ENTRY_POINT_RENAME(uiter_previous32)
33951 #define uiter_setCharacterIterator U_ICU_ENTRY_POINT_RENAME(uiter_setCharacterIterator)
33952 #define uiter_setReplaceable U_ICU_ENTRY_POINT_RENAME(uiter_setReplaceable)
33953 #define uiter_setState U_ICU_ENTRY_POINT_RENAME(uiter_setState)
33954 #define uiter_setString U_ICU_ENTRY_POINT_RENAME(uiter_setString)
33955 #define uiter_setUTF16BE U_ICU_ENTRY_POINT_RENAME(uiter_setUTF16BE)
33956 #define uiter_setUTF8 U_ICU_ENTRY_POINT_RENAME(uiter_setUTF8)
33957 #define uldn_close U_ICU_ENTRY_POINT_RENAME(uldn_close)
33958 #define uldn_getDialectHandling U_ICU_ENTRY_POINT_RENAME(uldn_getDialectHandling)
33959 #define uldn_getLocale U_ICU_ENTRY_POINT_RENAME(uldn_getLocale)
33960 #define uldn_keyDisplayName U_ICU_ENTRY_POINT_RENAME(uldn_keyDisplayName)
33961 #define uldn_keyValueDisplayName U_ICU_ENTRY_POINT_RENAME(uldn_keyValueDisplayName)
33962 #define uldn_languageDisplayName U_ICU_ENTRY_POINT_RENAME(uldn_languageDisplayName)
33963 #define uldn_localeDisplayName U_ICU_ENTRY_POINT_RENAME(uldn_localeDisplayName)
33964 #define uldn_open U_ICU_ENTRY_POINT_RENAME(uldn_open)
33965 #define uldn_regionDisplayName U_ICU_ENTRY_POINT_RENAME(uldn_regionDisplayName)
33966 #define uldn_scriptCodeDisplayName U_ICU_ENTRY_POINT_RENAME(uldn_scriptCodeDisplayName)
33967 #define uldn_scriptDisplayName U_ICU_ENTRY_POINT_RENAME(uldn_scriptDisplayName)
33968 #define uldn_variantDisplayName U_ICU_ENTRY_POINT_RENAME(uldn_variantDisplayName)
33969 #define ulist_addItemBeginList U_ICU_ENTRY_POINT_RENAME(ulist_addItemBeginList)
33970 #define ulist_addItemEndList U_ICU_ENTRY_POINT_RENAME(ulist_addItemEndList)
33971 #define ulist_close_keyword_values_iterator U_ICU_ENTRY_POINT_RENAME(ulist_close_keyword_values_iterator)
33972 #define ulist_containsString U_ICU_ENTRY_POINT_RENAME(ulist_containsString)
33973 #define ulist_count_keyword_values U_ICU_ENTRY_POINT_RENAME(ulist_count_keyword_values)
33974 #define ulist_createEmptyList U_ICU_ENTRY_POINT_RENAME(ulist_createEmptyList)
33975 #define ulist_deleteList U_ICU_ENTRY_POINT_RENAME(ulist_deleteList)
33976 #define ulist_getListFromEnum U_ICU_ENTRY_POINT_RENAME(ulist_getListFromEnum)
33977 #define ulist_getListSize U_ICU_ENTRY_POINT_RENAME(ulist_getListSize)
33978 #define ulist_getNext U_ICU_ENTRY_POINT_RENAME(ulist_getNext)
33979 #define ulist_next_keyword_value U_ICU_ENTRY_POINT_RENAME(ulist_next_keyword_value)
33980 #define ulist_resetList U_ICU_ENTRY_POINT_RENAME(ulist_resetList)
33981 #define ulist_reset_keyword_values_iterator U_ICU_ENTRY_POINT_RENAME(ulist_reset_keyword_values_iterator)
33982 #define uloc_acceptLanguage U_ICU_ENTRY_POINT_RENAME(uloc_acceptLanguage)
33983 #define uloc_acceptLanguageFromHTTP U_ICU_ENTRY_POINT_RENAME(uloc_acceptLanguageFromHTTP)
33984 #define uloc_addLikelySubtags U_ICU_ENTRY_POINT_RENAME(uloc_addLikelySubtags)
33985 #define uloc_canonicalize U_ICU_ENTRY_POINT_RENAME(uloc_canonicalize)
33986 #define uloc_countAvailable U_ICU_ENTRY_POINT_RENAME(uloc_countAvailable)
33987 #define uloc_forLanguageTag U_ICU_ENTRY_POINT_RENAME(uloc_forLanguageTag)
33988 #define uloc_getAvailable U_ICU_ENTRY_POINT_RENAME(uloc_getAvailable)
33989 #define uloc_getBaseName U_ICU_ENTRY_POINT_RENAME(uloc_getBaseName)
33990 #define uloc_getCharacterOrientation U_ICU_ENTRY_POINT_RENAME(uloc_getCharacterOrientation)
33991 #define uloc_getCountry U_ICU_ENTRY_POINT_RENAME(uloc_getCountry)
33992 #define uloc_getCurrentCountryID U_ICU_ENTRY_POINT_RENAME(uloc_getCurrentCountryID)
33993 #define uloc_getCurrentLanguageID U_ICU_ENTRY_POINT_RENAME(uloc_getCurrentLanguageID)
33994 #define uloc_getDefault U_ICU_ENTRY_POINT_RENAME(uloc_getDefault)
33995 #define uloc_getDisplayCountry U_ICU_ENTRY_POINT_RENAME(uloc_getDisplayCountry)
33996 #define uloc_getDisplayKeyword U_ICU_ENTRY_POINT_RENAME(uloc_getDisplayKeyword)
33997 #define uloc_getDisplayKeywordValue U_ICU_ENTRY_POINT_RENAME(uloc_getDisplayKeywordValue)
33998 #define uloc_getDisplayLanguage U_ICU_ENTRY_POINT_RENAME(uloc_getDisplayLanguage)
33999 #define uloc_getDisplayName U_ICU_ENTRY_POINT_RENAME(uloc_getDisplayName)
34000 #define uloc_getDisplayScript U_ICU_ENTRY_POINT_RENAME(uloc_getDisplayScript)
34001 #define uloc_getDisplayVariant U_ICU_ENTRY_POINT_RENAME(uloc_getDisplayVariant)
34002 #define uloc_getISO3Country U_ICU_ENTRY_POINT_RENAME(uloc_getISO3Country)
34003 #define uloc_getISO3Language U_ICU_ENTRY_POINT_RENAME(uloc_getISO3Language)
34004 #define uloc_getISOCountries U_ICU_ENTRY_POINT_RENAME(uloc_getISOCountries)
34005 #define uloc_getISOLanguages U_ICU_ENTRY_POINT_RENAME(uloc_getISOLanguages)
34006 #define uloc_getKeywordValue U_ICU_ENTRY_POINT_RENAME(uloc_getKeywordValue)
34007 #define uloc_getLCID U_ICU_ENTRY_POINT_RENAME(uloc_getLCID)
34008 #define uloc_getLanguage U_ICU_ENTRY_POINT_RENAME(uloc_getLanguage)
34009 #define uloc_getLineOrientation U_ICU_ENTRY_POINT_RENAME(uloc_getLineOrientation)
34010 #define uloc_getLocaleForLCID U_ICU_ENTRY_POINT_RENAME(uloc_getLocaleForLCID)
34011 #define uloc_getName U_ICU_ENTRY_POINT_RENAME(uloc_getName)
34012 #define uloc_getParent U_ICU_ENTRY_POINT_RENAME(uloc_getParent)
34013 #define uloc_getScript U_ICU_ENTRY_POINT_RENAME(uloc_getScript)
34014 #define uloc_getTableStringWithFallback U_ICU_ENTRY_POINT_RENAME(uloc_getTableStringWithFallback)
34015 #define uloc_getVariant U_ICU_ENTRY_POINT_RENAME(uloc_getVariant)
34016 #define uloc_minimizeSubtags U_ICU_ENTRY_POINT_RENAME(uloc_minimizeSubtags)
34017 #define uloc_openKeywordList U_ICU_ENTRY_POINT_RENAME(uloc_openKeywordList)
34018 #define uloc_openKeywords U_ICU_ENTRY_POINT_RENAME(uloc_openKeywords)
34019 #define uloc_setDefault U_ICU_ENTRY_POINT_RENAME(uloc_setDefault)
34020 #define uloc_setKeywordValue U_ICU_ENTRY_POINT_RENAME(uloc_setKeywordValue)
34021 #define uloc_toLanguageTag U_ICU_ENTRY_POINT_RENAME(uloc_toLanguageTag)
34022 #define ulocdata_close U_ICU_ENTRY_POINT_RENAME(ulocdata_close)
34023 #define ulocdata_getCLDRVersion U_ICU_ENTRY_POINT_RENAME(ulocdata_getCLDRVersion)
34024 #define ulocdata_getDelimiter U_ICU_ENTRY_POINT_RENAME(ulocdata_getDelimiter)
34025 #define ulocdata_getExemplarSet U_ICU_ENTRY_POINT_RENAME(ulocdata_getExemplarSet)
34026 #define ulocdata_getLocaleDisplayPattern U_ICU_ENTRY_POINT_RENAME(ulocdata_getLocaleDisplayPattern)
34027 #define ulocdata_getLocaleSeparator U_ICU_ENTRY_POINT_RENAME(ulocdata_getLocaleSeparator)
34028 #define ulocdata_getMeasurementSystem U_ICU_ENTRY_POINT_RENAME(ulocdata_getMeasurementSystem)
34029 #define ulocdata_getNoSubstitute U_ICU_ENTRY_POINT_RENAME(ulocdata_getNoSubstitute)
34030 #define ulocdata_getPaperSize U_ICU_ENTRY_POINT_RENAME(ulocdata_getPaperSize)
34031 #define ulocdata_open U_ICU_ENTRY_POINT_RENAME(ulocdata_open)
34032 #define ulocdata_setNoSubstitute U_ICU_ENTRY_POINT_RENAME(ulocdata_setNoSubstitute)
34033 #define ulocimp_getCountry U_ICU_ENTRY_POINT_RENAME(ulocimp_getCountry)
34034 #define ulocimp_getLanguage U_ICU_ENTRY_POINT_RENAME(ulocimp_getLanguage)
34035 #define ulocimp_getScript U_ICU_ENTRY_POINT_RENAME(ulocimp_getScript)
34036 #define umsg_applyPattern U_ICU_ENTRY_POINT_RENAME(umsg_applyPattern)
34037 #define umsg_autoQuoteApostrophe U_ICU_ENTRY_POINT_RENAME(umsg_autoQuoteApostrophe)
34038 #define umsg_clone U_ICU_ENTRY_POINT_RENAME(umsg_clone)
34039 #define umsg_close U_ICU_ENTRY_POINT_RENAME(umsg_close)
34040 #define umsg_format U_ICU_ENTRY_POINT_RENAME(umsg_format)
34041 #define umsg_getLocale U_ICU_ENTRY_POINT_RENAME(umsg_getLocale)
34042 #define umsg_open U_ICU_ENTRY_POINT_RENAME(umsg_open)
34043 #define umsg_parse U_ICU_ENTRY_POINT_RENAME(umsg_parse)
34044 #define umsg_setLocale U_ICU_ENTRY_POINT_RENAME(umsg_setLocale)
34045 #define umsg_toPattern U_ICU_ENTRY_POINT_RENAME(umsg_toPattern)
34046 #define umsg_vformat U_ICU_ENTRY_POINT_RENAME(umsg_vformat)
34047 #define umsg_vparse U_ICU_ENTRY_POINT_RENAME(umsg_vparse)
34048 #define umtx_atomic_dec U_ICU_ENTRY_POINT_RENAME(umtx_atomic_dec)
34049 #define umtx_atomic_inc U_ICU_ENTRY_POINT_RENAME(umtx_atomic_inc)
34050 #define umtx_cleanup U_ICU_ENTRY_POINT_RENAME(umtx_cleanup)
34051 #define umtx_destroy U_ICU_ENTRY_POINT_RENAME(umtx_destroy)
34052 #define umtx_init U_ICU_ENTRY_POINT_RENAME(umtx_init)
34053 #define umtx_lock U_ICU_ENTRY_POINT_RENAME(umtx_lock)
34054 #define umtx_unlock U_ICU_ENTRY_POINT_RENAME(umtx_unlock)
34055 #define uniset_getUnicode32Instance U_ICU_ENTRY_POINT_RENAME(uniset_getUnicode32Instance)
34056 #define unorm2_append U_ICU_ENTRY_POINT_RENAME(unorm2_append)
34057 #define unorm2_close U_ICU_ENTRY_POINT_RENAME(unorm2_close)
34058 #define unorm2_getDecomposition U_ICU_ENTRY_POINT_RENAME(unorm2_getDecomposition)
34059 #define unorm2_getInstance U_ICU_ENTRY_POINT_RENAME(unorm2_getInstance)
34060 #define unorm2_hasBoundaryAfter U_ICU_ENTRY_POINT_RENAME(unorm2_hasBoundaryAfter)
34061 #define unorm2_hasBoundaryBefore U_ICU_ENTRY_POINT_RENAME(unorm2_hasBoundaryBefore)
34062 #define unorm2_isInert U_ICU_ENTRY_POINT_RENAME(unorm2_isInert)
34063 #define unorm2_isNormalized U_ICU_ENTRY_POINT_RENAME(unorm2_isNormalized)
34064 #define unorm2_normalize U_ICU_ENTRY_POINT_RENAME(unorm2_normalize)
34065 #define unorm2_normalizeSecondAndAppend U_ICU_ENTRY_POINT_RENAME(unorm2_normalizeSecondAndAppend)
34066 #define unorm2_openFiltered U_ICU_ENTRY_POINT_RENAME(unorm2_openFiltered)
34067 #define unorm2_quickCheck U_ICU_ENTRY_POINT_RENAME(unorm2_quickCheck)
34068 #define unorm2_spanQuickCheckYes U_ICU_ENTRY_POINT_RENAME(unorm2_spanQuickCheckYes)
34069 #define unorm2_swap U_ICU_ENTRY_POINT_RENAME(unorm2_swap)
34070 #define unorm_closeIter U_ICU_ENTRY_POINT_RENAME(unorm_closeIter)
34071 #define unorm_compare U_ICU_ENTRY_POINT_RENAME(unorm_compare)
34072 #define unorm_concatenate U_ICU_ENTRY_POINT_RENAME(unorm_concatenate)
34073 #define unorm_getFCDTrieIndex U_ICU_ENTRY_POINT_RENAME(unorm_getFCDTrieIndex)
34074 #define unorm_getQuickCheck U_ICU_ENTRY_POINT_RENAME(unorm_getQuickCheck)
34075 #define unorm_isNormalized U_ICU_ENTRY_POINT_RENAME(unorm_isNormalized)
34076 #define unorm_isNormalizedWithOptions U_ICU_ENTRY_POINT_RENAME(unorm_isNormalizedWithOptions)
34077 #define unorm_next U_ICU_ENTRY_POINT_RENAME(unorm_next)
34078 #define unorm_normalize U_ICU_ENTRY_POINT_RENAME(unorm_normalize)
34079 #define unorm_openIter U_ICU_ENTRY_POINT_RENAME(unorm_openIter)
34080 #define unorm_previous U_ICU_ENTRY_POINT_RENAME(unorm_previous)
34081 #define unorm_quickCheck U_ICU_ENTRY_POINT_RENAME(unorm_quickCheck)
34082 #define unorm_quickCheckWithOptions U_ICU_ENTRY_POINT_RENAME(unorm_quickCheckWithOptions)
34083 #define unorm_setIter U_ICU_ENTRY_POINT_RENAME(unorm_setIter)
34084 #define unum_applyPattern U_ICU_ENTRY_POINT_RENAME(unum_applyPattern)
34085 #define unum_clone U_ICU_ENTRY_POINT_RENAME(unum_clone)
34086 #define unum_close U_ICU_ENTRY_POINT_RENAME(unum_close)
34087 #define unum_countAvailable U_ICU_ENTRY_POINT_RENAME(unum_countAvailable)
34088 #define unum_format U_ICU_ENTRY_POINT_RENAME(unum_format)
34089 #define unum_formatDecimal U_ICU_ENTRY_POINT_RENAME(unum_formatDecimal)
34090 #define unum_formatDouble U_ICU_ENTRY_POINT_RENAME(unum_formatDouble)
34091 #define unum_formatDoubleCurrency U_ICU_ENTRY_POINT_RENAME(unum_formatDoubleCurrency)
34092 #define unum_formatInt64 U_ICU_ENTRY_POINT_RENAME(unum_formatInt64)
34093 #define unum_getAttribute U_ICU_ENTRY_POINT_RENAME(unum_getAttribute)
34094 #define unum_getAvailable U_ICU_ENTRY_POINT_RENAME(unum_getAvailable)
34095 #define unum_getDoubleAttribute U_ICU_ENTRY_POINT_RENAME(unum_getDoubleAttribute)
34096 #define unum_getLocaleByType U_ICU_ENTRY_POINT_RENAME(unum_getLocaleByType)
34097 #define unum_getSymbol U_ICU_ENTRY_POINT_RENAME(unum_getSymbol)
34098 #define unum_getTextAttribute U_ICU_ENTRY_POINT_RENAME(unum_getTextAttribute)
34099 #define unum_open U_ICU_ENTRY_POINT_RENAME(unum_open)
34100 #define unum_parse U_ICU_ENTRY_POINT_RENAME(unum_parse)
34101 #define unum_parseDecimal U_ICU_ENTRY_POINT_RENAME(unum_parseDecimal)
34102 #define unum_parseDouble U_ICU_ENTRY_POINT_RENAME(unum_parseDouble)
34103 #define unum_parseDoubleCurrency U_ICU_ENTRY_POINT_RENAME(unum_parseDoubleCurrency)
34104 #define unum_parseInt64 U_ICU_ENTRY_POINT_RENAME(unum_parseInt64)
34105 #define unum_setAttribute U_ICU_ENTRY_POINT_RENAME(unum_setAttribute)
34106 #define unum_setDoubleAttribute U_ICU_ENTRY_POINT_RENAME(unum_setDoubleAttribute)
34107 #define unum_setSymbol U_ICU_ENTRY_POINT_RENAME(unum_setSymbol)
34108 #define unum_setTextAttribute U_ICU_ENTRY_POINT_RENAME(unum_setTextAttribute)
34109 #define unum_toPattern U_ICU_ENTRY_POINT_RENAME(unum_toPattern)
34110 #define uplrules_close U_ICU_ENTRY_POINT_RENAME(uplrules_close)
34111 #define uplrules_open U_ICU_ENTRY_POINT_RENAME(uplrules_open)
34112 #define uplrules_select U_ICU_ENTRY_POINT_RENAME(uplrules_select)
34113 #define uplug_closeLibrary U_ICU_ENTRY_POINT_RENAME(uplug_closeLibrary)
34114 #define uplug_findLibrary U_ICU_ENTRY_POINT_RENAME(uplug_findLibrary)
34115 #define uplug_getConfiguration U_ICU_ENTRY_POINT_RENAME(uplug_getConfiguration)
34116 #define uplug_getContext U_ICU_ENTRY_POINT_RENAME(uplug_getContext)
34117 #define uplug_getCurrentLevel U_ICU_ENTRY_POINT_RENAME(uplug_getCurrentLevel)
34118 #define uplug_getLibrary U_ICU_ENTRY_POINT_RENAME(uplug_getLibrary)
34119 #define uplug_getLibraryName U_ICU_ENTRY_POINT_RENAME(uplug_getLibraryName)
34120 #define uplug_getPlugInternal U_ICU_ENTRY_POINT_RENAME(uplug_getPlugInternal)
34121 #define uplug_getPlugLevel U_ICU_ENTRY_POINT_RENAME(uplug_getPlugLevel)
34122 #define uplug_getPlugLoadStatus U_ICU_ENTRY_POINT_RENAME(uplug_getPlugLoadStatus)
34123 #define uplug_getPlugName U_ICU_ENTRY_POINT_RENAME(uplug_getPlugName)
34124 #define uplug_getPluginFile U_ICU_ENTRY_POINT_RENAME(uplug_getPluginFile)
34125 #define uplug_getSymbolName U_ICU_ENTRY_POINT_RENAME(uplug_getSymbolName)
34126 #define uplug_init U_ICU_ENTRY_POINT_RENAME(uplug_init)
34127 #define uplug_loadPlugFromEntrypoint U_ICU_ENTRY_POINT_RENAME(uplug_loadPlugFromEntrypoint)
34128 #define uplug_loadPlugFromLibrary U_ICU_ENTRY_POINT_RENAME(uplug_loadPlugFromLibrary)
34129 #define uplug_nextPlug U_ICU_ENTRY_POINT_RENAME(uplug_nextPlug)
34130 #define uplug_openLibrary U_ICU_ENTRY_POINT_RENAME(uplug_openLibrary)
34131 #define uplug_removePlug U_ICU_ENTRY_POINT_RENAME(uplug_removePlug)
34132 #define uplug_setContext U_ICU_ENTRY_POINT_RENAME(uplug_setContext)
34133 #define uplug_setPlugLevel U_ICU_ENTRY_POINT_RENAME(uplug_setPlugLevel)
34134 #define uplug_setPlugName U_ICU_ENTRY_POINT_RENAME(uplug_setPlugName)
34135 #define uplug_setPlugNoUnload U_ICU_ENTRY_POINT_RENAME(uplug_setPlugNoUnload)
34136 #define uprops_getSource U_ICU_ENTRY_POINT_RENAME(uprops_getSource)
34137 #define upropsvec_addPropertyStarts U_ICU_ENTRY_POINT_RENAME(upropsvec_addPropertyStarts)
34138 #define uprv_aestrncpy U_ICU_ENTRY_POINT_RENAME(uprv_aestrncpy)
34139 #define uprv_asciiFromEbcdic U_ICU_ENTRY_POINT_RENAME(uprv_asciiFromEbcdic)
34140 #define uprv_asciitolower U_ICU_ENTRY_POINT_RENAME(uprv_asciitolower)
34141 #define uprv_ceil U_ICU_ENTRY_POINT_RENAME(uprv_ceil)
34142 #define uprv_cnttab_addContraction U_ICU_ENTRY_POINT_RENAME(uprv_cnttab_addContraction)
34143 #define uprv_cnttab_changeContraction U_ICU_ENTRY_POINT_RENAME(uprv_cnttab_changeContraction)
34144 #define uprv_cnttab_changeLastCE U_ICU_ENTRY_POINT_RENAME(uprv_cnttab_changeLastCE)
34145 #define uprv_cnttab_clone U_ICU_ENTRY_POINT_RENAME(uprv_cnttab_clone)
34146 #define uprv_cnttab_close U_ICU_ENTRY_POINT_RENAME(uprv_cnttab_close)
34147 #define uprv_cnttab_constructTable U_ICU_ENTRY_POINT_RENAME(uprv_cnttab_constructTable)
34148 #define uprv_cnttab_findCE U_ICU_ENTRY_POINT_RENAME(uprv_cnttab_findCE)
34149 #define uprv_cnttab_findCP U_ICU_ENTRY_POINT_RENAME(uprv_cnttab_findCP)
34150 #define uprv_cnttab_getCE U_ICU_ENTRY_POINT_RENAME(uprv_cnttab_getCE)
34151 #define uprv_cnttab_insertContraction U_ICU_ENTRY_POINT_RENAME(uprv_cnttab_insertContraction)
34152 #define uprv_cnttab_isTailored U_ICU_ENTRY_POINT_RENAME(uprv_cnttab_isTailored)
34153 #define uprv_cnttab_open U_ICU_ENTRY_POINT_RENAME(uprv_cnttab_open)
34154 #define uprv_cnttab_setContraction U_ICU_ENTRY_POINT_RENAME(uprv_cnttab_setContraction)
34155 #define uprv_collIterateAtEnd U_ICU_ENTRY_POINT_RENAME(uprv_collIterateAtEnd)
34156 #define uprv_compareASCIIPropertyNames U_ICU_ENTRY_POINT_RENAME(uprv_compareASCIIPropertyNames)
34157 #define uprv_compareEBCDICPropertyNames U_ICU_ENTRY_POINT_RENAME(uprv_compareEBCDICPropertyNames)
34158 #define uprv_compareInvAscii U_ICU_ENTRY_POINT_RENAME(uprv_compareInvAscii)
34159 #define uprv_compareInvEbcdic U_ICU_ENTRY_POINT_RENAME(uprv_compareInvEbcdic)
34160 #define uprv_compareInvEbcdicAsAscii U_ICU_ENTRY_POINT_RENAME(uprv_compareInvEbcdicAsAscii)
34161 #define uprv_convertToLCID U_ICU_ENTRY_POINT_RENAME(uprv_convertToLCID)
34162 #define uprv_convertToPosix U_ICU_ENTRY_POINT_RENAME(uprv_convertToPosix)
34163 #define uprv_copyAscii U_ICU_ENTRY_POINT_RENAME(uprv_copyAscii)
34164 #define uprv_copyEbcdic U_ICU_ENTRY_POINT_RENAME(uprv_copyEbcdic)
34165 #define uprv_decContextClearStatus U_ICU_ENTRY_POINT_RENAME(uprv_decContextClearStatus)
34166 #define uprv_decContextDefault U_ICU_ENTRY_POINT_RENAME(uprv_decContextDefault)
34167 #define uprv_decContextGetRounding U_ICU_ENTRY_POINT_RENAME(uprv_decContextGetRounding)
34168 #define uprv_decContextGetStatus U_ICU_ENTRY_POINT_RENAME(uprv_decContextGetStatus)
34169 #define uprv_decContextRestoreStatus U_ICU_ENTRY_POINT_RENAME(uprv_decContextRestoreStatus)
34170 #define uprv_decContextSaveStatus U_ICU_ENTRY_POINT_RENAME(uprv_decContextSaveStatus)
34171 #define uprv_decContextSetRounding U_ICU_ENTRY_POINT_RENAME(uprv_decContextSetRounding)
34172 #define uprv_decContextSetStatus U_ICU_ENTRY_POINT_RENAME(uprv_decContextSetStatus)
34173 #define uprv_decContextSetStatusFromString U_ICU_ENTRY_POINT_RENAME(uprv_decContextSetStatusFromString)
34174 #define uprv_decContextSetStatusFromStringQuiet U_ICU_ENTRY_POINT_RENAME(uprv_decContextSetStatusFromStringQuiet)
34175 #define uprv_decContextSetStatusQuiet U_ICU_ENTRY_POINT_RENAME(uprv_decContextSetStatusQuiet)
34176 #define uprv_decContextStatusToString U_ICU_ENTRY_POINT_RENAME(uprv_decContextStatusToString)
34177 #define uprv_decContextTestEndian U_ICU_ENTRY_POINT_RENAME(uprv_decContextTestEndian)
34178 #define uprv_decContextTestSavedStatus U_ICU_ENTRY_POINT_RENAME(uprv_decContextTestSavedStatus)
34179 #define uprv_decContextTestStatus U_ICU_ENTRY_POINT_RENAME(uprv_decContextTestStatus)
34180 #define uprv_decContextZeroStatus U_ICU_ENTRY_POINT_RENAME(uprv_decContextZeroStatus)
34181 #define uprv_decNumberAbs U_ICU_ENTRY_POINT_RENAME(uprv_decNumberAbs)
34182 #define uprv_decNumberAdd U_ICU_ENTRY_POINT_RENAME(uprv_decNumberAdd)
34183 #define uprv_decNumberAnd U_ICU_ENTRY_POINT_RENAME(uprv_decNumberAnd)
34184 #define uprv_decNumberClass U_ICU_ENTRY_POINT_RENAME(uprv_decNumberClass)
34185 #define uprv_decNumberClassToString U_ICU_ENTRY_POINT_RENAME(uprv_decNumberClassToString)
34186 #define uprv_decNumberCompare U_ICU_ENTRY_POINT_RENAME(uprv_decNumberCompare)
34187 #define uprv_decNumberCompareSignal U_ICU_ENTRY_POINT_RENAME(uprv_decNumberCompareSignal)
34188 #define uprv_decNumberCompareTotal U_ICU_ENTRY_POINT_RENAME(uprv_decNumberCompareTotal)
34189 #define uprv_decNumberCompareTotalMag U_ICU_ENTRY_POINT_RENAME(uprv_decNumberCompareTotalMag)
34190 #define uprv_decNumberCopy U_ICU_ENTRY_POINT_RENAME(uprv_decNumberCopy)
34191 #define uprv_decNumberCopyAbs U_ICU_ENTRY_POINT_RENAME(uprv_decNumberCopyAbs)
34192 #define uprv_decNumberCopyNegate U_ICU_ENTRY_POINT_RENAME(uprv_decNumberCopyNegate)
34193 #define uprv_decNumberCopySign U_ICU_ENTRY_POINT_RENAME(uprv_decNumberCopySign)
34194 #define uprv_decNumberDivide U_ICU_ENTRY_POINT_RENAME(uprv_decNumberDivide)
34195 #define uprv_decNumberDivideInteger U_ICU_ENTRY_POINT_RENAME(uprv_decNumberDivideInteger)
34196 #define uprv_decNumberExp U_ICU_ENTRY_POINT_RENAME(uprv_decNumberExp)
34197 #define uprv_decNumberFMA U_ICU_ENTRY_POINT_RENAME(uprv_decNumberFMA)
34198 #define uprv_decNumberFromInt32 U_ICU_ENTRY_POINT_RENAME(uprv_decNumberFromInt32)
34199 #define uprv_decNumberFromString U_ICU_ENTRY_POINT_RENAME(uprv_decNumberFromString)
34200 #define uprv_decNumberFromUInt32 U_ICU_ENTRY_POINT_RENAME(uprv_decNumberFromUInt32)
34201 #define uprv_decNumberGetBCD U_ICU_ENTRY_POINT_RENAME(uprv_decNumberGetBCD)
34202 #define uprv_decNumberInvert U_ICU_ENTRY_POINT_RENAME(uprv_decNumberInvert)
34203 #define uprv_decNumberIsNormal U_ICU_ENTRY_POINT_RENAME(uprv_decNumberIsNormal)
34204 #define uprv_decNumberIsSubnormal U_ICU_ENTRY_POINT_RENAME(uprv_decNumberIsSubnormal)
34205 #define uprv_decNumberLn U_ICU_ENTRY_POINT_RENAME(uprv_decNumberLn)
34206 #define uprv_decNumberLog10 U_ICU_ENTRY_POINT_RENAME(uprv_decNumberLog10)
34207 #define uprv_decNumberLogB U_ICU_ENTRY_POINT_RENAME(uprv_decNumberLogB)
34208 #define uprv_decNumberMax U_ICU_ENTRY_POINT_RENAME(uprv_decNumberMax)
34209 #define uprv_decNumberMaxMag U_ICU_ENTRY_POINT_RENAME(uprv_decNumberMaxMag)
34210 #define uprv_decNumberMin U_ICU_ENTRY_POINT_RENAME(uprv_decNumberMin)
34211 #define uprv_decNumberMinMag U_ICU_ENTRY_POINT_RENAME(uprv_decNumberMinMag)
34212 #define uprv_decNumberMinus U_ICU_ENTRY_POINT_RENAME(uprv_decNumberMinus)
34213 #define uprv_decNumberMultiply U_ICU_ENTRY_POINT_RENAME(uprv_decNumberMultiply)
34214 #define uprv_decNumberNextMinus U_ICU_ENTRY_POINT_RENAME(uprv_decNumberNextMinus)
34215 #define uprv_decNumberNextPlus U_ICU_ENTRY_POINT_RENAME(uprv_decNumberNextPlus)
34216 #define uprv_decNumberNextToward U_ICU_ENTRY_POINT_RENAME(uprv_decNumberNextToward)
34217 #define uprv_decNumberNormalize U_ICU_ENTRY_POINT_RENAME(uprv_decNumberNormalize)
34218 #define uprv_decNumberOr U_ICU_ENTRY_POINT_RENAME(uprv_decNumberOr)
34219 #define uprv_decNumberPlus U_ICU_ENTRY_POINT_RENAME(uprv_decNumberPlus)
34220 #define uprv_decNumberPower U_ICU_ENTRY_POINT_RENAME(uprv_decNumberPower)
34221 #define uprv_decNumberQuantize U_ICU_ENTRY_POINT_RENAME(uprv_decNumberQuantize)
34222 #define uprv_decNumberReduce U_ICU_ENTRY_POINT_RENAME(uprv_decNumberReduce)
34223 #define uprv_decNumberRemainder U_ICU_ENTRY_POINT_RENAME(uprv_decNumberRemainder)
34224 #define uprv_decNumberRemainderNear U_ICU_ENTRY_POINT_RENAME(uprv_decNumberRemainderNear)
34225 #define uprv_decNumberRescale U_ICU_ENTRY_POINT_RENAME(uprv_decNumberRescale)
34226 #define uprv_decNumberRotate U_ICU_ENTRY_POINT_RENAME(uprv_decNumberRotate)
34227 #define uprv_decNumberSameQuantum U_ICU_ENTRY_POINT_RENAME(uprv_decNumberSameQuantum)
34228 #define uprv_decNumberScaleB U_ICU_ENTRY_POINT_RENAME(uprv_decNumberScaleB)
34229 #define uprv_decNumberSetBCD U_ICU_ENTRY_POINT_RENAME(uprv_decNumberSetBCD)
34230 #define uprv_decNumberShift U_ICU_ENTRY_POINT_RENAME(uprv_decNumberShift)
34231 #define uprv_decNumberSquareRoot U_ICU_ENTRY_POINT_RENAME(uprv_decNumberSquareRoot)
34232 #define uprv_decNumberSubtract U_ICU_ENTRY_POINT_RENAME(uprv_decNumberSubtract)
34233 #define uprv_decNumberToEngString U_ICU_ENTRY_POINT_RENAME(uprv_decNumberToEngString)
34234 #define uprv_decNumberToInt32 U_ICU_ENTRY_POINT_RENAME(uprv_decNumberToInt32)
34235 #define uprv_decNumberToIntegralExact U_ICU_ENTRY_POINT_RENAME(uprv_decNumberToIntegralExact)
34236 #define uprv_decNumberToIntegralValue U_ICU_ENTRY_POINT_RENAME(uprv_decNumberToIntegralValue)
34237 #define uprv_decNumberToString U_ICU_ENTRY_POINT_RENAME(uprv_decNumberToString)
34238 #define uprv_decNumberToUInt32 U_ICU_ENTRY_POINT_RENAME(uprv_decNumberToUInt32)
34239 #define uprv_decNumberTrim U_ICU_ENTRY_POINT_RENAME(uprv_decNumberTrim)
34240 #define uprv_decNumberVersion U_ICU_ENTRY_POINT_RENAME(uprv_decNumberVersion)
34241 #define uprv_decNumberXor U_ICU_ENTRY_POINT_RENAME(uprv_decNumberXor)
34242 #define uprv_decNumberZero U_ICU_ENTRY_POINT_RENAME(uprv_decNumberZero)
34243 #define uprv_delete_collIterate U_ICU_ENTRY_POINT_RENAME(uprv_delete_collIterate)
34244 #define uprv_dl_close U_ICU_ENTRY_POINT_RENAME(uprv_dl_close)
34245 #define uprv_dl_open U_ICU_ENTRY_POINT_RENAME(uprv_dl_open)
34246 #define uprv_dlsym_func U_ICU_ENTRY_POINT_RENAME(uprv_dlsym_func)
34247 #define uprv_eastrncpy U_ICU_ENTRY_POINT_RENAME(uprv_eastrncpy)
34248 #define uprv_ebcdicFromAscii U_ICU_ENTRY_POINT_RENAME(uprv_ebcdicFromAscii)
34249 #define uprv_ebcdicToLowercaseAscii U_ICU_ENTRY_POINT_RENAME(uprv_ebcdicToLowercaseAscii)
34250 #define uprv_ebcdictolower U_ICU_ENTRY_POINT_RENAME(uprv_ebcdictolower)
34251 #define uprv_fabs U_ICU_ENTRY_POINT_RENAME(uprv_fabs)
34252 #define uprv_floor U_ICU_ENTRY_POINT_RENAME(uprv_floor)
34253 #define uprv_fmax U_ICU_ENTRY_POINT_RENAME(uprv_fmax)
34254 #define uprv_fmin U_ICU_ENTRY_POINT_RENAME(uprv_fmin)
34255 #define uprv_fmod U_ICU_ENTRY_POINT_RENAME(uprv_fmod)
34256 #define uprv_free U_ICU_ENTRY_POINT_RENAME(uprv_free)
34257 #define uprv_getCharNameCharacters U_ICU_ENTRY_POINT_RENAME(uprv_getCharNameCharacters)
34258 #define uprv_getDefaultCodepage U_ICU_ENTRY_POINT_RENAME(uprv_getDefaultCodepage)
34259 #define uprv_getDefaultLocaleID U_ICU_ENTRY_POINT_RENAME(uprv_getDefaultLocaleID)
34260 #define uprv_getInfinity U_ICU_ENTRY_POINT_RENAME(uprv_getInfinity)
34261 #define uprv_getMaxCharNameLength U_ICU_ENTRY_POINT_RENAME(uprv_getMaxCharNameLength)
34262 #define uprv_getMaxValues U_ICU_ENTRY_POINT_RENAME(uprv_getMaxValues)
34263 #define uprv_getNaN U_ICU_ENTRY_POINT_RENAME(uprv_getNaN)
34264 #define uprv_getRawUTCtime U_ICU_ENTRY_POINT_RENAME(uprv_getRawUTCtime)
34265 #define uprv_getStaticCurrencyName U_ICU_ENTRY_POINT_RENAME(uprv_getStaticCurrencyName)
34266 #define uprv_getUTCtime U_ICU_ENTRY_POINT_RENAME(uprv_getUTCtime)
34267 #define uprv_haveProperties U_ICU_ENTRY_POINT_RENAME(uprv_haveProperties)
34268 #define uprv_init_collIterate U_ICU_ENTRY_POINT_RENAME(uprv_init_collIterate)
34269 #define uprv_init_pce U_ICU_ENTRY_POINT_RENAME(uprv_init_pce)
34270 #define uprv_int32Comparator U_ICU_ENTRY_POINT_RENAME(uprv_int32Comparator)
34271 #define uprv_isInfinite U_ICU_ENTRY_POINT_RENAME(uprv_isInfinite)
34272 #define uprv_isInvariantString U_ICU_ENTRY_POINT_RENAME(uprv_isInvariantString)
34273 #define uprv_isInvariantUString U_ICU_ENTRY_POINT_RENAME(uprv_isInvariantUString)
34274 #define uprv_isNaN U_ICU_ENTRY_POINT_RENAME(uprv_isNaN)
34275 #define uprv_isNegativeInfinity U_ICU_ENTRY_POINT_RENAME(uprv_isNegativeInfinity)
34276 #define uprv_isPositiveInfinity U_ICU_ENTRY_POINT_RENAME(uprv_isPositiveInfinity)
34277 #define uprv_itou U_ICU_ENTRY_POINT_RENAME(uprv_itou)
34278 #define uprv_log U_ICU_ENTRY_POINT_RENAME(uprv_log)
34279 #define uprv_malloc U_ICU_ENTRY_POINT_RENAME(uprv_malloc)
34280 #define uprv_mapFile U_ICU_ENTRY_POINT_RENAME(uprv_mapFile)
34281 #define uprv_max U_ICU_ENTRY_POINT_RENAME(uprv_max)
34282 #define uprv_maxMantissa U_ICU_ENTRY_POINT_RENAME(uprv_maxMantissa)
34283 #define uprv_maximumPtr U_ICU_ENTRY_POINT_RENAME(uprv_maximumPtr)
34284 #define uprv_min U_ICU_ENTRY_POINT_RENAME(uprv_min)
34285 #define uprv_modf U_ICU_ENTRY_POINT_RENAME(uprv_modf)
34286 #define uprv_new_collIterate U_ICU_ENTRY_POINT_RENAME(uprv_new_collIterate)
34287 #define uprv_openPatternWhiteSpaceSet U_ICU_ENTRY_POINT_RENAME(uprv_openPatternWhiteSpaceSet)
34288 #define uprv_parseCurrency U_ICU_ENTRY_POINT_RENAME(uprv_parseCurrency)
34289 #define uprv_pathIsAbsolute U_ICU_ENTRY_POINT_RENAME(uprv_pathIsAbsolute)
34290 #define uprv_pow U_ICU_ENTRY_POINT_RENAME(uprv_pow)
34291 #define uprv_pow10 U_ICU_ENTRY_POINT_RENAME(uprv_pow10)
34292 #define uprv_realloc U_ICU_ENTRY_POINT_RENAME(uprv_realloc)
34293 #define uprv_round U_ICU_ENTRY_POINT_RENAME(uprv_round)
34294 #define uprv_sortArray U_ICU_ENTRY_POINT_RENAME(uprv_sortArray)
34295 #define uprv_strCompare U_ICU_ENTRY_POINT_RENAME(uprv_strCompare)
34296 #define uprv_strdup U_ICU_ENTRY_POINT_RENAME(uprv_strdup)
34297 #define uprv_strndup U_ICU_ENTRY_POINT_RENAME(uprv_strndup)
34298 #define uprv_syntaxError U_ICU_ENTRY_POINT_RENAME(uprv_syntaxError)
34299 #define uprv_timezone U_ICU_ENTRY_POINT_RENAME(uprv_timezone)
34300 #define uprv_toupper U_ICU_ENTRY_POINT_RENAME(uprv_toupper)
34301 #define uprv_trunc U_ICU_ENTRY_POINT_RENAME(uprv_trunc)
34302 #define uprv_tzname U_ICU_ENTRY_POINT_RENAME(uprv_tzname)
34303 #define uprv_tzset U_ICU_ENTRY_POINT_RENAME(uprv_tzset)
34304 #define uprv_uca_addAnElement U_ICU_ENTRY_POINT_RENAME(uprv_uca_addAnElement)
34305 #define uprv_uca_assembleTable U_ICU_ENTRY_POINT_RENAME(uprv_uca_assembleTable)
34306 #define uprv_uca_canonicalClosure U_ICU_ENTRY_POINT_RENAME(uprv_uca_canonicalClosure)
34307 #define uprv_uca_closeTempTable U_ICU_ENTRY_POINT_RENAME(uprv_uca_closeTempTable)
34308 #define uprv_uca_getCodePointFromRaw U_ICU_ENTRY_POINT_RENAME(uprv_uca_getCodePointFromRaw)
34309 #define uprv_uca_getImplicitFromRaw U_ICU_ENTRY_POINT_RENAME(uprv_uca_getImplicitFromRaw)
34310 #define uprv_uca_getRawFromCodePoint U_ICU_ENTRY_POINT_RENAME(uprv_uca_getRawFromCodePoint)
34311 #define uprv_uca_getRawFromImplicit U_ICU_ENTRY_POINT_RENAME(uprv_uca_getRawFromImplicit)
34312 #define uprv_uca_initImplicitConstants U_ICU_ENTRY_POINT_RENAME(uprv_uca_initImplicitConstants)
34313 #define uprv_uca_initTempTable U_ICU_ENTRY_POINT_RENAME(uprv_uca_initTempTable)
34314 #define uprv_uint16Comparator U_ICU_ENTRY_POINT_RENAME(uprv_uint16Comparator)
34315 #define uprv_uint32Comparator U_ICU_ENTRY_POINT_RENAME(uprv_uint32Comparator)
34316 #define uprv_unmapFile U_ICU_ENTRY_POINT_RENAME(uprv_unmapFile)
34317 #define upvec_cloneArray U_ICU_ENTRY_POINT_RENAME(upvec_cloneArray)
34318 #define upvec_close U_ICU_ENTRY_POINT_RENAME(upvec_close)
34319 #define upvec_compact U_ICU_ENTRY_POINT_RENAME(upvec_compact)
34320 #define upvec_compactToUTrie2Handler U_ICU_ENTRY_POINT_RENAME(upvec_compactToUTrie2Handler)
34321 #define upvec_compactToUTrie2WithRowIndexes U_ICU_ENTRY_POINT_RENAME(upvec_compactToUTrie2WithRowIndexes)
34322 #define upvec_getArray U_ICU_ENTRY_POINT_RENAME(upvec_getArray)
34323 #define upvec_getRow U_ICU_ENTRY_POINT_RENAME(upvec_getRow)
34324 #define upvec_getValue U_ICU_ENTRY_POINT_RENAME(upvec_getValue)
34325 #define upvec_open U_ICU_ENTRY_POINT_RENAME(upvec_open)
34326 #define upvec_setValue U_ICU_ENTRY_POINT_RENAME(upvec_setValue)
34327 #define uregex_appendReplacement U_ICU_ENTRY_POINT_RENAME(uregex_appendReplacement)
34328 #define uregex_appendReplacementUText U_ICU_ENTRY_POINT_RENAME(uregex_appendReplacementUText)
34329 #define uregex_appendTail U_ICU_ENTRY_POINT_RENAME(uregex_appendTail)
34330 #define uregex_appendTailUText U_ICU_ENTRY_POINT_RENAME(uregex_appendTailUText)
34331 #define uregex_clone U_ICU_ENTRY_POINT_RENAME(uregex_clone)
34332 #define uregex_close U_ICU_ENTRY_POINT_RENAME(uregex_close)
34333 #define uregex_end U_ICU_ENTRY_POINT_RENAME(uregex_end)
34334 #define uregex_end64 U_ICU_ENTRY_POINT_RENAME(uregex_end64)
34335 #define uregex_find U_ICU_ENTRY_POINT_RENAME(uregex_find)
34336 #define uregex_find64 U_ICU_ENTRY_POINT_RENAME(uregex_find64)
34337 #define uregex_findNext U_ICU_ENTRY_POINT_RENAME(uregex_findNext)
34338 #define uregex_flags U_ICU_ENTRY_POINT_RENAME(uregex_flags)
34339 #define uregex_getFindProgressCallback U_ICU_ENTRY_POINT_RENAME(uregex_getFindProgressCallback)
34340 #define uregex_getMatchCallback U_ICU_ENTRY_POINT_RENAME(uregex_getMatchCallback)
34341 #define uregex_getStackLimit U_ICU_ENTRY_POINT_RENAME(uregex_getStackLimit)
34342 #define uregex_getText U_ICU_ENTRY_POINT_RENAME(uregex_getText)
34343 #define uregex_getTimeLimit U_ICU_ENTRY_POINT_RENAME(uregex_getTimeLimit)
34344 #define uregex_getUText U_ICU_ENTRY_POINT_RENAME(uregex_getUText)
34345 #define uregex_group U_ICU_ENTRY_POINT_RENAME(uregex_group)
34346 #define uregex_groupCount U_ICU_ENTRY_POINT_RENAME(uregex_groupCount)
34347 #define uregex_groupUText U_ICU_ENTRY_POINT_RENAME(uregex_groupUText)
34348 #define uregex_groupUTextDeep U_ICU_ENTRY_POINT_RENAME(uregex_groupUTextDeep)
34349 #define uregex_hasAnchoringBounds U_ICU_ENTRY_POINT_RENAME(uregex_hasAnchoringBounds)
34350 #define uregex_hasTransparentBounds U_ICU_ENTRY_POINT_RENAME(uregex_hasTransparentBounds)
34351 #define uregex_hitEnd U_ICU_ENTRY_POINT_RENAME(uregex_hitEnd)
34352 #define uregex_lookingAt U_ICU_ENTRY_POINT_RENAME(uregex_lookingAt)
34353 #define uregex_lookingAt64 U_ICU_ENTRY_POINT_RENAME(uregex_lookingAt64)
34354 #define uregex_matches U_ICU_ENTRY_POINT_RENAME(uregex_matches)
34355 #define uregex_matches64 U_ICU_ENTRY_POINT_RENAME(uregex_matches64)
34356 #define uregex_open U_ICU_ENTRY_POINT_RENAME(uregex_open)
34357 #define uregex_openC U_ICU_ENTRY_POINT_RENAME(uregex_openC)
34358 #define uregex_openUText U_ICU_ENTRY_POINT_RENAME(uregex_openUText)
34359 #define uregex_pattern U_ICU_ENTRY_POINT_RENAME(uregex_pattern)
34360 #define uregex_patternUText U_ICU_ENTRY_POINT_RENAME(uregex_patternUText)
34361 #define uregex_refreshUText U_ICU_ENTRY_POINT_RENAME(uregex_refreshUText)
34362 #define uregex_regionEnd U_ICU_ENTRY_POINT_RENAME(uregex_regionEnd)
34363 #define uregex_regionEnd64 U_ICU_ENTRY_POINT_RENAME(uregex_regionEnd64)
34364 #define uregex_regionStart U_ICU_ENTRY_POINT_RENAME(uregex_regionStart)
34365 #define uregex_regionStart64 U_ICU_ENTRY_POINT_RENAME(uregex_regionStart64)
34366 #define uregex_replaceAll U_ICU_ENTRY_POINT_RENAME(uregex_replaceAll)
34367 #define uregex_replaceAllUText U_ICU_ENTRY_POINT_RENAME(uregex_replaceAllUText)
34368 #define uregex_replaceFirst U_ICU_ENTRY_POINT_RENAME(uregex_replaceFirst)
34369 #define uregex_replaceFirstUText U_ICU_ENTRY_POINT_RENAME(uregex_replaceFirstUText)
34370 #define uregex_requireEnd U_ICU_ENTRY_POINT_RENAME(uregex_requireEnd)
34371 #define uregex_reset U_ICU_ENTRY_POINT_RENAME(uregex_reset)
34372 #define uregex_reset64 U_ICU_ENTRY_POINT_RENAME(uregex_reset64)
34373 #define uregex_setFindProgressCallback U_ICU_ENTRY_POINT_RENAME(uregex_setFindProgressCallback)
34374 #define uregex_setMatchCallback U_ICU_ENTRY_POINT_RENAME(uregex_setMatchCallback)
34375 #define uregex_setRegion U_ICU_ENTRY_POINT_RENAME(uregex_setRegion)
34376 #define uregex_setRegion64 U_ICU_ENTRY_POINT_RENAME(uregex_setRegion64)
34377 #define uregex_setRegionAndStart U_ICU_ENTRY_POINT_RENAME(uregex_setRegionAndStart)
34378 #define uregex_setStackLimit U_ICU_ENTRY_POINT_RENAME(uregex_setStackLimit)
34379 #define uregex_setText U_ICU_ENTRY_POINT_RENAME(uregex_setText)
34380 #define uregex_setTimeLimit U_ICU_ENTRY_POINT_RENAME(uregex_setTimeLimit)
34381 #define uregex_setUText U_ICU_ENTRY_POINT_RENAME(uregex_setUText)
34382 #define uregex_split U_ICU_ENTRY_POINT_RENAME(uregex_split)
34383 #define uregex_splitUText U_ICU_ENTRY_POINT_RENAME(uregex_splitUText)
34384 #define uregex_start U_ICU_ENTRY_POINT_RENAME(uregex_start)
34385 #define uregex_start64 U_ICU_ENTRY_POINT_RENAME(uregex_start64)
34386 #define uregex_ucstr_unescape_charAt U_ICU_ENTRY_POINT_RENAME(uregex_ucstr_unescape_charAt)
34387 #define uregex_useAnchoringBounds U_ICU_ENTRY_POINT_RENAME(uregex_useAnchoringBounds)
34388 #define uregex_useTransparentBounds U_ICU_ENTRY_POINT_RENAME(uregex_useTransparentBounds)
34389 #define uregex_utext_unescape_charAt U_ICU_ENTRY_POINT_RENAME(uregex_utext_unescape_charAt)
34390 #define ures_close U_ICU_ENTRY_POINT_RENAME(ures_close)
34391 #define ures_copyResb U_ICU_ENTRY_POINT_RENAME(ures_copyResb)
34392 #define ures_countArrayItems U_ICU_ENTRY_POINT_RENAME(ures_countArrayItems)
34393 #define ures_findResource U_ICU_ENTRY_POINT_RENAME(ures_findResource)
34394 #define ures_findSubResource U_ICU_ENTRY_POINT_RENAME(ures_findSubResource)
34395 #define ures_getBinary U_ICU_ENTRY_POINT_RENAME(ures_getBinary)
34396 #define ures_getByIndex U_ICU_ENTRY_POINT_RENAME(ures_getByIndex)
34397 #define ures_getByKey U_ICU_ENTRY_POINT_RENAME(ures_getByKey)
34398 #define ures_getByKeyWithFallback U_ICU_ENTRY_POINT_RENAME(ures_getByKeyWithFallback)
34399 #define ures_getFunctionalEquivalent U_ICU_ENTRY_POINT_RENAME(ures_getFunctionalEquivalent)
34400 #define ures_getInt U_ICU_ENTRY_POINT_RENAME(ures_getInt)
34401 #define ures_getIntVector U_ICU_ENTRY_POINT_RENAME(ures_getIntVector)
34402 #define ures_getKey U_ICU_ENTRY_POINT_RENAME(ures_getKey)
34403 #define ures_getKeywordValues U_ICU_ENTRY_POINT_RENAME(ures_getKeywordValues)
34404 #define ures_getLocale U_ICU_ENTRY_POINT_RENAME(ures_getLocale)
34405 #define ures_getLocaleByType U_ICU_ENTRY_POINT_RENAME(ures_getLocaleByType)
34406 #define ures_getLocaleInternal U_ICU_ENTRY_POINT_RENAME(ures_getLocaleInternal)
34407 #define ures_getName U_ICU_ENTRY_POINT_RENAME(ures_getName)
34408 #define ures_getNextResource U_ICU_ENTRY_POINT_RENAME(ures_getNextResource)
34409 #define ures_getNextString U_ICU_ENTRY_POINT_RENAME(ures_getNextString)
34410 #define ures_getSize U_ICU_ENTRY_POINT_RENAME(ures_getSize)
34411 #define ures_getString U_ICU_ENTRY_POINT_RENAME(ures_getString)
34412 #define ures_getStringByIndex U_ICU_ENTRY_POINT_RENAME(ures_getStringByIndex)
34413 #define ures_getStringByKey U_ICU_ENTRY_POINT_RENAME(ures_getStringByKey)
34414 #define ures_getStringByKeyWithFallback U_ICU_ENTRY_POINT_RENAME(ures_getStringByKeyWithFallback)
34415 #define ures_getType U_ICU_ENTRY_POINT_RENAME(ures_getType)
34416 #define ures_getUInt U_ICU_ENTRY_POINT_RENAME(ures_getUInt)
34417 #define ures_getUTF8String U_ICU_ENTRY_POINT_RENAME(ures_getUTF8String)
34418 #define ures_getUTF8StringByIndex U_ICU_ENTRY_POINT_RENAME(ures_getUTF8StringByIndex)
34419 #define ures_getUTF8StringByKey U_ICU_ENTRY_POINT_RENAME(ures_getUTF8StringByKey)
34420 #define ures_getVersion U_ICU_ENTRY_POINT_RENAME(ures_getVersion)
34421 #define ures_getVersionByKey U_ICU_ENTRY_POINT_RENAME(ures_getVersionByKey)
34422 #define ures_getVersionNumber U_ICU_ENTRY_POINT_RENAME(ures_getVersionNumber)
34423 #define ures_getVersionNumberInternal U_ICU_ENTRY_POINT_RENAME(ures_getVersionNumberInternal)
34424 #define ures_hasNext U_ICU_ENTRY_POINT_RENAME(ures_hasNext)
34425 #define ures_initStackObject U_ICU_ENTRY_POINT_RENAME(ures_initStackObject)
34426 #define ures_open U_ICU_ENTRY_POINT_RENAME(ures_open)
34427 #define ures_openAvailableLocales U_ICU_ENTRY_POINT_RENAME(ures_openAvailableLocales)
34428 #define ures_openDirect U_ICU_ENTRY_POINT_RENAME(ures_openDirect)
34429 #define ures_openFillIn U_ICU_ENTRY_POINT_RENAME(ures_openFillIn)
34430 #define ures_openU U_ICU_ENTRY_POINT_RENAME(ures_openU)
34431 #define ures_resetIterator U_ICU_ENTRY_POINT_RENAME(ures_resetIterator)
34432 #define ures_swap U_ICU_ENTRY_POINT_RENAME(ures_swap)
34433 #define uscript_closeRun U_ICU_ENTRY_POINT_RENAME(uscript_closeRun)
34434 #define uscript_getCode U_ICU_ENTRY_POINT_RENAME(uscript_getCode)
34435 #define uscript_getName U_ICU_ENTRY_POINT_RENAME(uscript_getName)
34436 #define uscript_getScript U_ICU_ENTRY_POINT_RENAME(uscript_getScript)
34437 #define uscript_getScriptExtensions U_ICU_ENTRY_POINT_RENAME(uscript_getScriptExtensions)
34438 #define uscript_getShortName U_ICU_ENTRY_POINT_RENAME(uscript_getShortName)
34439 #define uscript_hasScript U_ICU_ENTRY_POINT_RENAME(uscript_hasScript)
34440 #define uscript_nextRun U_ICU_ENTRY_POINT_RENAME(uscript_nextRun)
34441 #define uscript_openRun U_ICU_ENTRY_POINT_RENAME(uscript_openRun)
34442 #define uscript_resetRun U_ICU_ENTRY_POINT_RENAME(uscript_resetRun)
34443 #define uscript_setRunText U_ICU_ENTRY_POINT_RENAME(uscript_setRunText)
34444 #define usearch_close U_ICU_ENTRY_POINT_RENAME(usearch_close)
34445 #define usearch_first U_ICU_ENTRY_POINT_RENAME(usearch_first)
34446 #define usearch_following U_ICU_ENTRY_POINT_RENAME(usearch_following)
34447 #define usearch_getAttribute U_ICU_ENTRY_POINT_RENAME(usearch_getAttribute)
34448 #define usearch_getBreakIterator U_ICU_ENTRY_POINT_RENAME(usearch_getBreakIterator)
34449 #define usearch_getCollator U_ICU_ENTRY_POINT_RENAME(usearch_getCollator)
34450 #define usearch_getMatchedLength U_ICU_ENTRY_POINT_RENAME(usearch_getMatchedLength)
34451 #define usearch_getMatchedStart U_ICU_ENTRY_POINT_RENAME(usearch_getMatchedStart)
34452 #define usearch_getMatchedText U_ICU_ENTRY_POINT_RENAME(usearch_getMatchedText)
34453 #define usearch_getOffset U_ICU_ENTRY_POINT_RENAME(usearch_getOffset)
34454 #define usearch_getPattern U_ICU_ENTRY_POINT_RENAME(usearch_getPattern)
34455 #define usearch_getText U_ICU_ENTRY_POINT_RENAME(usearch_getText)
34456 #define usearch_handleNextCanonical U_ICU_ENTRY_POINT_RENAME(usearch_handleNextCanonical)
34457 #define usearch_handleNextExact U_ICU_ENTRY_POINT_RENAME(usearch_handleNextExact)
34458 #define usearch_handlePreviousCanonical U_ICU_ENTRY_POINT_RENAME(usearch_handlePreviousCanonical)
34459 #define usearch_handlePreviousExact U_ICU_ENTRY_POINT_RENAME(usearch_handlePreviousExact)
34460 #define usearch_last U_ICU_ENTRY_POINT_RENAME(usearch_last)
34461 #define usearch_next U_ICU_ENTRY_POINT_RENAME(usearch_next)
34462 #define usearch_open U_ICU_ENTRY_POINT_RENAME(usearch_open)
34463 #define usearch_openFromCollator U_ICU_ENTRY_POINT_RENAME(usearch_openFromCollator)
34464 #define usearch_preceding U_ICU_ENTRY_POINT_RENAME(usearch_preceding)
34465 #define usearch_previous U_ICU_ENTRY_POINT_RENAME(usearch_previous)
34466 #define usearch_reset U_ICU_ENTRY_POINT_RENAME(usearch_reset)
34467 #define usearch_search U_ICU_ENTRY_POINT_RENAME(usearch_search)
34468 #define usearch_searchBackwards U_ICU_ENTRY_POINT_RENAME(usearch_searchBackwards)
34469 #define usearch_setAttribute U_ICU_ENTRY_POINT_RENAME(usearch_setAttribute)
34470 #define usearch_setBreakIterator U_ICU_ENTRY_POINT_RENAME(usearch_setBreakIterator)
34471 #define usearch_setCollator U_ICU_ENTRY_POINT_RENAME(usearch_setCollator)
34472 #define usearch_setOffset U_ICU_ENTRY_POINT_RENAME(usearch_setOffset)
34473 #define usearch_setPattern U_ICU_ENTRY_POINT_RENAME(usearch_setPattern)
34474 #define usearch_setText U_ICU_ENTRY_POINT_RENAME(usearch_setText)
34475 #define uset_add U_ICU_ENTRY_POINT_RENAME(uset_add)
34476 #define uset_addAll U_ICU_ENTRY_POINT_RENAME(uset_addAll)
34477 #define uset_addAllCodePoints U_ICU_ENTRY_POINT_RENAME(uset_addAllCodePoints)
34478 #define uset_addRange U_ICU_ENTRY_POINT_RENAME(uset_addRange)
34479 #define uset_addString U_ICU_ENTRY_POINT_RENAME(uset_addString)
34480 #define uset_applyIntPropertyValue U_ICU_ENTRY_POINT_RENAME(uset_applyIntPropertyValue)
34481 #define uset_applyPattern U_ICU_ENTRY_POINT_RENAME(uset_applyPattern)
34482 #define uset_applyPropertyAlias U_ICU_ENTRY_POINT_RENAME(uset_applyPropertyAlias)
34483 #define uset_charAt U_ICU_ENTRY_POINT_RENAME(uset_charAt)
34484 #define uset_clear U_ICU_ENTRY_POINT_RENAME(uset_clear)
34485 #define uset_clone U_ICU_ENTRY_POINT_RENAME(uset_clone)
34486 #define uset_cloneAsThawed U_ICU_ENTRY_POINT_RENAME(uset_cloneAsThawed)
34487 #define uset_close U_ICU_ENTRY_POINT_RENAME(uset_close)
34488 #define uset_closeOver U_ICU_ENTRY_POINT_RENAME(uset_closeOver)
34489 #define uset_compact U_ICU_ENTRY_POINT_RENAME(uset_compact)
34490 #define uset_complement U_ICU_ENTRY_POINT_RENAME(uset_complement)
34491 #define uset_complementAll U_ICU_ENTRY_POINT_RENAME(uset_complementAll)
34492 #define uset_contains U_ICU_ENTRY_POINT_RENAME(uset_contains)
34493 #define uset_containsAll U_ICU_ENTRY_POINT_RENAME(uset_containsAll)
34494 #define uset_containsAllCodePoints U_ICU_ENTRY_POINT_RENAME(uset_containsAllCodePoints)
34495 #define uset_containsNone U_ICU_ENTRY_POINT_RENAME(uset_containsNone)
34496 #define uset_containsRange U_ICU_ENTRY_POINT_RENAME(uset_containsRange)
34497 #define uset_containsSome U_ICU_ENTRY_POINT_RENAME(uset_containsSome)
34498 #define uset_containsString U_ICU_ENTRY_POINT_RENAME(uset_containsString)
34499 #define uset_equals U_ICU_ENTRY_POINT_RENAME(uset_equals)
34500 #define uset_freeze U_ICU_ENTRY_POINT_RENAME(uset_freeze)
34501 #define uset_getItem U_ICU_ENTRY_POINT_RENAME(uset_getItem)
34502 #define uset_getItemCount U_ICU_ENTRY_POINT_RENAME(uset_getItemCount)
34503 #define uset_getSerializedRange U_ICU_ENTRY_POINT_RENAME(uset_getSerializedRange)
34504 #define uset_getSerializedRangeCount U_ICU_ENTRY_POINT_RENAME(uset_getSerializedRangeCount)
34505 #define uset_getSerializedSet U_ICU_ENTRY_POINT_RENAME(uset_getSerializedSet)
34506 #define uset_indexOf U_ICU_ENTRY_POINT_RENAME(uset_indexOf)
34507 #define uset_isEmpty U_ICU_ENTRY_POINT_RENAME(uset_isEmpty)
34508 #define uset_isFrozen U_ICU_ENTRY_POINT_RENAME(uset_isFrozen)
34509 #define uset_open U_ICU_ENTRY_POINT_RENAME(uset_open)
34510 #define uset_openEmpty U_ICU_ENTRY_POINT_RENAME(uset_openEmpty)
34511 #define uset_openPattern U_ICU_ENTRY_POINT_RENAME(uset_openPattern)
34512 #define uset_openPatternOptions U_ICU_ENTRY_POINT_RENAME(uset_openPatternOptions)
34513 #define uset_remove U_ICU_ENTRY_POINT_RENAME(uset_remove)
34514 #define uset_removeAll U_ICU_ENTRY_POINT_RENAME(uset_removeAll)
34515 #define uset_removeAllStrings U_ICU_ENTRY_POINT_RENAME(uset_removeAllStrings)
34516 #define uset_removeRange U_ICU_ENTRY_POINT_RENAME(uset_removeRange)
34517 #define uset_removeString U_ICU_ENTRY_POINT_RENAME(uset_removeString)
34518 #define uset_resemblesPattern U_ICU_ENTRY_POINT_RENAME(uset_resemblesPattern)
34519 #define uset_retain U_ICU_ENTRY_POINT_RENAME(uset_retain)
34520 #define uset_retainAll U_ICU_ENTRY_POINT_RENAME(uset_retainAll)
34521 #define uset_serialize U_ICU_ENTRY_POINT_RENAME(uset_serialize)
34522 #define uset_serializedContains U_ICU_ENTRY_POINT_RENAME(uset_serializedContains)
34523 #define uset_set U_ICU_ENTRY_POINT_RENAME(uset_set)
34524 #define uset_setSerializedToOne U_ICU_ENTRY_POINT_RENAME(uset_setSerializedToOne)
34525 #define uset_size U_ICU_ENTRY_POINT_RENAME(uset_size)
34526 #define uset_span U_ICU_ENTRY_POINT_RENAME(uset_span)
34527 #define uset_spanBack U_ICU_ENTRY_POINT_RENAME(uset_spanBack)
34528 #define uset_spanBackUTF8 U_ICU_ENTRY_POINT_RENAME(uset_spanBackUTF8)
34529 #define uset_spanUTF8 U_ICU_ENTRY_POINT_RENAME(uset_spanUTF8)
34530 #define uset_toPattern U_ICU_ENTRY_POINT_RENAME(uset_toPattern)
34531 #define uspoof_areConfusable U_ICU_ENTRY_POINT_RENAME(uspoof_areConfusable)
34532 #define uspoof_areConfusableUTF8 U_ICU_ENTRY_POINT_RENAME(uspoof_areConfusableUTF8)
34533 #define uspoof_areConfusableUnicodeString U_ICU_ENTRY_POINT_RENAME(uspoof_areConfusableUnicodeString)
34534 #define uspoof_check U_ICU_ENTRY_POINT_RENAME(uspoof_check)
34535 #define uspoof_checkUTF8 U_ICU_ENTRY_POINT_RENAME(uspoof_checkUTF8)
34536 #define uspoof_checkUnicodeString U_ICU_ENTRY_POINT_RENAME(uspoof_checkUnicodeString)
34537 #define uspoof_clone U_ICU_ENTRY_POINT_RENAME(uspoof_clone)
34538 #define uspoof_close U_ICU_ENTRY_POINT_RENAME(uspoof_close)
34539 #define uspoof_getAllowedChars U_ICU_ENTRY_POINT_RENAME(uspoof_getAllowedChars)
34540 #define uspoof_getAllowedLocales U_ICU_ENTRY_POINT_RENAME(uspoof_getAllowedLocales)
34541 #define uspoof_getAllowedUnicodeSet U_ICU_ENTRY_POINT_RENAME(uspoof_getAllowedUnicodeSet)
34542 #define uspoof_getChecks U_ICU_ENTRY_POINT_RENAME(uspoof_getChecks)
34543 #define uspoof_getSkeleton U_ICU_ENTRY_POINT_RENAME(uspoof_getSkeleton)
34544 #define uspoof_getSkeletonUTF8 U_ICU_ENTRY_POINT_RENAME(uspoof_getSkeletonUTF8)
34545 #define uspoof_getSkeletonUnicodeString U_ICU_ENTRY_POINT_RENAME(uspoof_getSkeletonUnicodeString)
34546 #define uspoof_open U_ICU_ENTRY_POINT_RENAME(uspoof_open)
34547 #define uspoof_openFromSerialized U_ICU_ENTRY_POINT_RENAME(uspoof_openFromSerialized)
34548 #define uspoof_openFromSource U_ICU_ENTRY_POINT_RENAME(uspoof_openFromSource)
34549 #define uspoof_serialize U_ICU_ENTRY_POINT_RENAME(uspoof_serialize)
34550 #define uspoof_setAllowedChars U_ICU_ENTRY_POINT_RENAME(uspoof_setAllowedChars)
34551 #define uspoof_setAllowedLocales U_ICU_ENTRY_POINT_RENAME(uspoof_setAllowedLocales)
34552 #define uspoof_setAllowedUnicodeSet U_ICU_ENTRY_POINT_RENAME(uspoof_setAllowedUnicodeSet)
34553 #define uspoof_setChecks U_ICU_ENTRY_POINT_RENAME(uspoof_setChecks)
34554 #define uspoof_swap U_ICU_ENTRY_POINT_RENAME(uspoof_swap)
34555 #define usprep_close U_ICU_ENTRY_POINT_RENAME(usprep_close)
34556 #define usprep_open U_ICU_ENTRY_POINT_RENAME(usprep_open)
34557 #define usprep_openByType U_ICU_ENTRY_POINT_RENAME(usprep_openByType)
34558 #define usprep_prepare U_ICU_ENTRY_POINT_RENAME(usprep_prepare)
34559 #define usprep_swap U_ICU_ENTRY_POINT_RENAME(usprep_swap)
34560 #define ustr_foldCase U_ICU_ENTRY_POINT_RENAME(ustr_foldCase)
34561 #define ustr_toLower U_ICU_ENTRY_POINT_RENAME(ustr_toLower)
34562 #define ustr_toTitle U_ICU_ENTRY_POINT_RENAME(ustr_toTitle)
34563 #define ustr_toUpper U_ICU_ENTRY_POINT_RENAME(ustr_toUpper)
34564 #define utext_caseCompare U_ICU_ENTRY_POINT_RENAME(utext_caseCompare)
34565 #define utext_caseCompareNativeLimit U_ICU_ENTRY_POINT_RENAME(utext_caseCompareNativeLimit)
34566 #define utext_char32At U_ICU_ENTRY_POINT_RENAME(utext_char32At)
34567 #define utext_clone U_ICU_ENTRY_POINT_RENAME(utext_clone)
34568 #define utext_close U_ICU_ENTRY_POINT_RENAME(utext_close)
34569 #define utext_compare U_ICU_ENTRY_POINT_RENAME(utext_compare)
34570 #define utext_compareNativeLimit U_ICU_ENTRY_POINT_RENAME(utext_compareNativeLimit)
34571 #define utext_copy U_ICU_ENTRY_POINT_RENAME(utext_copy)
34572 #define utext_current32 U_ICU_ENTRY_POINT_RENAME(utext_current32)
34573 #define utext_equals U_ICU_ENTRY_POINT_RENAME(utext_equals)
34574 #define utext_extract U_ICU_ENTRY_POINT_RENAME(utext_extract)
34575 #define utext_freeze U_ICU_ENTRY_POINT_RENAME(utext_freeze)
34576 #define utext_getNativeIndex U_ICU_ENTRY_POINT_RENAME(utext_getNativeIndex)
34577 #define utext_getPreviousNativeIndex U_ICU_ENTRY_POINT_RENAME(utext_getPreviousNativeIndex)
34578 #define utext_hasMetaData U_ICU_ENTRY_POINT_RENAME(utext_hasMetaData)
34579 #define utext_isLengthExpensive U_ICU_ENTRY_POINT_RENAME(utext_isLengthExpensive)
34580 #define utext_isWritable U_ICU_ENTRY_POINT_RENAME(utext_isWritable)
34581 #define utext_moveIndex32 U_ICU_ENTRY_POINT_RENAME(utext_moveIndex32)
34582 #define utext_nativeLength U_ICU_ENTRY_POINT_RENAME(utext_nativeLength)
34583 #define utext_next32 U_ICU_ENTRY_POINT_RENAME(utext_next32)
34584 #define utext_next32From U_ICU_ENTRY_POINT_RENAME(utext_next32From)
34585 #define utext_openCharacterIterator U_ICU_ENTRY_POINT_RENAME(utext_openCharacterIterator)
34586 #define utext_openConstUnicodeString U_ICU_ENTRY_POINT_RENAME(utext_openConstUnicodeString)
34587 #define utext_openReplaceable U_ICU_ENTRY_POINT_RENAME(utext_openReplaceable)
34588 #define utext_openUChars U_ICU_ENTRY_POINT_RENAME(utext_openUChars)
34589 #define utext_openUTF8 U_ICU_ENTRY_POINT_RENAME(utext_openUTF8)
34590 #define utext_openUnicodeString U_ICU_ENTRY_POINT_RENAME(utext_openUnicodeString)
34591 #define utext_previous32 U_ICU_ENTRY_POINT_RENAME(utext_previous32)
34592 #define utext_previous32From U_ICU_ENTRY_POINT_RENAME(utext_previous32From)
34593 #define utext_replace U_ICU_ENTRY_POINT_RENAME(utext_replace)
34594 #define utext_setNativeIndex U_ICU_ENTRY_POINT_RENAME(utext_setNativeIndex)
34595 #define utext_setup U_ICU_ENTRY_POINT_RENAME(utext_setup)
34596 #define utf8_appendCharSafeBody U_ICU_ENTRY_POINT_RENAME(utf8_appendCharSafeBody)
34597 #define utf8_back1SafeBody U_ICU_ENTRY_POINT_RENAME(utf8_back1SafeBody)
34598 #define utf8_countTrailBytes U_ICU_ENTRY_POINT_RENAME(utf8_countTrailBytes)
34599 #define utf8_nextCharSafeBody U_ICU_ENTRY_POINT_RENAME(utf8_nextCharSafeBody)
34600 #define utf8_prevCharSafeBody U_ICU_ENTRY_POINT_RENAME(utf8_prevCharSafeBody)
34601 #define utmscale_fromInt64 U_ICU_ENTRY_POINT_RENAME(utmscale_fromInt64)
34602 #define utmscale_getTimeScaleValue U_ICU_ENTRY_POINT_RENAME(utmscale_getTimeScaleValue)
34603 #define utmscale_toInt64 U_ICU_ENTRY_POINT_RENAME(utmscale_toInt64)
34604 #define utrace_cleanup U_ICU_ENTRY_POINT_RENAME(utrace_cleanup)
34605 #define utrace_data U_ICU_ENTRY_POINT_RENAME(utrace_data)
34606 #define utrace_entry U_ICU_ENTRY_POINT_RENAME(utrace_entry)
34607 #define utrace_exit U_ICU_ENTRY_POINT_RENAME(utrace_exit)
34608 #define utrace_format U_ICU_ENTRY_POINT_RENAME(utrace_format)
34609 #define utrace_functionName U_ICU_ENTRY_POINT_RENAME(utrace_functionName)
34610 #define utrace_getFunctions U_ICU_ENTRY_POINT_RENAME(utrace_getFunctions)
34611 #define utrace_getLevel U_ICU_ENTRY_POINT_RENAME(utrace_getLevel)
34612 #define utrace_level U_ICU_ENTRY_POINT_RENAME(utrace_level)
34613 #define utrace_setFunctions U_ICU_ENTRY_POINT_RENAME(utrace_setFunctions)
34614 #define utrace_setLevel U_ICU_ENTRY_POINT_RENAME(utrace_setLevel)
34615 #define utrace_vformat U_ICU_ENTRY_POINT_RENAME(utrace_vformat)
34616 #define utrans_clone U_ICU_ENTRY_POINT_RENAME(utrans_clone)
34617 #define utrans_close U_ICU_ENTRY_POINT_RENAME(utrans_close)
34618 #define utrans_countAvailableIDs U_ICU_ENTRY_POINT_RENAME(utrans_countAvailableIDs)
34619 #define utrans_getAvailableID U_ICU_ENTRY_POINT_RENAME(utrans_getAvailableID)
34620 #define utrans_getID U_ICU_ENTRY_POINT_RENAME(utrans_getID)
34621 #define utrans_getUnicodeID U_ICU_ENTRY_POINT_RENAME(utrans_getUnicodeID)
34622 #define utrans_open U_ICU_ENTRY_POINT_RENAME(utrans_open)
34623 #define utrans_openIDs U_ICU_ENTRY_POINT_RENAME(utrans_openIDs)
34624 #define utrans_openInverse U_ICU_ENTRY_POINT_RENAME(utrans_openInverse)
34625 #define utrans_openU U_ICU_ENTRY_POINT_RENAME(utrans_openU)
34626 #define utrans_register U_ICU_ENTRY_POINT_RENAME(utrans_register)
34627 #define utrans_rep_caseContextIterator U_ICU_ENTRY_POINT_RENAME(utrans_rep_caseContextIterator)
34628 #define utrans_setFilter U_ICU_ENTRY_POINT_RENAME(utrans_setFilter)
34629 #define utrans_stripRules U_ICU_ENTRY_POINT_RENAME(utrans_stripRules)
34630 #define utrans_trans U_ICU_ENTRY_POINT_RENAME(utrans_trans)
34631 #define utrans_transIncremental U_ICU_ENTRY_POINT_RENAME(utrans_transIncremental)
34632 #define utrans_transIncrementalUChars U_ICU_ENTRY_POINT_RENAME(utrans_transIncrementalUChars)
34633 #define utrans_transUChars U_ICU_ENTRY_POINT_RENAME(utrans_transUChars)
34634 #define utrans_transliterator_cleanup U_ICU_ENTRY_POINT_RENAME(utrans_transliterator_cleanup)
34635 #define utrans_unregister U_ICU_ENTRY_POINT_RENAME(utrans_unregister)
34636 #define utrans_unregisterID U_ICU_ENTRY_POINT_RENAME(utrans_unregisterID)
34637 #define utrie2_clone U_ICU_ENTRY_POINT_RENAME(utrie2_clone)
34638 #define utrie2_cloneAsThawed U_ICU_ENTRY_POINT_RENAME(utrie2_cloneAsThawed)
34639 #define utrie2_close U_ICU_ENTRY_POINT_RENAME(utrie2_close)
34640 #define utrie2_enum U_ICU_ENTRY_POINT_RENAME(utrie2_enum)
34641 #define utrie2_enumForLeadSurrogate U_ICU_ENTRY_POINT_RENAME(utrie2_enumForLeadSurrogate)
34642 #define utrie2_freeze U_ICU_ENTRY_POINT_RENAME(utrie2_freeze)
34643 #define utrie2_fromUTrie U_ICU_ENTRY_POINT_RENAME(utrie2_fromUTrie)
34644 #define utrie2_get32 U_ICU_ENTRY_POINT_RENAME(utrie2_get32)
34645 #define utrie2_get32FromLeadSurrogateCodeUnit U_ICU_ENTRY_POINT_RENAME(utrie2_get32FromLeadSurrogateCodeUnit)
34646 #define utrie2_getVersion U_ICU_ENTRY_POINT_RENAME(utrie2_getVersion)
34647 #define utrie2_internalU8NextIndex U_ICU_ENTRY_POINT_RENAME(utrie2_internalU8NextIndex)
34648 #define utrie2_internalU8PrevIndex U_ICU_ENTRY_POINT_RENAME(utrie2_internalU8PrevIndex)
34649 #define utrie2_isFrozen U_ICU_ENTRY_POINT_RENAME(utrie2_isFrozen)
34650 #define utrie2_open U_ICU_ENTRY_POINT_RENAME(utrie2_open)
34651 #define utrie2_openDummy U_ICU_ENTRY_POINT_RENAME(utrie2_openDummy)
34652 #define utrie2_openFromSerialized U_ICU_ENTRY_POINT_RENAME(utrie2_openFromSerialized)
34653 #define utrie2_serialize U_ICU_ENTRY_POINT_RENAME(utrie2_serialize)
34654 #define utrie2_set32 U_ICU_ENTRY_POINT_RENAME(utrie2_set32)
34655 #define utrie2_set32ForLeadSurrogateCodeUnit U_ICU_ENTRY_POINT_RENAME(utrie2_set32ForLeadSurrogateCodeUnit)
34656 #define utrie2_setRange32 U_ICU_ENTRY_POINT_RENAME(utrie2_setRange32)
34657 #define utrie2_swap U_ICU_ENTRY_POINT_RENAME(utrie2_swap)
34658 #define utrie2_swapAnyVersion U_ICU_ENTRY_POINT_RENAME(utrie2_swapAnyVersion)
34659 #define utrie_clone U_ICU_ENTRY_POINT_RENAME(utrie_clone)
34660 #define utrie_close U_ICU_ENTRY_POINT_RENAME(utrie_close)
34661 #define utrie_defaultGetFoldingOffset U_ICU_ENTRY_POINT_RENAME(utrie_defaultGetFoldingOffset)
34662 #define utrie_enum U_ICU_ENTRY_POINT_RENAME(utrie_enum)
34663 #define utrie_get32 U_ICU_ENTRY_POINT_RENAME(utrie_get32)
34664 #define utrie_getData U_ICU_ENTRY_POINT_RENAME(utrie_getData)
34665 #define utrie_open U_ICU_ENTRY_POINT_RENAME(utrie_open)
34666 #define utrie_serialize U_ICU_ENTRY_POINT_RENAME(utrie_serialize)
34667 #define utrie_set32 U_ICU_ENTRY_POINT_RENAME(utrie_set32)
34668 #define utrie_setRange32 U_ICU_ENTRY_POINT_RENAME(utrie_setRange32)
34669 #define utrie_swap U_ICU_ENTRY_POINT_RENAME(utrie_swap)
34670 #define utrie_unserialize U_ICU_ENTRY_POINT_RENAME(utrie_unserialize)
34671 #define utrie_unserializeDummy U_ICU_ENTRY_POINT_RENAME(utrie_unserializeDummy)
34672 #define vzone_clone U_ICU_ENTRY_POINT_RENAME(vzone_clone)
34673 #define vzone_close U_ICU_ENTRY_POINT_RENAME(vzone_close)
34674 #define vzone_countTransitionRules U_ICU_ENTRY_POINT_RENAME(vzone_countTransitionRules)
34675 #define vzone_equals U_ICU_ENTRY_POINT_RENAME(vzone_equals)
34676 #define vzone_getDynamicClassID U_ICU_ENTRY_POINT_RENAME(vzone_getDynamicClassID)
34677 #define vzone_getLastModified U_ICU_ENTRY_POINT_RENAME(vzone_getLastModified)
34678 #define vzone_getNextTransition U_ICU_ENTRY_POINT_RENAME(vzone_getNextTransition)
34679 #define vzone_getOffset U_ICU_ENTRY_POINT_RENAME(vzone_getOffset)
34680 #define vzone_getOffset2 U_ICU_ENTRY_POINT_RENAME(vzone_getOffset2)
34681 #define vzone_getOffset3 U_ICU_ENTRY_POINT_RENAME(vzone_getOffset3)
34682 #define vzone_getPreviousTransition U_ICU_ENTRY_POINT_RENAME(vzone_getPreviousTransition)
34683 #define vzone_getRawOffset U_ICU_ENTRY_POINT_RENAME(vzone_getRawOffset)
34684 #define vzone_getStaticClassID U_ICU_ENTRY_POINT_RENAME(vzone_getStaticClassID)
34685 #define vzone_getTZURL U_ICU_ENTRY_POINT_RENAME(vzone_getTZURL)
34686 #define vzone_hasSameRules U_ICU_ENTRY_POINT_RENAME(vzone_hasSameRules)
34687 #define vzone_inDaylightTime U_ICU_ENTRY_POINT_RENAME(vzone_inDaylightTime)
34688 #define vzone_openData U_ICU_ENTRY_POINT_RENAME(vzone_openData)
34689 #define vzone_openID U_ICU_ENTRY_POINT_RENAME(vzone_openID)
34690 #define vzone_setLastModified U_ICU_ENTRY_POINT_RENAME(vzone_setLastModified)
34691 #define vzone_setRawOffset U_ICU_ENTRY_POINT_RENAME(vzone_setRawOffset)
34692 #define vzone_setTZURL U_ICU_ENTRY_POINT_RENAME(vzone_setTZURL)
34693 #define vzone_useDaylightTime U_ICU_ENTRY_POINT_RENAME(vzone_useDaylightTime)
34694 #define vzone_write U_ICU_ENTRY_POINT_RENAME(vzone_write)
34695 #define vzone_writeFromStart U_ICU_ENTRY_POINT_RENAME(vzone_writeFromStart)
34696 #define vzone_writeSimple U_ICU_ENTRY_POINT_RENAME(vzone_writeSimple)
34697 #define zrule_close U_ICU_ENTRY_POINT_RENAME(zrule_close)
34698 #define zrule_equals U_ICU_ENTRY_POINT_RENAME(zrule_equals)
34699 #define zrule_getDSTSavings U_ICU_ENTRY_POINT_RENAME(zrule_getDSTSavings)
34700 #define zrule_getName U_ICU_ENTRY_POINT_RENAME(zrule_getName)
34701 #define zrule_getRawOffset U_ICU_ENTRY_POINT_RENAME(zrule_getRawOffset)
34702 #define zrule_isEquivalentTo U_ICU_ENTRY_POINT_RENAME(zrule_isEquivalentTo)
34703 #define ztrans_adoptFrom U_ICU_ENTRY_POINT_RENAME(ztrans_adoptFrom)
34704 #define ztrans_adoptTo U_ICU_ENTRY_POINT_RENAME(ztrans_adoptTo)
34705 #define ztrans_clone U_ICU_ENTRY_POINT_RENAME(ztrans_clone)
34706 #define ztrans_close U_ICU_ENTRY_POINT_RENAME(ztrans_close)
34707 #define ztrans_equals U_ICU_ENTRY_POINT_RENAME(ztrans_equals)
34708 #define ztrans_getDynamicClassID U_ICU_ENTRY_POINT_RENAME(ztrans_getDynamicClassID)
34709 #define ztrans_getFrom U_ICU_ENTRY_POINT_RENAME(ztrans_getFrom)
34710 #define ztrans_getStaticClassID U_ICU_ENTRY_POINT_RENAME(ztrans_getStaticClassID)
34711 #define ztrans_getTime U_ICU_ENTRY_POINT_RENAME(ztrans_getTime)
34712 #define ztrans_getTo U_ICU_ENTRY_POINT_RENAME(ztrans_getTo)
34713 #define ztrans_open U_ICU_ENTRY_POINT_RENAME(ztrans_open)
34714 #define ztrans_openEmpty U_ICU_ENTRY_POINT_RENAME(ztrans_openEmpty)
34715 #define ztrans_setFrom U_ICU_ENTRY_POINT_RENAME(ztrans_setFrom)
34716 #define ztrans_setTime U_ICU_ENTRY_POINT_RENAME(ztrans_setTime)
34717 #define ztrans_setTo U_ICU_ENTRY_POINT_RENAME(ztrans_setTo)
34718 # 383 "/usr/include/unicode/umachine.h" 2 3 4
34719 # 37 "/usr/include/unicode/utypes.h" 2 3 4
34720 # 1 "/usr/include/unicode/utf.h" 1 3 4
34721 # 109 "/usr/include/unicode/utf.h" 3 4
34722 #define __UTF_H__
34723
34724 # 1 "/usr/include/unicode/utypes.h" 1 3 4
34725 # 112 "/usr/include/unicode/utf.h" 2 3 4
34726 # 134 "/usr/include/unicode/utf.h" 3 4
34727 #define U_SENTINEL (-1)
34728
34729
34730
34731
34732
34733
34734
34735 #define U_IS_UNICODE_NONCHAR(c) ((c)>=0xfdd0 && ((uint32_t)(c)<=0xfdef || ((c)&0xfffe)==0xfffe) && (uint32_t)(c)<=0x10ffff)
34736 # 164 "/usr/include/unicode/utf.h" 3 4
34737 #define U_IS_UNICODE_CHAR(c) ((uint32_t)(c)<0xd800 || ((uint32_t)(c)>0xdfff && (uint32_t)(c)<=0x10ffff && !U_IS_UNICODE_NONCHAR(c)))
34738 # 176 "/usr/include/unicode/utf.h" 3 4
34739 #define U_IS_BMP(c) ((uint32_t)(c)<=0xffff)
34740
34741
34742
34743
34744
34745
34746
34747 #define U_IS_SUPPLEMENTARY(c) ((uint32_t)((c)-0x10000)<=0xfffff)
34748
34749
34750
34751
34752
34753
34754
34755 #define U_IS_LEAD(c) (((c)&0xfffffc00)==0xd800)
34756
34757
34758
34759
34760
34761
34762
34763 #define U_IS_TRAIL(c) (((c)&0xfffffc00)==0xdc00)
34764
34765
34766
34767
34768
34769
34770
34771 #define U_IS_SURROGATE(c) (((c)&0xfffff800)==0xd800)
34772 # 217 "/usr/include/unicode/utf.h" 3 4
34773 #define U_IS_SURROGATE_LEAD(c) (((c)&0x400)==0)
34774 # 226 "/usr/include/unicode/utf.h" 3 4
34775 #define U_IS_SURROGATE_TRAIL(c) (((c)&0x400)!=0)
34776
34777
34778
34779 # 1 "/usr/include/unicode/utf8.h" 1 3 4
34780 # 35 "/usr/include/unicode/utf8.h" 3 4
34781 #define __UTF8_H__
34782 # 60 "/usr/include/unicode/utf8.h" 3 4
34783 extern "C" const uint8_t
34784
34785 utf8_countTrailBytes_48[256];
34786 # 71 "/usr/include/unicode/utf8.h" 3 4
34787 #define U8_COUNT_TRAIL_BYTES(leadByte) (utf8_countTrailBytes[(uint8_t)leadByte])
34788 # 80 "/usr/include/unicode/utf8.h" 3 4
34789 #define U8_MASK_LEAD_BYTE(leadByte,countTrailBytes) ((leadByte)&=(1<<(6-(countTrailBytes)))-1)
34790 # 91 "/usr/include/unicode/utf8.h" 3 4
34791 extern "C" __attribute__((visibility("default"))) UChar32
34792 utf8_nextCharSafeBody_48(const uint8_t *s, int32_t *pi, int32_t length, UChar32 c, UBool strict);
34793 # 103 "/usr/include/unicode/utf8.h" 3 4
34794 extern "C" __attribute__((visibility("default"))) int32_t
34795 utf8_appendCharSafeBody_48(uint8_t *s, int32_t i, int32_t length, UChar32 c, UBool *pIsError);
34796 # 115 "/usr/include/unicode/utf8.h" 3 4
34797 extern "C" __attribute__((visibility("default"))) UChar32
34798 utf8_prevCharSafeBody_48(const uint8_t *s, int32_t start, int32_t *pi, UChar32 c, UBool strict);
34799 # 127 "/usr/include/unicode/utf8.h" 3 4
34800 extern "C" __attribute__((visibility("default"))) int32_t
34801 utf8_back1SafeBody_48(const uint8_t *s, int32_t start, int32_t i);
34802 # 138 "/usr/include/unicode/utf8.h" 3 4
34803 #define U8_IS_SINGLE(c) (((c)&0x80)==0)
34804
34805
34806
34807
34808
34809
34810
34811 #define U8_IS_LEAD(c) ((uint8_t)((c)-0xc0)<0x3e)
34812
34813
34814
34815
34816
34817
34818
34819 #define U8_IS_TRAIL(c) (((c)&0xc0)==0x80)
34820 # 163 "/usr/include/unicode/utf8.h" 3 4
34821 #define U8_LENGTH(c) ((uint32_t)(c)<=0x7f ? 1 : ((uint32_t)(c)<=0x7ff ? 2 : ((uint32_t)(c)<=0xd7ff ? 3 : ((uint32_t)(c)<=0xdfff || (uint32_t)(c)>0x10ffff ? 0 : ((uint32_t)(c)<=0xffff ? 3 : 4) ) ) ) )
34822 # 179 "/usr/include/unicode/utf8.h" 3 4
34823 #define U8_MAX_LENGTH 4
34824 # 197 "/usr/include/unicode/utf8.h" 3 4
34825 #define U8_GET_UNSAFE(s,i,c) { int32_t _u8_get_unsafe_index=(int32_t)(i); U8_SET_CP_START_UNSAFE(s, _u8_get_unsafe_index); U8_NEXT_UNSAFE(s, _u8_get_unsafe_index, c); }
34826 # 221 "/usr/include/unicode/utf8.h" 3 4
34827 #define U8_GET(s,start,i,length,c) { int32_t _u8_get_index=(int32_t)(i); U8_SET_CP_START(s, start, _u8_get_index); U8_NEXT(s, _u8_get_index, length, c); }
34828 # 246 "/usr/include/unicode/utf8.h" 3 4
34829 #define U8_NEXT_UNSAFE(s,i,c) { (c)=(uint8_t)(s)[(i)++]; if((uint8_t)((c)-0xc0)<0x35) { uint8_t __count=U8_COUNT_TRAIL_BYTES(c); U8_MASK_LEAD_BYTE(c, __count); switch(__count) { case 3: (c)=((c)<<6)|((s)[(i)++]&0x3f); case 2: (c)=((c)<<6)|((s)[(i)++]&0x3f); case 1: (c)=((c)<<6)|((s)[(i)++]&0x3f); break; } } }
34830 # 283 "/usr/include/unicode/utf8.h" 3 4
34831 #define U8_NEXT(s,i,length,c) { (c)=(uint8_t)(s)[(i)++]; if((c)>=0x80) { uint8_t __t1, __t2; if( (0xe0<(c) && (c)<=0xec) && (((i)+1)<(length)) && (__t1=(uint8_t)((s)[i]-0x80))<=0x3f && (__t2=(uint8_t)((s)[(i)+1]-0x80))<= 0x3f ) { (c)=(UChar)(((c)<<12)|(__t1<<6)|__t2); (i)+=2; } else if( ((c)<0xe0 && (c)>=0xc2) && ((i)<(length)) && (__t1=(uint8_t)((s)[i]-0x80))<=0x3f ) { (c)=(UChar)((((c)&0x1f)<<6)|__t1); ++(i); } else if(U8_IS_LEAD(c)) { (c)=utf8_nextCharSafeBody((const uint8_t *)s, &(i), (int32_t)(length), c, -1); } else { (c)=U_SENTINEL; } } }
34832 # 325 "/usr/include/unicode/utf8.h" 3 4
34833 #define U8_APPEND_UNSAFE(s,i,c) { if((uint32_t)(c)<=0x7f) { (s)[(i)++]=(uint8_t)(c); } else { if((uint32_t)(c)<=0x7ff) { (s)[(i)++]=(uint8_t)(((c)>>6)|0xc0); } else { if((uint32_t)(c)<=0xffff) { (s)[(i)++]=(uint8_t)(((c)>>12)|0xe0); } else { (s)[(i)++]=(uint8_t)(((c)>>18)|0xf0); (s)[(i)++]=(uint8_t)((((c)>>12)&0x3f)|0x80); } (s)[(i)++]=(uint8_t)((((c)>>6)&0x3f)|0x80); } (s)[(i)++]=(uint8_t)(((c)&0x3f)|0x80); } }
34834 # 361 "/usr/include/unicode/utf8.h" 3 4
34835 #define U8_APPEND(s,i,capacity,c,isError) { if((uint32_t)(c)<=0x7f) { (s)[(i)++]=(uint8_t)(c); } else if((uint32_t)(c)<=0x7ff && (i)+1<(capacity)) { (s)[(i)++]=(uint8_t)(((c)>>6)|0xc0); (s)[(i)++]=(uint8_t)(((c)&0x3f)|0x80); } else if((uint32_t)(c)<=0xd7ff && (i)+2<(capacity)) { (s)[(i)++]=(uint8_t)(((c)>>12)|0xe0); (s)[(i)++]=(uint8_t)((((c)>>6)&0x3f)|0x80); (s)[(i)++]=(uint8_t)(((c)&0x3f)|0x80); } else { (i)=utf8_appendCharSafeBody(s, (int32_t)(i), (int32_t)(capacity), c, &(isError)); } }
34836 # 386 "/usr/include/unicode/utf8.h" 3 4
34837 #define U8_FWD_1_UNSAFE(s,i) { (i)+=1+U8_COUNT_TRAIL_BYTES((s)[i]); }
34838 # 401 "/usr/include/unicode/utf8.h" 3 4
34839 #define U8_FWD_1(s,i,length) { uint8_t __b=(uint8_t)(s)[(i)++]; if(U8_IS_LEAD(__b)) { uint8_t __count=U8_COUNT_TRAIL_BYTES(__b); if((i)+__count>(length)) { __count=(uint8_t)((length)-(i)); } while(__count>0 && U8_IS_TRAIL((s)[i])) { ++(i); --__count; } } }
34840 # 427 "/usr/include/unicode/utf8.h" 3 4
34841 #define U8_FWD_N_UNSAFE(s,i,n) { int32_t __N=(n); while(__N>0) { U8_FWD_1_UNSAFE(s, i); --__N; } }
34842 # 448 "/usr/include/unicode/utf8.h" 3 4
34843 #define U8_FWD_N(s,i,length,n) { int32_t __N=(n); while(__N>0 && (i)<(length)) { U8_FWD_1(s, i, length); --__N; } }
34844 # 469 "/usr/include/unicode/utf8.h" 3 4
34845 #define U8_SET_CP_START_UNSAFE(s,i) { while(U8_IS_TRAIL((s)[i])) { --(i); } }
34846 # 487 "/usr/include/unicode/utf8.h" 3 4
34847 #define U8_SET_CP_START(s,start,i) { if(U8_IS_TRAIL((s)[(i)])) { (i)=utf8_back1SafeBody(s, start, (int32_t)(i)); } }
34848 # 514 "/usr/include/unicode/utf8.h" 3 4
34849 #define U8_PREV_UNSAFE(s,i,c) { (c)=(uint8_t)(s)[--(i)]; if(U8_IS_TRAIL(c)) { uint8_t __b, __count=1, __shift=6; (c)&=0x3f; for(;;) { __b=(uint8_t)(s)[--(i)]; if(__b>=0xc0) { U8_MASK_LEAD_BYTE(__b, __count); (c)|=(UChar32)__b<<__shift; break; } else { (c)|=(UChar32)(__b&0x3f)<<__shift; ++__count; __shift+=6; } } } }
34850 # 556 "/usr/include/unicode/utf8.h" 3 4
34851 #define U8_PREV(s,start,i,c) { (c)=(uint8_t)(s)[--(i)]; if((c)>=0x80) { if((c)<=0xbf) { (c)=utf8_prevCharSafeBody((const uint8_t *)s, start, &(i), c, -1); } else { (c)=U_SENTINEL; } } }
34852 # 578 "/usr/include/unicode/utf8.h" 3 4
34853 #define U8_BACK_1_UNSAFE(s,i) { while(U8_IS_TRAIL((s)[--(i)])) {} }
34854 # 594 "/usr/include/unicode/utf8.h" 3 4
34855 #define U8_BACK_1(s,start,i) { if(U8_IS_TRAIL((s)[--(i)])) { (i)=utf8_back1SafeBody(s, start, (int32_t)(i)); } }
34856 # 613 "/usr/include/unicode/utf8.h" 3 4
34857 #define U8_BACK_N_UNSAFE(s,i,n) { int32_t __N=(n); while(__N>0) { U8_BACK_1_UNSAFE(s, i); --__N; } }
34858 # 635 "/usr/include/unicode/utf8.h" 3 4
34859 #define U8_BACK_N(s,start,i,n) { int32_t __N=(n); while(__N>0 && (i)>(start)) { U8_BACK_1(s, start, i); --__N; } }
34860 # 656 "/usr/include/unicode/utf8.h" 3 4
34861 #define U8_SET_CP_LIMIT_UNSAFE(s,i) { U8_BACK_1_UNSAFE(s, i); U8_FWD_1_UNSAFE(s, i); }
34862 # 676 "/usr/include/unicode/utf8.h" 3 4
34863 #define U8_SET_CP_LIMIT(s,start,i,length) { if((start)<(i) && (i)<(length)) { U8_BACK_1(s, start, i); U8_FWD_1(s, i, length); } }
34864 # 231 "/usr/include/unicode/utf.h" 2 3 4
34865 # 1 "/usr/include/unicode/utf16.h" 1 3 4
34866 # 35 "/usr/include/unicode/utf16.h" 3 4
34867 #define __UTF16_H__
34868 # 50 "/usr/include/unicode/utf16.h" 3 4
34869 #define U16_IS_SINGLE(c) !U_IS_SURROGATE(c)
34870
34871
34872
34873
34874
34875
34876
34877 #define U16_IS_LEAD(c) (((c)&0xfffffc00)==0xd800)
34878
34879
34880
34881
34882
34883
34884
34885 #define U16_IS_TRAIL(c) (((c)&0xfffffc00)==0xdc00)
34886
34887
34888
34889
34890
34891
34892
34893 #define U16_IS_SURROGATE(c) U_IS_SURROGATE(c)
34894 # 83 "/usr/include/unicode/utf16.h" 3 4
34895 #define U16_IS_SURROGATE_LEAD(c) (((c)&0x400)==0)
34896 # 92 "/usr/include/unicode/utf16.h" 3 4
34897 #define U16_IS_SURROGATE_TRAIL(c) (((c)&0x400)!=0)
34898
34899
34900
34901
34902
34903 #define U16_SURROGATE_OFFSET ((0xd800<<10UL)+0xdc00-0x10000)
34904 # 111 "/usr/include/unicode/utf16.h" 3 4
34905 #define U16_GET_SUPPLEMENTARY(lead,trail) (((UChar32)(lead)<<10UL)+(UChar32)(trail)-U16_SURROGATE_OFFSET)
34906 # 122 "/usr/include/unicode/utf16.h" 3 4
34907 #define U16_LEAD(supplementary) (UChar)(((supplementary)>>10)+0xd7c0)
34908 # 131 "/usr/include/unicode/utf16.h" 3 4
34909 #define U16_TRAIL(supplementary) (UChar)(((supplementary)&0x3ff)|0xdc00)
34910 # 140 "/usr/include/unicode/utf16.h" 3 4
34911 #define U16_LENGTH(c) ((uint32_t)(c)<=0xffff ? 1 : 2)
34912
34913
34914
34915
34916
34917
34918 #define U16_MAX_LENGTH 2
34919 # 166 "/usr/include/unicode/utf16.h" 3 4
34920 #define U16_GET_UNSAFE(s,i,c) { (c)=(s)[i]; if(U16_IS_SURROGATE(c)) { if(U16_IS_SURROGATE_LEAD(c)) { (c)=U16_GET_SUPPLEMENTARY((c), (s)[(i)+1]); } else { (c)=U16_GET_SUPPLEMENTARY((s)[(i)-1], (c)); } } }
34921 # 197 "/usr/include/unicode/utf16.h" 3 4
34922 #define U16_GET(s,start,i,length,c) { (c)=(s)[i]; if(U16_IS_SURROGATE(c)) { uint16_t __c2; if(U16_IS_SURROGATE_LEAD(c)) { if((i)+1<(length) && U16_IS_TRAIL(__c2=(s)[(i)+1])) { (c)=U16_GET_SUPPLEMENTARY((c), __c2); } } else { if((i)>(start) && U16_IS_LEAD(__c2=(s)[(i)-1])) { (c)=U16_GET_SUPPLEMENTARY(__c2, (c)); } } } }
34923 # 234 "/usr/include/unicode/utf16.h" 3 4
34924 #define U16_NEXT_UNSAFE(s,i,c) { (c)=(s)[(i)++]; if(U16_IS_LEAD(c)) { (c)=U16_GET_SUPPLEMENTARY((c), (s)[(i)++]); } }
34925 # 261 "/usr/include/unicode/utf16.h" 3 4
34926 #define U16_NEXT(s,i,length,c) { (c)=(s)[(i)++]; if(U16_IS_LEAD(c)) { uint16_t __c2; if((i)<(length) && U16_IS_TRAIL(__c2=(s)[(i)])) { ++(i); (c)=U16_GET_SUPPLEMENTARY((c), __c2); } } }
34927 # 285 "/usr/include/unicode/utf16.h" 3 4
34928 #define U16_APPEND_UNSAFE(s,i,c) { if((uint32_t)(c)<=0xffff) { (s)[(i)++]=(uint16_t)(c); } else { (s)[(i)++]=(uint16_t)(((c)>>10)+0xd7c0); (s)[(i)++]=(uint16_t)(((c)&0x3ff)|0xdc00); } }
34929 # 311 "/usr/include/unicode/utf16.h" 3 4
34930 #define U16_APPEND(s,i,capacity,c,isError) { if((uint32_t)(c)<=0xffff) { (s)[(i)++]=(uint16_t)(c); } else if((uint32_t)(c)<=0x10ffff && (i)+1<(capacity)) { (s)[(i)++]=(uint16_t)(((c)>>10)+0xd7c0); (s)[(i)++]=(uint16_t)(((c)&0x3ff)|0xdc00); } else { (isError)=TRUE; } }
34931 # 332 "/usr/include/unicode/utf16.h" 3 4
34932 #define U16_FWD_1_UNSAFE(s,i) { if(U16_IS_LEAD((s)[(i)++])) { ++(i); } }
34933 # 349 "/usr/include/unicode/utf16.h" 3 4
34934 #define U16_FWD_1(s,i,length) { if(U16_IS_LEAD((s)[(i)++]) && (i)<(length) && U16_IS_TRAIL((s)[i])) { ++(i); } }
34935 # 367 "/usr/include/unicode/utf16.h" 3 4
34936 #define U16_FWD_N_UNSAFE(s,i,n) { int32_t __N=(n); while(__N>0) { U16_FWD_1_UNSAFE(s, i); --__N; } }
34937 # 388 "/usr/include/unicode/utf16.h" 3 4
34938 #define U16_FWD_N(s,i,length,n) { int32_t __N=(n); while(__N>0 && (i)<(length)) { U16_FWD_1(s, i, length); --__N; } }
34939 # 409 "/usr/include/unicode/utf16.h" 3 4
34940 #define U16_SET_CP_START_UNSAFE(s,i) { if(U16_IS_TRAIL((s)[i])) { --(i); } }
34941 # 429 "/usr/include/unicode/utf16.h" 3 4
34942 #define U16_SET_CP_START(s,start,i) { if(U16_IS_TRAIL((s)[i]) && (i)>(start) && U16_IS_LEAD((s)[(i)-1])) { --(i); } }
34943 # 457 "/usr/include/unicode/utf16.h" 3 4
34944 #define U16_PREV_UNSAFE(s,i,c) { (c)=(s)[--(i)]; if(U16_IS_TRAIL(c)) { (c)=U16_GET_SUPPLEMENTARY((s)[--(i)], (c)); } }
34945 # 485 "/usr/include/unicode/utf16.h" 3 4
34946 #define U16_PREV(s,start,i,c) { (c)=(s)[--(i)]; if(U16_IS_TRAIL(c)) { uint16_t __c2; if((i)>(start) && U16_IS_LEAD(__c2=(s)[(i)-1])) { --(i); (c)=U16_GET_SUPPLEMENTARY(__c2, (c)); } } }
34947 # 507 "/usr/include/unicode/utf16.h" 3 4
34948 #define U16_BACK_1_UNSAFE(s,i) { if(U16_IS_TRAIL((s)[--(i)])) { --(i); } }
34949 # 525 "/usr/include/unicode/utf16.h" 3 4
34950 #define U16_BACK_1(s,start,i) { if(U16_IS_TRAIL((s)[--(i)]) && (i)>(start) && U16_IS_LEAD((s)[(i)-1])) { --(i); } }
34951 # 544 "/usr/include/unicode/utf16.h" 3 4
34952 #define U16_BACK_N_UNSAFE(s,i,n) { int32_t __N=(n); while(__N>0) { U16_BACK_1_UNSAFE(s, i); --__N; } }
34953 # 566 "/usr/include/unicode/utf16.h" 3 4
34954 #define U16_BACK_N(s,start,i,n) { int32_t __N=(n); while(__N>0 && (i)>(start)) { U16_BACK_1(s, start, i); --__N; } }
34955 # 587 "/usr/include/unicode/utf16.h" 3 4
34956 #define U16_SET_CP_LIMIT_UNSAFE(s,i) { if(U16_IS_LEAD((s)[(i)-1])) { ++(i); } }
34957 # 608 "/usr/include/unicode/utf16.h" 3 4
34958 #define U16_SET_CP_LIMIT(s,start,i,length) { if((start)<(i) && (i)<(length) && U16_IS_LEAD((s)[(i)-1]) && U16_IS_TRAIL((s)[i])) { ++(i); } }
34959 # 232 "/usr/include/unicode/utf.h" 2 3 4
34960
34961
34962 # 1 "/usr/include/unicode/utf_old.h" 1 3 4
34963 # 147 "/usr/include/unicode/utf_old.h" 3 4
34964 #define __UTF_OLD_H__
34965 # 170 "/usr/include/unicode/utf_old.h" 3 4
34966 #define UTF_SIZE 16
34967
34968
34969
34970
34971
34972
34973
34974 #define UTF_SAFE
34975
34976 #undef UTF_UNSAFE
34977
34978 #undef UTF_STRICT
34979 # 198 "/usr/include/unicode/utf_old.h" 3 4
34980 #define UTF8_ERROR_VALUE_1 0x15
34981
34982
34983
34984
34985
34986
34987 #define UTF8_ERROR_VALUE_2 0x9f
34988
34989
34990
34991
34992
34993
34994
34995 #define UTF_ERROR_VALUE 0xffff
34996
34997
34998
34999
35000
35001
35002
35003 #define UTF_IS_ERROR(c) (((c)&0xfffe)==0xfffe || (c)==UTF8_ERROR_VALUE_1 || (c)==UTF8_ERROR_VALUE_2)
35004
35005
35006
35007
35008
35009
35010
35011 #define UTF_IS_VALID(c) (UTF_IS_UNICODE_CHAR(c) && (c)!=UTF8_ERROR_VALUE_1 && (c)!=UTF8_ERROR_VALUE_2)
35012
35013
35014
35015
35016
35017
35018
35019 #define UTF_IS_SURROGATE(uchar) (((uchar)&0xfffff800)==0xd800)
35020
35021
35022
35023
35024
35025
35026 #define UTF_IS_UNICODE_NONCHAR(c) ((c)>=0xfdd0 && ((uint32_t)(c)<=0xfdef || ((c)&0xfffe)==0xfffe) && (uint32_t)(c)<=0x10ffff)
35027 # 264 "/usr/include/unicode/utf_old.h" 3 4
35028 #define UTF_IS_UNICODE_CHAR(c) ((uint32_t)(c)<0xd800 || ((uint32_t)(c)>0xdfff && (uint32_t)(c)<=0x10ffff && !UTF_IS_UNICODE_NONCHAR(c)))
35029 # 276 "/usr/include/unicode/utf_old.h" 3 4
35030 #define UTF8_COUNT_TRAIL_BYTES(leadByte) (utf8_countTrailBytes[(uint8_t)leadByte])
35031
35032
35033
35034
35035
35036 #define UTF8_MASK_LEAD_BYTE(leadByte,countTrailBytes) ((leadByte)&=(1<<(6-(countTrailBytes)))-1)
35037
35038
35039 #define UTF8_IS_SINGLE(uchar) (((uchar)&0x80)==0)
35040
35041 #define UTF8_IS_LEAD(uchar) ((uint8_t)((uchar)-0xc0)<0x3e)
35042
35043 #define UTF8_IS_TRAIL(uchar) (((uchar)&0xc0)==0x80)
35044
35045
35046 #define UTF8_NEED_MULTIPLE_UCHAR(c) ((uint32_t)(c)>0x7f)
35047 # 308 "/usr/include/unicode/utf_old.h" 3 4
35048 #define UTF8_CHAR_LENGTH(c) ((uint32_t)(c)<=0x7f ? 1 : ((uint32_t)(c)<=0x7ff ? 2 : ((uint32_t)((c)-0x10000)>0xfffff ? 3 : 4) ) )
35049 # 330 "/usr/include/unicode/utf_old.h" 3 4
35050 #define UTF8_MAX_CHAR_LENGTH 4
35051
35052
35053 #define UTF8_ARRAY_SIZE(size) ((5*(size))/2)
35054
35055
35056 #define UTF8_GET_CHAR_UNSAFE(s,i,c) { int32_t _utf8_get_char_unsafe_index=(int32_t)(i); UTF8_SET_CHAR_START_UNSAFE(s, _utf8_get_char_unsafe_index); UTF8_NEXT_CHAR_UNSAFE(s, _utf8_get_char_unsafe_index, c); }
35057
35058
35059
35060
35061
35062
35063 #define UTF8_GET_CHAR_SAFE(s,start,i,length,c,strict) { int32_t _utf8_get_char_safe_index=(int32_t)(i); UTF8_SET_CHAR_START_SAFE(s, start, _utf8_get_char_safe_index); UTF8_NEXT_CHAR_SAFE(s, _utf8_get_char_safe_index, length, c, strict); }
35064
35065
35066
35067
35068
35069
35070 #define UTF8_NEXT_CHAR_UNSAFE(s,i,c) { (c)=(s)[(i)++]; if((uint8_t)((c)-0xc0)<0x35) { uint8_t __count=UTF8_COUNT_TRAIL_BYTES(c); UTF8_MASK_LEAD_BYTE(c, __count); switch(__count) { case 3: (c)=((c)<<6)|((s)[(i)++]&0x3f); case 2: (c)=((c)<<6)|((s)[(i)++]&0x3f); case 1: (c)=((c)<<6)|((s)[(i)++]&0x3f); break; } } }
35071 # 370 "/usr/include/unicode/utf_old.h" 3 4
35072 #define UTF8_APPEND_CHAR_UNSAFE(s,i,c) { if((uint32_t)(c)<=0x7f) { (s)[(i)++]=(uint8_t)(c); } else { if((uint32_t)(c)<=0x7ff) { (s)[(i)++]=(uint8_t)(((c)>>6)|0xc0); } else { if((uint32_t)(c)<=0xffff) { (s)[(i)++]=(uint8_t)(((c)>>12)|0xe0); } else { (s)[(i)++]=(uint8_t)(((c)>>18)|0xf0); (s)[(i)++]=(uint8_t)((((c)>>12)&0x3f)|0x80); } (s)[(i)++]=(uint8_t)((((c)>>6)&0x3f)|0x80); } (s)[(i)++]=(uint8_t)(((c)&0x3f)|0x80); } }
35073 # 390 "/usr/include/unicode/utf_old.h" 3 4
35074 #define UTF8_FWD_1_UNSAFE(s,i) { (i)+=1+UTF8_COUNT_TRAIL_BYTES((s)[i]); }
35075
35076
35077
35078
35079 #define UTF8_FWD_N_UNSAFE(s,i,n) { int32_t __N=(n); while(__N>0) { UTF8_FWD_1_UNSAFE(s, i); --__N; } }
35080 # 404 "/usr/include/unicode/utf_old.h" 3 4
35081 #define UTF8_SET_CHAR_START_UNSAFE(s,i) { while(UTF8_IS_TRAIL((s)[i])) { --(i); } }
35082
35083
35084
35085
35086 #define UTF8_NEXT_CHAR_SAFE(s,i,length,c,strict) { (c)=(s)[(i)++]; if((c)>=0x80) { if(UTF8_IS_LEAD(c)) { (c)=utf8_nextCharSafeBody(s, &(i), (int32_t)(length), c, strict); } else { (c)=UTF8_ERROR_VALUE_1; } } }
35087 # 421 "/usr/include/unicode/utf_old.h" 3 4
35088 #define UTF8_APPEND_CHAR_SAFE(s,i,length,c) { if((uint32_t)(c)<=0x7f) { (s)[(i)++]=(uint8_t)(c); } else { (i)=utf8_appendCharSafeBody(s, (int32_t)(i), (int32_t)(length), c, NULL); } }
35089 # 430 "/usr/include/unicode/utf_old.h" 3 4
35090 #define UTF8_FWD_1_SAFE(s,i,length) U8_FWD_1(s, i, length)
35091
35092
35093 #define UTF8_FWD_N_SAFE(s,i,length,n) U8_FWD_N(s, i, length, n)
35094
35095
35096 #define UTF8_SET_CHAR_START_SAFE(s,start,i) U8_SET_CP_START(s, start, i)
35097
35098
35099 #define UTF8_PREV_CHAR_UNSAFE(s,i,c) { (c)=(s)[--(i)]; if(UTF8_IS_TRAIL(c)) { uint8_t __b, __count=1, __shift=6; (c)&=0x3f; for(;;) { __b=(s)[--(i)]; if(__b>=0xc0) { UTF8_MASK_LEAD_BYTE(__b, __count); (c)|=(UChar32)__b<<__shift; break; } else { (c)|=(UChar32)(__b&0x3f)<<__shift; ++__count; __shift+=6; } } } }
35100 # 462 "/usr/include/unicode/utf_old.h" 3 4
35101 #define UTF8_BACK_1_UNSAFE(s,i) { while(UTF8_IS_TRAIL((s)[--(i)])) {} }
35102
35103
35104
35105
35106 #define UTF8_BACK_N_UNSAFE(s,i,n) { int32_t __N=(n); while(__N>0) { UTF8_BACK_1_UNSAFE(s, i); --__N; } }
35107 # 476 "/usr/include/unicode/utf_old.h" 3 4
35108 #define UTF8_SET_CHAR_LIMIT_UNSAFE(s,i) { UTF8_BACK_1_UNSAFE(s, i); UTF8_FWD_1_UNSAFE(s, i); }
35109
35110
35111
35112
35113
35114 #define UTF8_PREV_CHAR_SAFE(s,start,i,c,strict) { (c)=(s)[--(i)]; if((c)>=0x80) { if((c)<=0xbf) { (c)=utf8_prevCharSafeBody(s, start, &(i), c, strict); } else { (c)=UTF8_ERROR_VALUE_1; } } }
35115 # 494 "/usr/include/unicode/utf_old.h" 3 4
35116 #define UTF8_BACK_1_SAFE(s,start,i) U8_BACK_1(s, start, i)
35117
35118
35119 #define UTF8_BACK_N_SAFE(s,start,i,n) U8_BACK_N(s, start, i, n)
35120
35121
35122 #define UTF8_SET_CHAR_LIMIT_SAFE(s,start,i,length) U8_SET_CP_LIMIT(s, start, i, length)
35123
35124
35125
35126
35127 #define UTF_IS_FIRST_SURROGATE(uchar) (((uchar)&0xfffffc00)==0xd800)
35128
35129
35130 #define UTF_IS_SECOND_SURROGATE(uchar) (((uchar)&0xfffffc00)==0xdc00)
35131
35132
35133 #define UTF_IS_SURROGATE_FIRST(c) (((c)&0x400)==0)
35134
35135
35136 #define UTF_SURROGATE_OFFSET ((0xd800<<10UL)+0xdc00-0x10000)
35137
35138
35139 #define UTF16_GET_PAIR_VALUE(first,second) (((first)<<10UL)+(second)-UTF_SURROGATE_OFFSET)
35140
35141
35142
35143 #define UTF_FIRST_SURROGATE(supplementary) (UChar)(((supplementary)>>10)+0xd7c0)
35144
35145
35146 #define UTF_SECOND_SURROGATE(supplementary) (UChar)(((supplementary)&0x3ff)|0xdc00)
35147
35148
35149 #define UTF16_LEAD(supplementary) UTF_FIRST_SURROGATE(supplementary)
35150
35151
35152 #define UTF16_TRAIL(supplementary) UTF_SECOND_SURROGATE(supplementary)
35153
35154
35155 #define UTF16_IS_SINGLE(uchar) !UTF_IS_SURROGATE(uchar)
35156
35157
35158 #define UTF16_IS_LEAD(uchar) UTF_IS_FIRST_SURROGATE(uchar)
35159
35160
35161 #define UTF16_IS_TRAIL(uchar) UTF_IS_SECOND_SURROGATE(uchar)
35162
35163
35164 #define UTF16_NEED_MULTIPLE_UCHAR(c) ((uint32_t)(c)>0xffff)
35165
35166
35167 #define UTF16_CHAR_LENGTH(c) ((uint32_t)(c)<=0xffff ? 1 : 2)
35168
35169
35170 #define UTF16_MAX_CHAR_LENGTH 2
35171
35172
35173 #define UTF16_ARRAY_SIZE(size) (size)
35174 # 564 "/usr/include/unicode/utf_old.h" 3 4
35175 #define UTF16_GET_CHAR_UNSAFE(s,i,c) { (c)=(s)[i]; if(UTF_IS_SURROGATE(c)) { if(UTF_IS_SURROGATE_FIRST(c)) { (c)=UTF16_GET_PAIR_VALUE((c), (s)[(i)+1]); } else { (c)=UTF16_GET_PAIR_VALUE((s)[(i)-1], (c)); } } }
35176 # 576 "/usr/include/unicode/utf_old.h" 3 4
35177 #define UTF16_GET_CHAR_SAFE(s,start,i,length,c,strict) { (c)=(s)[i]; if(UTF_IS_SURROGATE(c)) { uint16_t __c2; if(UTF_IS_SURROGATE_FIRST(c)) { if((i)+1<(length) && UTF_IS_SECOND_SURROGATE(__c2=(s)[(i)+1])) { (c)=UTF16_GET_PAIR_VALUE((c), __c2); } else if(strict) { (c)=UTF_ERROR_VALUE; } } else { if((i)-1>=(start) && UTF_IS_FIRST_SURROGATE(__c2=(s)[(i)-1])) { (c)=UTF16_GET_PAIR_VALUE(__c2, (c)); } else if(strict) { (c)=UTF_ERROR_VALUE; } } } else if((strict) && !UTF_IS_UNICODE_CHAR(c)) { (c)=UTF_ERROR_VALUE; } }
35178 # 603 "/usr/include/unicode/utf_old.h" 3 4
35179 #define UTF16_NEXT_CHAR_UNSAFE(s,i,c) { (c)=(s)[(i)++]; if(UTF_IS_FIRST_SURROGATE(c)) { (c)=UTF16_GET_PAIR_VALUE((c), (s)[(i)++]); } }
35180
35181
35182
35183
35184
35185
35186
35187 #define UTF16_APPEND_CHAR_UNSAFE(s,i,c) { if((uint32_t)(c)<=0xffff) { (s)[(i)++]=(uint16_t)(c); } else { (s)[(i)++]=(uint16_t)(((c)>>10)+0xd7c0); (s)[(i)++]=(uint16_t)(((c)&0x3ff)|0xdc00); } }
35188 # 621 "/usr/include/unicode/utf_old.h" 3 4
35189 #define UTF16_FWD_1_UNSAFE(s,i) { if(UTF_IS_FIRST_SURROGATE((s)[(i)++])) { ++(i); } }
35190
35191
35192
35193
35194
35195
35196 #define UTF16_FWD_N_UNSAFE(s,i,n) { int32_t __N=(n); while(__N>0) { UTF16_FWD_1_UNSAFE(s, i); --__N; } }
35197 # 637 "/usr/include/unicode/utf_old.h" 3 4
35198 #define UTF16_SET_CHAR_START_UNSAFE(s,i) { if(UTF_IS_SECOND_SURROGATE((s)[i])) { --(i); } }
35199
35200
35201
35202
35203
35204
35205 #define UTF16_NEXT_CHAR_SAFE(s,i,length,c,strict) { (c)=(s)[(i)++]; if(UTF_IS_FIRST_SURROGATE(c)) { uint16_t __c2; if((i)<(length) && UTF_IS_SECOND_SURROGATE(__c2=(s)[(i)])) { ++(i); (c)=UTF16_GET_PAIR_VALUE((c), __c2); } else if(strict) { (c)=UTF_ERROR_VALUE; } } else if((strict) && !UTF_IS_UNICODE_CHAR(c)) { (c)=UTF_ERROR_VALUE; } }
35206 # 663 "/usr/include/unicode/utf_old.h" 3 4
35207 #define UTF16_APPEND_CHAR_SAFE(s,i,length,c) { if((uint32_t)(c)<=0xffff) { (s)[(i)++]=(uint16_t)(c); } else if((uint32_t)(c)<=0x10ffff) { if((i)+1<(length)) { (s)[(i)++]=(uint16_t)(((c)>>10)+0xd7c0); (s)[(i)++]=(uint16_t)(((c)&0x3ff)|0xdc00); } else { (s)[(i)++]=UTF_ERROR_VALUE; } } else { (s)[(i)++]=UTF_ERROR_VALUE; } }
35208 # 679 "/usr/include/unicode/utf_old.h" 3 4
35209 #define UTF16_FWD_1_SAFE(s,i,length) U16_FWD_1(s, i, length)
35210
35211
35212 #define UTF16_FWD_N_SAFE(s,i,length,n) U16_FWD_N(s, i, length, n)
35213
35214
35215 #define UTF16_SET_CHAR_START_SAFE(s,start,i) U16_SET_CP_START(s, start, i)
35216
35217
35218 #define UTF16_PREV_CHAR_UNSAFE(s,i,c) { (c)=(s)[--(i)]; if(UTF_IS_SECOND_SURROGATE(c)) { (c)=UTF16_GET_PAIR_VALUE((s)[--(i)], (c)); } }
35219
35220
35221
35222
35223
35224
35225
35226 #define UTF16_BACK_1_UNSAFE(s,i) { if(UTF_IS_SECOND_SURROGATE((s)[--(i)])) { --(i); } }
35227
35228
35229
35230
35231
35232
35233 #define UTF16_BACK_N_UNSAFE(s,i,n) { int32_t __N=(n); while(__N>0) { UTF16_BACK_1_UNSAFE(s, i); --__N; } }
35234 # 712 "/usr/include/unicode/utf_old.h" 3 4
35235 #define UTF16_SET_CHAR_LIMIT_UNSAFE(s,i) { if(UTF_IS_FIRST_SURROGATE((s)[(i)-1])) { ++(i); } }
35236
35237
35238
35239
35240
35241
35242 #define UTF16_PREV_CHAR_SAFE(s,start,i,c,strict) { (c)=(s)[--(i)]; if(UTF_IS_SECOND_SURROGATE(c)) { uint16_t __c2; if((i)>(start) && UTF_IS_FIRST_SURROGATE(__c2=(s)[(i)-1])) { --(i); (c)=UTF16_GET_PAIR_VALUE(__c2, (c)); } else if(strict) { (c)=UTF_ERROR_VALUE; } } else if((strict) && !UTF_IS_UNICODE_CHAR(c)) { (c)=UTF_ERROR_VALUE; } }
35243 # 738 "/usr/include/unicode/utf_old.h" 3 4
35244 #define UTF16_BACK_1_SAFE(s,start,i) U16_BACK_1(s, start, i)
35245
35246
35247 #define UTF16_BACK_N_SAFE(s,start,i,n) U16_BACK_N(s, start, i, n)
35248
35249
35250 #define UTF16_SET_CHAR_LIMIT_SAFE(s,start,i,length) U16_SET_CP_LIMIT(s, start, i, length)
35251 # 764 "/usr/include/unicode/utf_old.h" 3 4
35252 #define UTF32_IS_SAFE(c,strict) (!(strict) ? (uint32_t)(c)<=0x10ffff : UTF_IS_UNICODE_CHAR(c))
35253 # 780 "/usr/include/unicode/utf_old.h" 3 4
35254 #define UTF32_IS_SINGLE(uchar) 1
35255
35256 #define UTF32_IS_LEAD(uchar) 0
35257
35258 #define UTF32_IS_TRAIL(uchar) 0
35259
35260
35261
35262
35263 #define UTF32_NEED_MULTIPLE_UCHAR(c) 0
35264
35265 #define UTF32_CHAR_LENGTH(c) 1
35266
35267 #define UTF32_MAX_CHAR_LENGTH 1
35268
35269
35270
35271
35272 #define UTF32_ARRAY_SIZE(size) (size)
35273
35274
35275 #define UTF32_GET_CHAR_UNSAFE(s,i,c) { (c)=(s)[i]; }
35276
35277
35278
35279
35280 #define UTF32_GET_CHAR_SAFE(s,start,i,length,c,strict) { (c)=(s)[i]; if(!UTF32_IS_SAFE(c, strict)) { (c)=UTF_ERROR_VALUE; } }
35281 # 816 "/usr/include/unicode/utf_old.h" 3 4
35282 #define UTF32_NEXT_CHAR_UNSAFE(s,i,c) { (c)=(s)[(i)++]; }
35283
35284
35285
35286
35287 #define UTF32_APPEND_CHAR_UNSAFE(s,i,c) { (s)[(i)++]=(c); }
35288
35289
35290
35291
35292 #define UTF32_FWD_1_UNSAFE(s,i) { ++(i); }
35293
35294
35295
35296
35297 #define UTF32_FWD_N_UNSAFE(s,i,n) { (i)+=(n); }
35298
35299
35300
35301
35302 #define UTF32_SET_CHAR_START_UNSAFE(s,i) { }
35303
35304
35305
35306 #define UTF32_NEXT_CHAR_SAFE(s,i,length,c,strict) { (c)=(s)[(i)++]; if(!UTF32_IS_SAFE(c, strict)) { (c)=UTF_ERROR_VALUE; } }
35307
35308
35309
35310
35311
35312
35313
35314 #define UTF32_APPEND_CHAR_SAFE(s,i,length,c) { if((uint32_t)(c)<=0x10ffff) { (s)[(i)++]=(c); } else { (s)[(i)++]=0xfffd; } }
35315 # 857 "/usr/include/unicode/utf_old.h" 3 4
35316 #define UTF32_FWD_1_SAFE(s,i,length) { ++(i); }
35317
35318
35319
35320
35321 #define UTF32_FWD_N_SAFE(s,i,length,n) { if(((i)+=(n))>(length)) { (i)=(length); } }
35322
35323
35324
35325
35326
35327
35328 #define UTF32_SET_CHAR_START_SAFE(s,start,i) { }
35329
35330
35331
35332
35333
35334 #define UTF32_PREV_CHAR_UNSAFE(s,i,c) { (c)=(s)[--(i)]; }
35335
35336
35337
35338
35339 #define UTF32_BACK_1_UNSAFE(s,i) { --(i); }
35340
35341
35342
35343
35344 #define UTF32_BACK_N_UNSAFE(s,i,n) { (i)-=(n); }
35345
35346
35347
35348
35349 #define UTF32_SET_CHAR_LIMIT_UNSAFE(s,i) { }
35350
35351
35352
35353 #define UTF32_PREV_CHAR_SAFE(s,start,i,c,strict) { (c)=(s)[--(i)]; if(!UTF32_IS_SAFE(c, strict)) { (c)=UTF_ERROR_VALUE; } }
35354
35355
35356
35357
35358
35359
35360
35361 #define UTF32_BACK_1_SAFE(s,start,i) { --(i); }
35362
35363
35364
35365
35366 #define UTF32_BACK_N_SAFE(s,start,i,n) { (i)-=(n); if((i)<(start)) { (i)=(start); } }
35367
35368
35369
35370
35371
35372
35373
35374 #define UTF32_SET_CHAR_LIMIT_SAFE(s,i,length) { }
35375 # 925 "/usr/include/unicode/utf_old.h" 3 4
35376 #define UTF_ARRAY_SIZE(size) UTF16_ARRAY_SIZE(size)
35377
35378
35379 #define UTF_GET_CHAR_UNSAFE(s,i,c) UTF16_GET_CHAR_UNSAFE(s, i, c)
35380
35381
35382 #define UTF_GET_CHAR_SAFE(s,start,i,length,c,strict) UTF16_GET_CHAR_SAFE(s, start, i, length, c, strict)
35383
35384
35385
35386 #define UTF_NEXT_CHAR_UNSAFE(s,i,c) UTF16_NEXT_CHAR_UNSAFE(s, i, c)
35387
35388
35389 #define UTF_NEXT_CHAR_SAFE(s,i,length,c,strict) UTF16_NEXT_CHAR_SAFE(s, i, length, c, strict)
35390
35391
35392
35393 #define UTF_APPEND_CHAR_UNSAFE(s,i,c) UTF16_APPEND_CHAR_UNSAFE(s, i, c)
35394
35395
35396 #define UTF_APPEND_CHAR_SAFE(s,i,length,c) UTF16_APPEND_CHAR_SAFE(s, i, length, c)
35397
35398
35399
35400 #define UTF_FWD_1_UNSAFE(s,i) UTF16_FWD_1_UNSAFE(s, i)
35401
35402
35403 #define UTF_FWD_1_SAFE(s,i,length) UTF16_FWD_1_SAFE(s, i, length)
35404
35405
35406
35407 #define UTF_FWD_N_UNSAFE(s,i,n) UTF16_FWD_N_UNSAFE(s, i, n)
35408
35409
35410 #define UTF_FWD_N_SAFE(s,i,length,n) UTF16_FWD_N_SAFE(s, i, length, n)
35411
35412
35413
35414 #define UTF_SET_CHAR_START_UNSAFE(s,i) UTF16_SET_CHAR_START_UNSAFE(s, i)
35415
35416
35417 #define UTF_SET_CHAR_START_SAFE(s,start,i) UTF16_SET_CHAR_START_SAFE(s, start, i)
35418
35419
35420
35421 #define UTF_PREV_CHAR_UNSAFE(s,i,c) UTF16_PREV_CHAR_UNSAFE(s, i, c)
35422
35423
35424 #define UTF_PREV_CHAR_SAFE(s,start,i,c,strict) UTF16_PREV_CHAR_SAFE(s, start, i, c, strict)
35425
35426
35427
35428 #define UTF_BACK_1_UNSAFE(s,i) UTF16_BACK_1_UNSAFE(s, i)
35429
35430
35431 #define UTF_BACK_1_SAFE(s,start,i) UTF16_BACK_1_SAFE(s, start, i)
35432
35433
35434
35435 #define UTF_BACK_N_UNSAFE(s,i,n) UTF16_BACK_N_UNSAFE(s, i, n)
35436
35437
35438 #define UTF_BACK_N_SAFE(s,start,i,n) UTF16_BACK_N_SAFE(s, start, i, n)
35439
35440
35441
35442 #define UTF_SET_CHAR_LIMIT_UNSAFE(s,i) UTF16_SET_CHAR_LIMIT_UNSAFE(s, i)
35443
35444
35445 #define UTF_SET_CHAR_LIMIT_SAFE(s,start,i,length) UTF16_SET_CHAR_LIMIT_SAFE(s, start, i, length)
35446 # 1003 "/usr/include/unicode/utf_old.h" 3 4
35447 #define UTF_IS_SINGLE(uchar) U16_IS_SINGLE(uchar)
35448
35449
35450
35451
35452
35453
35454 #define UTF_IS_LEAD(uchar) U16_IS_LEAD(uchar)
35455
35456
35457
35458
35459
35460
35461 #define UTF_IS_TRAIL(uchar) U16_IS_TRAIL(uchar)
35462
35463
35464
35465
35466
35467
35468 #define UTF_NEED_MULTIPLE_UCHAR(c) UTF16_NEED_MULTIPLE_UCHAR(c)
35469
35470
35471
35472
35473
35474
35475 #define UTF_CHAR_LENGTH(c) U16_LENGTH(c)
35476
35477
35478
35479
35480
35481
35482 #define UTF_MAX_CHAR_LENGTH U16_MAX_LENGTH
35483 # 1049 "/usr/include/unicode/utf_old.h" 3 4
35484 #define UTF_GET_CHAR(s,start,i,length,c) U16_GET(s, start, i, length, c)
35485 # 1062 "/usr/include/unicode/utf_old.h" 3 4
35486 #define UTF_NEXT_CHAR(s,i,length,c) U16_NEXT(s, i, length, c)
35487 # 1075 "/usr/include/unicode/utf_old.h" 3 4
35488 #define UTF_APPEND_CHAR(s,i,length,c) UTF16_APPEND_CHAR_SAFE(s, i, length, c)
35489 # 1086 "/usr/include/unicode/utf_old.h" 3 4
35490 #define UTF_FWD_1(s,i,length) U16_FWD_1(s, i, length)
35491 # 1097 "/usr/include/unicode/utf_old.h" 3 4
35492 #define UTF_FWD_N(s,i,length,n) U16_FWD_N(s, i, length, n)
35493 # 1113 "/usr/include/unicode/utf_old.h" 3 4
35494 #define UTF_SET_CHAR_START(s,start,i) U16_SET_CP_START(s, start, i)
35495 # 1126 "/usr/include/unicode/utf_old.h" 3 4
35496 #define UTF_PREV_CHAR(s,start,i,c) U16_PREV(s, start, i, c)
35497 # 1139 "/usr/include/unicode/utf_old.h" 3 4
35498 #define UTF_BACK_1(s,start,i) U16_BACK_1(s, start, i)
35499 # 1152 "/usr/include/unicode/utf_old.h" 3 4
35500 #define UTF_BACK_N(s,start,i,n) U16_BACK_N(s, start, i, n)
35501 # 1168 "/usr/include/unicode/utf_old.h" 3 4
35502 #define UTF_SET_CHAR_LIMIT(s,start,i,length) U16_SET_CP_LIMIT(s, start, i, length)
35503 # 235 "/usr/include/unicode/utf.h" 2 3 4
35504 # 38 "/usr/include/unicode/utypes.h" 2 3 4
35505 # 1 "/usr/include/unicode/uversion.h" 1 3 4
35506 # 26 "/usr/include/unicode/uversion.h" 3 4
35507 #define UVERSION_H
35508 # 36 "/usr/include/unicode/uversion.h" 3 4
35509 #define U_COPYRIGHT_STRING_LENGTH 128
35510
35511
35512
35513
35514 #define U_MAX_VERSION_LENGTH 4
35515
35516
35517
35518
35519 #define U_VERSION_DELIMITER '.'
35520
35521
35522
35523
35524 #define U_MAX_VERSION_STRING_LENGTH 20
35525
35526
35527
35528
35529
35530 typedef uint8_t UVersionInfo[4];
35531 # 108 "/usr/include/unicode/uversion.h" 3 4
35532 #define U_ICU_NAMESPACE U_ICU_ENTRY_POINT_RENAME(icu)
35533 namespace icu_48 { }
35534 namespace icu = icu_48;
35535
35536
35537 #define U_NAMESPACE_BEGIN extern "C++" { namespace U_ICU_NAMESPACE {
35538 #define U_NAMESPACE_END } }
35539 #define U_NAMESPACE_USE using namespace U_ICU_NAMESPACE;
35540 #define U_NAMESPACE_QUALIFIER U_ICU_NAMESPACE::
35541
35542
35543 #define U_USING_ICU_NAMESPACE 1
35544
35545
35546 using namespace icu_48;
35547 # 152 "/usr/include/unicode/uversion.h" 3 4
35548 extern "C" __attribute__((visibility("default"))) void
35549 u_versionFromString_48(UVersionInfo versionArray, const char *versionString);
35550 # 166 "/usr/include/unicode/uversion.h" 3 4
35551 extern "C" __attribute__((visibility("default"))) void
35552 u_versionFromUString_48(UVersionInfo versionArray, const UChar *versionString);
35553 # 182 "/usr/include/unicode/uversion.h" 3 4
35554 extern "C" __attribute__((visibility("default"))) void
35555 u_versionToString_48(UVersionInfo versionArray, char *versionString);
35556 # 193 "/usr/include/unicode/uversion.h" 3 4
35557 extern "C" __attribute__((visibility("default"))) void
35558 u_getVersion_48(UVersionInfo versionArray);
35559 # 39 "/usr/include/unicode/utypes.h" 2 3 4
35560 # 1 "/usr/include/unicode/uconfig.h" 1 3 4
35561 # 16 "/usr/include/unicode/uconfig.h" 3 4
35562 #define __UCONFIG_H__
35563 # 61 "/usr/include/unicode/uconfig.h" 3 4
35564 #define UCONFIG_ONLY_COLLATION 0
35565 # 99 "/usr/include/unicode/uconfig.h" 3 4
35566 #define UCONFIG_NO_FILE_IO 0
35567 # 114 "/usr/include/unicode/uconfig.h" 3 4
35568 #define UCONFIG_NO_CONVERSION 0
35569 # 134 "/usr/include/unicode/uconfig.h" 3 4
35570 #define UCONFIG_NO_LEGACY_CONVERSION 0
35571 # 146 "/usr/include/unicode/uconfig.h" 3 4
35572 #define UCONFIG_NO_NORMALIZATION 0
35573 # 166 "/usr/include/unicode/uconfig.h" 3 4
35574 #define UCONFIG_NO_BREAK_ITERATION 0
35575 # 176 "/usr/include/unicode/uconfig.h" 3 4
35576 #define UCONFIG_NO_IDNA 0
35577 # 187 "/usr/include/unicode/uconfig.h" 3 4
35578 #define UCONFIG_MSGPAT_DEFAULT_APOSTROPHE_MODE UMSGPAT_APOS_DOUBLE_OPTIONAL
35579 # 199 "/usr/include/unicode/uconfig.h" 3 4
35580 #define UCONFIG_NO_COLLATION 0
35581 # 209 "/usr/include/unicode/uconfig.h" 3 4
35582 #define UCONFIG_NO_FORMATTING 0
35583 # 219 "/usr/include/unicode/uconfig.h" 3 4
35584 #define UCONFIG_NO_TRANSLITERATION 0
35585 # 229 "/usr/include/unicode/uconfig.h" 3 4
35586 #define UCONFIG_NO_REGULAR_EXPRESSIONS 0
35587 # 239 "/usr/include/unicode/uconfig.h" 3 4
35588 #define UCONFIG_NO_SERVICE 0
35589 # 40 "/usr/include/unicode/utypes.h" 2 3 4
35590 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/float.h" 1 3 4
35591 # 29 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/float.h" 3 4
35592 #define _FLOAT_H___
35593
35594
35595 #undef FLT_RADIX
35596 #define FLT_RADIX __FLT_RADIX__
35597
35598
35599 #undef FLT_MANT_DIG
35600 #undef DBL_MANT_DIG
35601 #undef LDBL_MANT_DIG
35602 #define FLT_MANT_DIG __FLT_MANT_DIG__
35603 #define DBL_MANT_DIG __DBL_MANT_DIG__
35604 #define LDBL_MANT_DIG __LDBL_MANT_DIG__
35605 # 50 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/float.h" 3 4
35606 #undef FLT_DIG
35607 #undef DBL_DIG
35608 #undef LDBL_DIG
35609 #define FLT_DIG __FLT_DIG__
35610 #define DBL_DIG __DBL_DIG__
35611 #define LDBL_DIG __LDBL_DIG__
35612
35613
35614 #undef FLT_MIN_EXP
35615 #undef DBL_MIN_EXP
35616 #undef LDBL_MIN_EXP
35617 #define FLT_MIN_EXP __FLT_MIN_EXP__
35618 #define DBL_MIN_EXP __DBL_MIN_EXP__
35619 #define LDBL_MIN_EXP __LDBL_MIN_EXP__
35620
35621
35622
35623
35624
35625
35626 #undef FLT_MIN_10_EXP
35627 #undef DBL_MIN_10_EXP
35628 #undef LDBL_MIN_10_EXP
35629 #define FLT_MIN_10_EXP __FLT_MIN_10_EXP__
35630 #define DBL_MIN_10_EXP __DBL_MIN_10_EXP__
35631 #define LDBL_MIN_10_EXP __LDBL_MIN_10_EXP__
35632
35633
35634 #undef FLT_MAX_EXP
35635 #undef DBL_MAX_EXP
35636 #undef LDBL_MAX_EXP
35637 #define FLT_MAX_EXP __FLT_MAX_EXP__
35638 #define DBL_MAX_EXP __DBL_MAX_EXP__
35639 #define LDBL_MAX_EXP __LDBL_MAX_EXP__
35640
35641
35642
35643
35644
35645
35646 #undef FLT_MAX_10_EXP
35647 #undef DBL_MAX_10_EXP
35648 #undef LDBL_MAX_10_EXP
35649 #define FLT_MAX_10_EXP __FLT_MAX_10_EXP__
35650 #define DBL_MAX_10_EXP __DBL_MAX_10_EXP__
35651 #define LDBL_MAX_10_EXP __LDBL_MAX_10_EXP__
35652
35653
35654
35655
35656
35657 #undef FLT_MAX
35658 #undef DBL_MAX
35659 #undef LDBL_MAX
35660 #define FLT_MAX __FLT_MAX__
35661 #define DBL_MAX __DBL_MAX__
35662 #define LDBL_MAX __LDBL_MAX__
35663
35664
35665
35666 #undef FLT_EPSILON
35667 #undef DBL_EPSILON
35668 #undef LDBL_EPSILON
35669 #define FLT_EPSILON __FLT_EPSILON__
35670 #define DBL_EPSILON __DBL_EPSILON__
35671 #define LDBL_EPSILON __LDBL_EPSILON__
35672
35673
35674 #undef FLT_MIN
35675 #undef DBL_MIN
35676 #undef LDBL_MIN
35677 #define FLT_MIN __FLT_MIN__
35678 #define DBL_MIN __DBL_MIN__
35679 #define LDBL_MIN __LDBL_MIN__
35680
35681
35682
35683 #undef FLT_ROUNDS
35684 #define FLT_ROUNDS 1
35685 # 41 "/usr/include/unicode/utypes.h" 2 3 4
35686 # 59 "/usr/include/unicode/utypes.h" 3 4
35687 #define U_SHOW_CPLUSPLUS_API 1
35688 # 116 "/usr/include/unicode/utypes.h" 3 4
35689 #define U_ASCII_FAMILY 0
35690
35691
35692
35693
35694
35695 #define U_EBCDIC_FAMILY 1
35696 # 168 "/usr/include/unicode/utypes.h" 3 4
35697 #define U_CHARSET_FAMILY 0
35698 # 192 "/usr/include/unicode/utypes.h" 3 4
35699 #define U_CHARSET_IS_UTF8 0
35700 # 232 "/usr/include/unicode/utypes.h" 3 4
35701 #define U_ICUDATA_TYPE_LETTER "l"
35702 #define U_ICUDATA_TYPE_LITLETTER l
35703 # 242 "/usr/include/unicode/utypes.h" 3 4
35704 #define U_ICUDATA_NAME "icudt" U_ICU_VERSION_SHORT U_ICUDATA_TYPE_LETTER
35705 #define U_USRDATA_NAME "usrdt" U_ICU_VERSION_SHORT U_ICUDATA_TYPE_LETTER
35706 #define U_USE_USRDATA 1
35707 # 257 "/usr/include/unicode/utypes.h" 3 4
35708 #define U_ICUDATA_ENTRY_POINT U_DEF2_ICUDATA_ENTRY_POINT(U_ICU_VERSION_MAJOR_NUM, U_ICU_VERSION_MINOR_NUM)
35709
35710
35711
35712
35713
35714 #define U_DEF2_ICUDATA_ENTRY_POINT(major,minor) U_DEF_ICUDATA_ENTRY_POINT(major, minor)
35715
35716
35717
35718
35719
35720
35721 #define U_DEF_ICUDATA_ENTRY_POINT(major,minor) icudt ##major ##minor ##_dat
35722 # 287 "/usr/include/unicode/utypes.h" 3 4
35723 #define U_CALLCONV U_EXPORT2
35724 # 314 "/usr/include/unicode/utypes.h" 3 4
35725 typedef double UDate;
35726
35727
35728 #define U_MILLIS_PER_SECOND (1000)
35729
35730 #define U_MILLIS_PER_MINUTE (60000)
35731
35732 #define U_MILLIS_PER_HOUR (3600000)
35733
35734 #define U_MILLIS_PER_DAY (86400000)
35735
35736
35737
35738
35739
35740 #define U_DATE_MAX DBL_MAX
35741
35742
35743
35744
35745
35746 #define U_DATE_MIN -U_DATE_MAX
35747 # 385 "/usr/include/unicode/utypes.h" 3 4
35748 typedef void* UClassID;
35749 # 519 "/usr/include/unicode/utypes.h" 3 4
35750 #define U_DATA_API U_IMPORT
35751 #define U_COMMON_API U_IMPORT
35752 #define U_I18N_API U_IMPORT
35753 #define U_LAYOUT_API U_IMPORT
35754 #define U_LAYOUTEX_API U_IMPORT
35755 #define U_IO_API U_IMPORT
35756 #define U_TOOLUTIL_API U_IMPORT
35757 # 534 "/usr/include/unicode/utypes.h" 3 4
35758 #define U_STANDARD_CPP_NAMESPACE ::
35759 # 639 "/usr/include/unicode/utypes.h" 3 4
35760 typedef enum UErrorCode {
35761
35762
35763
35764
35765
35766 U_USING_FALLBACK_WARNING = -128,
35767
35768 U_ERROR_WARNING_START = -128,
35769
35770 U_USING_DEFAULT_WARNING = -127,
35771
35772 U_SAFECLONE_ALLOCATED_WARNING = -126,
35773
35774 U_STATE_OLD_WARNING = -125,
35775
35776 U_STRING_NOT_TERMINATED_WARNING = -124,
35777
35778 U_SORT_KEY_TOO_SHORT_WARNING = -123,
35779
35780 U_AMBIGUOUS_ALIAS_WARNING = -122,
35781
35782 U_DIFFERENT_UCA_VERSION = -121,
35783
35784 U_PLUGIN_CHANGED_LEVEL_WARNING = -120,
35785
35786 U_ERROR_WARNING_LIMIT,
35787
35788
35789 U_ZERO_ERROR = 0,
35790
35791 U_ILLEGAL_ARGUMENT_ERROR = 1,
35792 U_MISSING_RESOURCE_ERROR = 2,
35793 U_INVALID_FORMAT_ERROR = 3,
35794 U_FILE_ACCESS_ERROR = 4,
35795 U_INTERNAL_PROGRAM_ERROR = 5,
35796 U_MESSAGE_PARSE_ERROR = 6,
35797 U_MEMORY_ALLOCATION_ERROR = 7,
35798 U_INDEX_OUTOFBOUNDS_ERROR = 8,
35799 U_PARSE_ERROR = 9,
35800 U_INVALID_CHAR_FOUND = 10,
35801 U_TRUNCATED_CHAR_FOUND = 11,
35802 U_ILLEGAL_CHAR_FOUND = 12,
35803 U_INVALID_TABLE_FORMAT = 13,
35804 U_INVALID_TABLE_FILE = 14,
35805 U_BUFFER_OVERFLOW_ERROR = 15,
35806 U_UNSUPPORTED_ERROR = 16,
35807 U_RESOURCE_TYPE_MISMATCH = 17,
35808 U_ILLEGAL_ESCAPE_SEQUENCE = 18,
35809 U_UNSUPPORTED_ESCAPE_SEQUENCE = 19,
35810 U_NO_SPACE_AVAILABLE = 20,
35811 U_CE_NOT_FOUND_ERROR = 21,
35812 U_PRIMARY_TOO_LONG_ERROR = 22,
35813 U_STATE_TOO_OLD_ERROR = 23,
35814 U_TOO_MANY_ALIASES_ERROR = 24,
35815
35816 U_ENUM_OUT_OF_SYNC_ERROR = 25,
35817 U_INVARIANT_CONVERSION_ERROR = 26,
35818 U_INVALID_STATE_ERROR = 27,
35819 U_COLLATOR_VERSION_MISMATCH = 28,
35820 U_USELESS_COLLATOR_ERROR = 29,
35821 U_NO_WRITE_PERMISSION = 30,
35822
35823 U_STANDARD_ERROR_LIMIT,
35824
35825
35826
35827 U_BAD_VARIABLE_DEFINITION=0x10000,
35828 U_PARSE_ERROR_START = 0x10000,
35829 U_MALFORMED_RULE,
35830 U_MALFORMED_SET,
35831 U_MALFORMED_SYMBOL_REFERENCE,
35832 U_MALFORMED_UNICODE_ESCAPE,
35833 U_MALFORMED_VARIABLE_DEFINITION,
35834 U_MALFORMED_VARIABLE_REFERENCE,
35835 U_MISMATCHED_SEGMENT_DELIMITERS,
35836 U_MISPLACED_ANCHOR_START,
35837 U_MISPLACED_CURSOR_OFFSET,
35838 U_MISPLACED_QUANTIFIER,
35839 U_MISSING_OPERATOR,
35840 U_MISSING_SEGMENT_CLOSE,
35841 U_MULTIPLE_ANTE_CONTEXTS,
35842 U_MULTIPLE_CURSORS,
35843 U_MULTIPLE_POST_CONTEXTS,
35844 U_TRAILING_BACKSLASH,
35845 U_UNDEFINED_SEGMENT_REFERENCE,
35846 U_UNDEFINED_VARIABLE,
35847 U_UNQUOTED_SPECIAL,
35848 U_UNTERMINATED_QUOTE,
35849 U_RULE_MASK_ERROR,
35850 U_MISPLACED_COMPOUND_FILTER,
35851 U_MULTIPLE_COMPOUND_FILTERS,
35852 U_INVALID_RBT_SYNTAX,
35853 U_INVALID_PROPERTY_PATTERN,
35854 U_MALFORMED_PRAGMA,
35855 U_UNCLOSED_SEGMENT,
35856 U_ILLEGAL_CHAR_IN_SEGMENT,
35857 U_VARIABLE_RANGE_EXHAUSTED,
35858 U_VARIABLE_RANGE_OVERLAP,
35859 U_ILLEGAL_CHARACTER,
35860 U_INTERNAL_TRANSLITERATOR_ERROR,
35861 U_INVALID_ID,
35862 U_INVALID_FUNCTION,
35863 U_PARSE_ERROR_LIMIT,
35864
35865
35866
35867
35868 U_UNEXPECTED_TOKEN=0x10100,
35869 U_FMT_PARSE_ERROR_START=0x10100,
35870 U_MULTIPLE_DECIMAL_SEPARATORS,
35871 U_MULTIPLE_DECIMAL_SEPERATORS = U_MULTIPLE_DECIMAL_SEPARATORS,
35872 U_MULTIPLE_EXPONENTIAL_SYMBOLS,
35873 U_MALFORMED_EXPONENTIAL_PATTERN,
35874 U_MULTIPLE_PERCENT_SYMBOLS,
35875 U_MULTIPLE_PERMILL_SYMBOLS,
35876 U_MULTIPLE_PAD_SPECIFIERS,
35877 U_PATTERN_SYNTAX_ERROR,
35878 U_ILLEGAL_PAD_POSITION,
35879 U_UNMATCHED_BRACES,
35880 U_UNSUPPORTED_PROPERTY,
35881 U_UNSUPPORTED_ATTRIBUTE,
35882 U_ARGUMENT_TYPE_MISMATCH,
35883 U_DUPLICATE_KEYWORD,
35884 U_UNDEFINED_KEYWORD,
35885 U_DEFAULT_KEYWORD_MISSING,
35886 U_DECIMAL_NUMBER_SYNTAX_ERROR,
35887 U_FORMAT_INEXACT_ERROR,
35888 U_FMT_PARSE_ERROR_LIMIT,
35889
35890
35891
35892
35893 U_BRK_INTERNAL_ERROR=0x10200,
35894 U_BRK_ERROR_START=0x10200,
35895 U_BRK_HEX_DIGITS_EXPECTED,
35896 U_BRK_SEMICOLON_EXPECTED,
35897 U_BRK_RULE_SYNTAX,
35898 U_BRK_UNCLOSED_SET,
35899 U_BRK_ASSIGN_ERROR,
35900 U_BRK_VARIABLE_REDFINITION,
35901 U_BRK_MISMATCHED_PAREN,
35902 U_BRK_NEW_LINE_IN_QUOTED_STRING,
35903 U_BRK_UNDEFINED_VARIABLE,
35904 U_BRK_INIT_ERROR,
35905 U_BRK_RULE_EMPTY_SET,
35906 U_BRK_UNRECOGNIZED_OPTION,
35907 U_BRK_MALFORMED_RULE_TAG,
35908 U_BRK_ERROR_LIMIT,
35909
35910
35911
35912
35913 U_REGEX_INTERNAL_ERROR=0x10300,
35914 U_REGEX_ERROR_START=0x10300,
35915 U_REGEX_RULE_SYNTAX,
35916 U_REGEX_INVALID_STATE,
35917 U_REGEX_BAD_ESCAPE_SEQUENCE,
35918 U_REGEX_PROPERTY_SYNTAX,
35919 U_REGEX_UNIMPLEMENTED,
35920 U_REGEX_MISMATCHED_PAREN,
35921 U_REGEX_NUMBER_TOO_BIG,
35922 U_REGEX_BAD_INTERVAL,
35923 U_REGEX_MAX_LT_MIN,
35924 U_REGEX_INVALID_BACK_REF,
35925 U_REGEX_INVALID_FLAG,
35926 U_REGEX_LOOK_BEHIND_LIMIT,
35927 U_REGEX_SET_CONTAINS_STRING,
35928 U_REGEX_OCTAL_TOO_BIG,
35929 U_REGEX_MISSING_CLOSE_BRACKET,
35930 U_REGEX_INVALID_RANGE,
35931 U_REGEX_STACK_OVERFLOW,
35932 U_REGEX_TIME_OUT,
35933 U_REGEX_STOPPED_BY_CALLER,
35934 U_REGEX_ERROR_LIMIT,
35935
35936
35937
35938
35939 U_IDNA_PROHIBITED_ERROR=0x10400,
35940 U_IDNA_ERROR_START=0x10400,
35941 U_IDNA_UNASSIGNED_ERROR,
35942 U_IDNA_CHECK_BIDI_ERROR,
35943 U_IDNA_STD3_ASCII_RULES_ERROR,
35944 U_IDNA_ACE_PREFIX_ERROR,
35945 U_IDNA_VERIFICATION_ERROR,
35946 U_IDNA_LABEL_TOO_LONG_ERROR,
35947 U_IDNA_ZERO_LENGTH_LABEL_ERROR,
35948 U_IDNA_DOMAIN_NAME_TOO_LONG_ERROR,
35949 U_IDNA_ERROR_LIMIT,
35950
35951
35952
35953 U_STRINGPREP_PROHIBITED_ERROR = U_IDNA_PROHIBITED_ERROR,
35954 U_STRINGPREP_UNASSIGNED_ERROR = U_IDNA_UNASSIGNED_ERROR,
35955 U_STRINGPREP_CHECK_BIDI_ERROR = U_IDNA_CHECK_BIDI_ERROR,
35956
35957
35958
35959
35960 U_PLUGIN_ERROR_START=0x10500,
35961 U_PLUGIN_TOO_HIGH=0x10500,
35962 U_PLUGIN_DIDNT_SET_LEVEL,
35963 U_PLUGIN_ERROR_LIMIT,
35964
35965 U_ERROR_LIMIT=U_PLUGIN_ERROR_LIMIT
35966 } UErrorCode;
35967 # 855 "/usr/include/unicode/utypes.h" 3 4
35968 static
35969 inline UBool U_SUCCESS(UErrorCode code) { return (UBool)(code<=U_ZERO_ERROR); }
35970
35971
35972
35973
35974 static
35975 inline UBool U_FAILURE(UErrorCode code) { return (UBool)(code>U_ZERO_ERROR); }
35976 # 882 "/usr/include/unicode/utypes.h" 3 4
35977 extern "C" __attribute__((visibility("default"))) const char *
35978 u_errorName_48(UErrorCode code);
35979 # 87 "/usr/include/unicode/ucnv_err.h" 2 3 4
35980
35981
35982
35983
35984 struct UConverter;
35985
35986
35987 typedef struct UConverter UConverter;
35988
35989
35990
35991
35992
35993 #define UCNV_SUB_STOP_ON_ILLEGAL "i"
35994
35995
35996
35997
35998
35999 #define UCNV_SKIP_STOP_ON_ILLEGAL "i"
36000
36001
36002
36003
36004
36005 #define UCNV_ESCAPE_ICU NULL
36006
36007
36008
36009
36010 #define UCNV_ESCAPE_JAVA "J"
36011
36012
36013
36014
36015
36016 #define UCNV_ESCAPE_C "C"
36017
36018
36019
36020
36021
36022 #define UCNV_ESCAPE_XML_DEC "D"
36023
36024
36025
36026
36027
36028 #define UCNV_ESCAPE_XML_HEX "X"
36029
36030
36031
36032
36033 #define UCNV_ESCAPE_UNICODE "U"
36034
36035
36036
36037
36038
36039
36040 #define UCNV_ESCAPE_CSS2 "S"
36041
36042
36043
36044
36045
36046
36047
36048 typedef enum {
36049 UCNV_UNASSIGNED = 0,
36050
36051 UCNV_ILLEGAL = 1,
36052
36053
36054
36055
36056
36057
36058
36059 UCNV_IRREGULAR = 2,
36060
36061
36062
36063
36064 UCNV_RESET = 3,
36065
36066
36067 UCNV_CLOSE = 4,
36068
36069 UCNV_CLONE = 5
36070 # 185 "/usr/include/unicode/ucnv_err.h" 3 4
36071 } UConverterCallbackReason;
36072
36073
36074
36075
36076
36077
36078 typedef struct {
36079 uint16_t size;
36080 UBool flush;
36081 UConverter *converter;
36082 const UChar *source;
36083 const UChar *sourceLimit;
36084 char *target;
36085 const char *targetLimit;
36086 int32_t *offsets;
36087 } UConverterFromUnicodeArgs;
36088
36089
36090
36091
36092
36093
36094 typedef struct {
36095 uint16_t size;
36096 UBool flush;
36097 UConverter *converter;
36098 const char *source;
36099 const char *sourceLimit;
36100 UChar *target;
36101 const UChar *targetLimit;
36102 int32_t *offsets;
36103 } UConverterToUnicodeArgs;
36104 # 234 "/usr/include/unicode/ucnv_err.h" 3 4
36105 extern "C" __attribute__((visibility("default"))) void UCNV_FROM_U_CALLBACK_STOP_48 (
36106 const void *context,
36107 UConverterFromUnicodeArgs *fromUArgs,
36108 const UChar* codeUnits,
36109 int32_t length,
36110 UChar32 codePoint,
36111 UConverterCallbackReason reason,
36112 UErrorCode * err);
36113 # 258 "/usr/include/unicode/ucnv_err.h" 3 4
36114 extern "C" __attribute__((visibility("default"))) void UCNV_TO_U_CALLBACK_STOP_48 (
36115 const void *context,
36116 UConverterToUnicodeArgs *toUArgs,
36117 const char* codeUnits,
36118 int32_t length,
36119 UConverterCallbackReason reason,
36120 UErrorCode * err);
36121 # 285 "/usr/include/unicode/ucnv_err.h" 3 4
36122 extern "C" __attribute__((visibility("default"))) void UCNV_FROM_U_CALLBACK_SKIP_48 (
36123 const void *context,
36124 UConverterFromUnicodeArgs *fromUArgs,
36125 const UChar* codeUnits,
36126 int32_t length,
36127 UChar32 codePoint,
36128 UConverterCallbackReason reason,
36129 UErrorCode * err);
36130 # 315 "/usr/include/unicode/ucnv_err.h" 3 4
36131 extern "C" __attribute__((visibility("default"))) void UCNV_FROM_U_CALLBACK_SUBSTITUTE_48 (
36132 const void *context,
36133 UConverterFromUnicodeArgs *fromUArgs,
36134 const UChar* codeUnits,
36135 int32_t length,
36136 UChar32 codePoint,
36137 UConverterCallbackReason reason,
36138 UErrorCode * err);
36139 # 371 "/usr/include/unicode/ucnv_err.h" 3 4
36140 extern "C" __attribute__((visibility("default"))) void UCNV_FROM_U_CALLBACK_ESCAPE_48 (
36141 const void *context,
36142 UConverterFromUnicodeArgs *fromUArgs,
36143 const UChar* codeUnits,
36144 int32_t length,
36145 UChar32 codePoint,
36146 UConverterCallbackReason reason,
36147 UErrorCode * err);
36148 # 399 "/usr/include/unicode/ucnv_err.h" 3 4
36149 extern "C" __attribute__((visibility("default"))) void UCNV_TO_U_CALLBACK_SKIP_48 (
36150 const void *context,
36151 UConverterToUnicodeArgs *toUArgs,
36152 const char* codeUnits,
36153 int32_t length,
36154 UConverterCallbackReason reason,
36155 UErrorCode * err);
36156 # 425 "/usr/include/unicode/ucnv_err.h" 3 4
36157 extern "C" __attribute__((visibility("default"))) void UCNV_TO_U_CALLBACK_SUBSTITUTE_48 (
36158 const void *context,
36159 UConverterToUnicodeArgs *toUArgs,
36160 const char* codeUnits,
36161 int32_t length,
36162 UConverterCallbackReason reason,
36163 UErrorCode * err);
36164 # 451 "/usr/include/unicode/ucnv_err.h" 3 4
36165 extern "C" __attribute__((visibility("default"))) void UCNV_TO_U_CALLBACK_ESCAPE_48 (
36166 const void *context,
36167 UConverterToUnicodeArgs *toUArgs,
36168 const char* codeUnits,
36169 int32_t length,
36170 UConverterCallbackReason reason,
36171 UErrorCode * err);
36172 # 51 "/usr/include/unicode/ucnv.h" 2 3 4
36173 # 1 "/usr/include/unicode/uenum.h" 1 3 4
36174 # 18 "/usr/include/unicode/uenum.h" 3 4
36175 #define __UENUM_H
36176
36177
36178 # 1 "/usr/include/unicode/localpointer.h" 1 3 4
36179 # 18 "/usr/include/unicode/localpointer.h" 3 4
36180 #define __LOCALPOINTER_H__
36181 # 43 "/usr/include/unicode/localpointer.h" 3 4
36182 extern "C++" { namespace icu_48 {
36183 # 63 "/usr/include/unicode/localpointer.h" 3 4
36184 template<typename T>
36185 class LocalPointerBase {
36186 public:
36187
36188
36189
36190
36191
36192 explicit LocalPointerBase(T *p=__null) : ptr(p) {}
36193
36194
36195
36196
36197
36198 ~LocalPointerBase() { }
36199
36200
36201
36202
36203
36204 UBool isNull() const { return ptr==__null; }
36205
36206
36207
36208
36209
36210 UBool isValid() const { return ptr!=__null; }
36211
36212
36213
36214
36215
36216
36217
36218 bool operator==(const T *other) const { return ptr==other; }
36219
36220
36221
36222
36223
36224
36225
36226 bool operator!=(const T *other) const { return ptr!=other; }
36227
36228
36229
36230
36231
36232 T *getAlias() const { return ptr; }
36233
36234
36235
36236
36237
36238 T &operator*() const { return *ptr; }
36239
36240
36241
36242
36243
36244 T *operator->() const { return ptr; }
36245
36246
36247
36248
36249
36250
36251 T *orphan() {
36252 T *p=ptr;
36253 ptr=__null;
36254 return p;
36255 }
36256
36257
36258
36259
36260
36261
36262
36263 void adoptInstead(T *p) {
36264
36265 ptr=p;
36266 }
36267 protected:
36268 T *ptr;
36269 private:
36270
36271 bool operator==(const LocalPointerBase &other);
36272 bool operator!=(const LocalPointerBase &other);
36273
36274 LocalPointerBase(const LocalPointerBase &other);
36275 void operator=(const LocalPointerBase &other);
36276
36277 static void * operator new(size_t size);
36278 static void * operator new[](size_t size);
36279
36280 static void * operator new(size_t, void *ptr);
36281
36282 };
36283 # 181 "/usr/include/unicode/localpointer.h" 3 4
36284 template<typename T>
36285 class LocalPointer : public LocalPointerBase<T> {
36286 public:
36287
36288
36289
36290
36291
36292 explicit LocalPointer(T *p=__null) : LocalPointerBase<T>(p) {}
36293
36294
36295
36296
36297 ~LocalPointer() {
36298 delete LocalPointerBase<T>::ptr;
36299 }
36300
36301
36302
36303
36304
36305
36306 void adoptInstead(T *p) {
36307 delete LocalPointerBase<T>::ptr;
36308 LocalPointerBase<T>::ptr=p;
36309 }
36310 };
36311 # 227 "/usr/include/unicode/localpointer.h" 3 4
36312 template<typename T>
36313 class LocalArray : public LocalPointerBase<T> {
36314 public:
36315
36316
36317
36318
36319
36320 explicit LocalArray(T *p=__null) : LocalPointerBase<T>(p) {}
36321
36322
36323
36324
36325 ~LocalArray() {
36326 delete[] LocalPointerBase<T>::ptr;
36327 }
36328
36329
36330
36331
36332
36333
36334 void adoptInstead(T *p) {
36335 delete[] LocalPointerBase<T>::ptr;
36336 LocalPointerBase<T>::ptr=p;
36337 }
36338
36339
36340
36341
36342
36343
36344
36345 T &operator[](ptrdiff_t i) const { return LocalPointerBase<T>::ptr[i]; }
36346 };
36347 # 286 "/usr/include/unicode/localpointer.h" 3 4
36348 #define U_DEFINE_LOCAL_OPEN_POINTER(LocalPointerClassName,Type,closeFunction) class LocalPointerClassName : public LocalPointerBase<Type> { public: explicit LocalPointerClassName(Type *p=NULL) : LocalPointerBase<Type>(p) {} ~LocalPointerClassName() { closeFunction(ptr); } void adoptInstead(Type *p) { closeFunction(ptr); ptr=p; } }
36349 # 297 "/usr/include/unicode/localpointer.h" 3 4
36350 } }
36351 # 22 "/usr/include/unicode/uenum.h" 2 3 4
36352
36353
36354 # 1 "/usr/include/unicode/strenum.h" 1 3 4
36355 # 11 "/usr/include/unicode/strenum.h" 3 4
36356 #define STRENUM_H
36357
36358 # 1 "/usr/include/unicode/uobject.h" 1 3 4
36359 # 18 "/usr/include/unicode/uobject.h" 3 4
36360 #define __UOBJECT_H__
36361
36362
36363
36364 extern "C++" { namespace icu_48 {
36365 # 63 "/usr/include/unicode/uobject.h" 3 4
36366 #define U_HAVE_DEBUG_LOCATION_NEW 0
36367 # 81 "/usr/include/unicode/uobject.h" 3 4
36368 #define U_NO_THROW throw()
36369 # 101 "/usr/include/unicode/uobject.h" 3 4
36370 class UMemory {
36371 public:
36372 # 120 "/usr/include/unicode/uobject.h" 3 4
36373 static void * operator new(size_t size) throw();
36374
36375
36376
36377
36378
36379
36380 static void * operator new[](size_t size) throw();
36381 # 137 "/usr/include/unicode/uobject.h" 3 4
36382 static void operator delete(void *p) throw();
36383
36384
36385
36386
36387
36388
36389 static void operator delete[](void *p) throw();
36390
36391
36392
36393
36394
36395
36396
36397 static inline void * operator new(size_t, void *ptr) throw() { return ptr; }
36398
36399
36400
36401
36402
36403
36404 static inline void operator delete(void *, void *) throw() {}
36405 # 191 "/usr/include/unicode/uobject.h" 3 4
36406 };
36407 # 215 "/usr/include/unicode/uobject.h" 3 4
36408 class UObject : public UMemory {
36409 public:
36410
36411
36412
36413
36414
36415 virtual ~UObject();
36416
36417
36418
36419
36420
36421
36422 virtual UClassID getDynamicClassID() const = 0;
36423
36424 protected:
36425 # 288 "/usr/include/unicode/uobject.h" 3 4
36426 };
36427 # 297 "/usr/include/unicode/uobject.h" 3 4
36428 #define UOBJECT_DEFINE_RTTI_IMPLEMENTATION(myClass) UClassID U_EXPORT2 myClass::getStaticClassID() { static char classID = 0; return (UClassID)&classID; } UClassID myClass::getDynamicClassID() const { return myClass::getStaticClassID(); }
36429 # 314 "/usr/include/unicode/uobject.h" 3 4
36430 #define UOBJECT_DEFINE_ABSTRACT_RTTI_IMPLEMENTATION(myClass) UClassID U_EXPORT2 myClass::getStaticClassID() { static char classID = 0; return (UClassID)&classID; }
36431 # 330 "/usr/include/unicode/uobject.h" 3 4
36432 #define UOBJECT_DEFINE_NO_RTTI_IMPLEMENTATION(myClass) UClassID myClass::getDynamicClassID() const { return NULL; }
36433 # 350 "/usr/include/unicode/uobject.h" 3 4
36434 } }
36435 # 14 "/usr/include/unicode/strenum.h" 2 3 4
36436 # 1 "/usr/include/unicode/unistr.h" 1 3 4
36437 # 22 "/usr/include/unicode/unistr.h" 3 4
36438 #define UNISTR_H
36439
36440
36441
36442
36443
36444
36445
36446 # 1 "/usr/include/unicode/rep.h" 1 3 4
36447 # 15 "/usr/include/unicode/rep.h" 3 4
36448 #define REP_H
36449 # 24 "/usr/include/unicode/rep.h" 3 4
36450 extern "C++" { namespace icu_48 {
36451
36452 class UnicodeString;
36453 # 71 "/usr/include/unicode/rep.h" 3 4
36454 class Replaceable : public UObject {
36455
36456 public:
36457
36458
36459
36460
36461 virtual ~Replaceable();
36462
36463
36464
36465
36466
36467
36468 inline int32_t length() const;
36469 # 94 "/usr/include/unicode/rep.h" 3 4
36470 inline UChar charAt(int32_t offset) const;
36471 # 108 "/usr/include/unicode/rep.h" 3 4
36472 inline UChar32 char32At(int32_t offset) const;
36473 # 120 "/usr/include/unicode/rep.h" 3 4
36474 virtual void extractBetween(int32_t start,
36475 int32_t limit,
36476 UnicodeString& target) const = 0;
36477 # 144 "/usr/include/unicode/rep.h" 3 4
36478 virtual void handleReplaceBetween(int32_t start,
36479 int32_t limit,
36480 const UnicodeString& text) = 0;
36481 # 172 "/usr/include/unicode/rep.h" 3 4
36482 virtual void copy(int32_t start, int32_t limit, int32_t dest) = 0;
36483 # 183 "/usr/include/unicode/rep.h" 3 4
36484 virtual UBool hasMetaData() const;
36485 # 200 "/usr/include/unicode/rep.h" 3 4
36486 virtual Replaceable *clone() const;
36487
36488 protected:
36489
36490
36491
36492
36493
36494 Replaceable();
36495 # 225 "/usr/include/unicode/rep.h" 3 4
36496 virtual int32_t getLength() const = 0;
36497
36498
36499
36500
36501
36502 virtual UChar getCharAt(int32_t offset) const = 0;
36503
36504
36505
36506
36507
36508 virtual UChar32 getChar32At(int32_t offset) const = 0;
36509 };
36510
36511 inline int32_t
36512 Replaceable::length() const {
36513 return getLength();
36514 }
36515
36516 inline UChar
36517 Replaceable::charAt(int32_t offset) const {
36518 return getCharAt(offset);
36519 }
36520
36521 inline UChar32
36522 Replaceable::char32At(int32_t offset) const {
36523 return getChar32At(offset);
36524 }
36525
36526
36527
36528 } }
36529 # 31 "/usr/include/unicode/unistr.h" 2 3 4
36530 # 1 "/usr/include/unicode/std_string.h" 1 3 4
36531 # 18 "/usr/include/unicode/std_string.h" 3 4
36532 #define __STD_STRING_H__
36533 # 66 "/usr/include/unicode/std_string.h" 3 4
36534 #define U_STD_NS std
36535 #define U_STD_NSQ U_STD_NS::
36536 #define U_STD_NS_USE using namespace U_STD_NS;
36537 # 32 "/usr/include/unicode/unistr.h" 2 3 4
36538 # 1 "/usr/include/unicode/stringpiece.h" 1 3 4
36539 # 21 "/usr/include/unicode/stringpiece.h" 3 4
36540 #define __STRINGPIECE_H__
36541 # 34 "/usr/include/unicode/stringpiece.h" 3 4
36542 extern "C++" { namespace icu_48 {
36543 # 52 "/usr/include/unicode/stringpiece.h" 3 4
36544 class StringPiece : public UMemory {
36545 private:
36546 const char* ptr_;
36547 int32_t length_;
36548
36549 public:
36550
36551
36552
36553
36554 StringPiece() : ptr_(__null), length_(0) { }
36555
36556
36557
36558
36559
36560 StringPiece(const char* str);
36561
36562
36563
36564
36565
36566 StringPiece(const std:: string& str)
36567 : ptr_(str.data()), length_(static_cast<int32_t>(str.size())) { }
36568
36569
36570
36571
36572
36573
36574
36575 StringPiece(const char* offset, int32_t len) : ptr_(offset), length_(len) { }
36576
36577
36578
36579
36580
36581
36582 StringPiece(const StringPiece& x, int32_t pos);
36583 # 99 "/usr/include/unicode/stringpiece.h" 3 4
36584 StringPiece(const StringPiece& x, int32_t pos, int32_t len);
36585 # 111 "/usr/include/unicode/stringpiece.h" 3 4
36586 const char* data() const { return ptr_; }
36587
36588
36589
36590
36591
36592 int32_t size() const { return length_; }
36593
36594
36595
36596
36597
36598 int32_t length() const { return length_; }
36599
36600
36601
36602
36603
36604 UBool empty() const { return length_ == 0; }
36605
36606
36607
36608
36609
36610 void clear() { ptr_ = __null; length_ = 0; }
36611
36612
36613
36614
36615
36616
36617
36618 void set(const char* xdata, int32_t len) { ptr_ = xdata; length_ = len; }
36619
36620
36621
36622
36623
36624
36625 void set(const char* str);
36626
36627
36628
36629
36630
36631
36632 void remove_prefix(int32_t n) {
36633 if (n >= 0) {
36634 if (n > length_) {
36635 n = length_;
36636 }
36637 ptr_ += n;
36638 length_ -= n;
36639 }
36640 }
36641
36642
36643
36644
36645
36646
36647 void remove_suffix(int32_t n) {
36648 if (n >= 0) {
36649 if (n <= length_) {
36650 length_ -= n;
36651 } else {
36652 length_ = 0;
36653 }
36654 }
36655 }
36656
36657
36658
36659
36660
36661 static const int32_t npos = 0x7fffffff;
36662 # 196 "/usr/include/unicode/stringpiece.h" 3 4
36663 StringPiece substr(int32_t pos, int32_t len = npos) const {
36664 return StringPiece(*this, pos, len);
36665 }
36666 };
36667 # 208 "/usr/include/unicode/stringpiece.h" 3 4
36668 __attribute__((visibility("default"))) UBool
36669 operator==(const StringPiece& x, const StringPiece& y);
36670 # 218 "/usr/include/unicode/stringpiece.h" 3 4
36671 inline UBool operator!=(const StringPiece& x, const StringPiece& y) {
36672 return !(x == y);
36673 }
36674
36675 } }
36676 # 33 "/usr/include/unicode/unistr.h" 2 3 4
36677 # 1 "/usr/include/unicode/bytestream.h" 1 3 4
36678 # 31 "/usr/include/unicode/bytestream.h" 3 4
36679 #define __BYTESTREAM_H__
36680 # 42 "/usr/include/unicode/bytestream.h" 3 4
36681 extern "C++" { namespace icu_48 {
36682
36683
36684
36685
36686
36687 class ByteSink : public UMemory {
36688 public:
36689
36690
36691
36692
36693 ByteSink() { }
36694
36695
36696
36697
36698 virtual ~ByteSink() { }
36699
36700
36701
36702
36703
36704
36705
36706 virtual void Append(const char* bytes, int32_t n) = 0;
36707 # 111 "/usr/include/unicode/bytestream.h" 3 4
36708 virtual char* GetAppendBuffer(int32_t min_capacity,
36709 int32_t desired_capacity_hint,
36710 char* scratch, int32_t scratch_capacity,
36711 int32_t* result_capacity);
36712 # 124 "/usr/include/unicode/bytestream.h" 3 4
36713 virtual void Flush();
36714
36715 private:
36716 ByteSink(const ByteSink &);
36717 ByteSink &operator=(const ByteSink &);
36718 };
36719 # 143 "/usr/include/unicode/bytestream.h" 3 4
36720 class CheckedArrayByteSink : public ByteSink {
36721 public:
36722
36723
36724
36725
36726
36727
36728 CheckedArrayByteSink(char* outbuf, int32_t capacity);
36729 # 160 "/usr/include/unicode/bytestream.h" 3 4
36730 virtual CheckedArrayByteSink& Reset();
36731
36732
36733
36734
36735
36736
36737 virtual void Append(const char* bytes, int32_t n);
36738 # 182 "/usr/include/unicode/bytestream.h" 3 4
36739 virtual char* GetAppendBuffer(int32_t min_capacity,
36740 int32_t desired_capacity_hint,
36741 char* scratch, int32_t scratch_capacity,
36742 int32_t* result_capacity);
36743
36744
36745
36746
36747
36748 int32_t NumberOfBytesWritten() const { return size_; }
36749
36750
36751
36752
36753
36754
36755 UBool Overflowed() const { return overflowed_; }
36756
36757
36758
36759
36760
36761
36762
36763 int32_t NumberOfBytesAppended() const { return appended_; }
36764 private:
36765 char* outbuf_;
36766 const int32_t capacity_;
36767 int32_t size_;
36768 int32_t appended_;
36769 UBool overflowed_;
36770 CheckedArrayByteSink();
36771 CheckedArrayByteSink(const CheckedArrayByteSink &);
36772 CheckedArrayByteSink &operator=(const CheckedArrayByteSink &);
36773 };
36774 # 225 "/usr/include/unicode/bytestream.h" 3 4
36775 template<typename StringClass>
36776 class StringByteSink : public ByteSink {
36777 public:
36778
36779
36780
36781
36782
36783 StringByteSink(StringClass* dest) : dest_(dest) { }
36784
36785
36786
36787
36788
36789
36790 virtual void Append(const char* data, int32_t n) { dest_->append(data, n); }
36791 private:
36792 StringClass* dest_;
36793 StringByteSink();
36794 StringByteSink(const StringByteSink &);
36795 StringByteSink &operator=(const StringByteSink &);
36796 };
36797
36798
36799
36800 } }
36801 # 34 "/usr/include/unicode/unistr.h" 2 3 4
36802
36803 struct UConverter;
36804 class StringThreadTest;
36805 # 45 "/usr/include/unicode/unistr.h" 3 4
36806 #define U_COMPARE_CODE_POINT_ORDER 0x8000
36807
36808
36809
36810
36811
36812
36813 extern "C" __attribute__((visibility("default"))) int32_t
36814 u_strlen_48(const UChar *s);
36815
36816
36817 extern "C++" { namespace icu_48 {
36818
36819 class BreakIterator;
36820 class Locale;
36821 class StringCharacterIterator;
36822 class UnicodeStringAppendable;
36823 # 75 "/usr/include/unicode/unistr.h" 3 4
36824 #define US_INV U_NAMESPACE_QUALIFIER UnicodeString::kInvariant
36825 # 101 "/usr/include/unicode/unistr.h" 3 4
36826 #define UNICODE_STRING(cs,_length) U_NAMESPACE_QUALIFIER UnicodeString(cs, _length, US_INV)
36827 # 117 "/usr/include/unicode/unistr.h" 3 4
36828 #define UNICODE_STRING_SIMPLE(cs) UNICODE_STRING(cs, -1)
36829 # 188 "/usr/include/unicode/unistr.h" 3 4
36830 class UnicodeString : public Replaceable
36831 {
36832 public:
36833 # 200 "/usr/include/unicode/unistr.h" 3 4
36834 enum EInvariant {
36835
36836
36837
36838
36839 kInvariant
36840 };
36841 # 221 "/usr/include/unicode/unistr.h" 3 4
36842 inline UBool operator== (const UnicodeString& text) const;
36843 # 230 "/usr/include/unicode/unistr.h" 3 4
36844 inline UBool operator!= (const UnicodeString& text) const;
36845 # 239 "/usr/include/unicode/unistr.h" 3 4
36846 inline UBool operator> (const UnicodeString& text) const;
36847 # 248 "/usr/include/unicode/unistr.h" 3 4
36848 inline UBool operator< (const UnicodeString& text) const;
36849 # 257 "/usr/include/unicode/unistr.h" 3 4
36850 inline UBool operator>= (const UnicodeString& text) const;
36851 # 266 "/usr/include/unicode/unistr.h" 3 4
36852 inline UBool operator<= (const UnicodeString& text) const;
36853 # 279 "/usr/include/unicode/unistr.h" 3 4
36854 inline int8_t compare(const UnicodeString& text) const;
36855 # 295 "/usr/include/unicode/unistr.h" 3 4
36856 inline int8_t compare(int32_t start,
36857 int32_t length,
36858 const UnicodeString& text) const;
36859 # 316 "/usr/include/unicode/unistr.h" 3 4
36860 inline int8_t compare(int32_t start,
36861 int32_t length,
36862 const UnicodeString& srcText,
36863 int32_t srcStart,
36864 int32_t srcLength) const;
36865 # 334 "/usr/include/unicode/unistr.h" 3 4
36866 inline int8_t compare(const UChar *srcChars,
36867 int32_t srcLength) const;
36868 # 351 "/usr/include/unicode/unistr.h" 3 4
36869 inline int8_t compare(int32_t start,
36870 int32_t length,
36871 const UChar *srcChars) const;
36872 # 372 "/usr/include/unicode/unistr.h" 3 4
36873 inline int8_t compare(int32_t start,
36874 int32_t length,
36875 const UChar *srcChars,
36876 int32_t srcStart,
36877 int32_t srcLength) const;
36878 # 395 "/usr/include/unicode/unistr.h" 3 4
36879 inline int8_t compareBetween(int32_t start,
36880 int32_t limit,
36881 const UnicodeString& srcText,
36882 int32_t srcStart,
36883 int32_t srcLimit) const;
36884 # 418 "/usr/include/unicode/unistr.h" 3 4
36885 inline int8_t compareCodePointOrder(const UnicodeString& text) const;
36886 # 439 "/usr/include/unicode/unistr.h" 3 4
36887 inline int8_t compareCodePointOrder(int32_t start,
36888 int32_t length,
36889 const UnicodeString& srcText) const;
36890 # 464 "/usr/include/unicode/unistr.h" 3 4
36891 inline int8_t compareCodePointOrder(int32_t start,
36892 int32_t length,
36893 const UnicodeString& srcText,
36894 int32_t srcStart,
36895 int32_t srcLength) const;
36896 # 488 "/usr/include/unicode/unistr.h" 3 4
36897 inline int8_t compareCodePointOrder(const UChar *srcChars,
36898 int32_t srcLength) const;
36899 # 510 "/usr/include/unicode/unistr.h" 3 4
36900 inline int8_t compareCodePointOrder(int32_t start,
36901 int32_t length,
36902 const UChar *srcChars) const;
36903 # 535 "/usr/include/unicode/unistr.h" 3 4
36904 inline int8_t compareCodePointOrder(int32_t start,
36905 int32_t length,
36906 const UChar *srcChars,
36907 int32_t srcStart,
36908 int32_t srcLength) const;
36909 # 562 "/usr/include/unicode/unistr.h" 3 4
36910 inline int8_t compareCodePointOrderBetween(int32_t start,
36911 int32_t limit,
36912 const UnicodeString& srcText,
36913 int32_t srcStart,
36914 int32_t srcLimit) const;
36915 # 586 "/usr/include/unicode/unistr.h" 3 4
36916 inline int8_t caseCompare(const UnicodeString& text, uint32_t options) const;
36917 # 608 "/usr/include/unicode/unistr.h" 3 4
36918 inline int8_t caseCompare(int32_t start,
36919 int32_t length,
36920 const UnicodeString& srcText,
36921 uint32_t options) const;
36922 # 635 "/usr/include/unicode/unistr.h" 3 4
36923 inline int8_t caseCompare(int32_t start,
36924 int32_t length,
36925 const UnicodeString& srcText,
36926 int32_t srcStart,
36927 int32_t srcLength,
36928 uint32_t options) const;
36929 # 661 "/usr/include/unicode/unistr.h" 3 4
36930 inline int8_t caseCompare(const UChar *srcChars,
36931 int32_t srcLength,
36932 uint32_t options) const;
36933 # 685 "/usr/include/unicode/unistr.h" 3 4
36934 inline int8_t caseCompare(int32_t start,
36935 int32_t length,
36936 const UChar *srcChars,
36937 uint32_t options) const;
36938 # 712 "/usr/include/unicode/unistr.h" 3 4
36939 inline int8_t caseCompare(int32_t start,
36940 int32_t length,
36941 const UChar *srcChars,
36942 int32_t srcStart,
36943 int32_t srcLength,
36944 uint32_t options) const;
36945 # 741 "/usr/include/unicode/unistr.h" 3 4
36946 inline int8_t caseCompareBetween(int32_t start,
36947 int32_t limit,
36948 const UnicodeString& srcText,
36949 int32_t srcStart,
36950 int32_t srcLimit,
36951 uint32_t options) const;
36952 # 755 "/usr/include/unicode/unistr.h" 3 4
36953 inline UBool startsWith(const UnicodeString& text) const;
36954 # 767 "/usr/include/unicode/unistr.h" 3 4
36955 inline UBool startsWith(const UnicodeString& srcText,
36956 int32_t srcStart,
36957 int32_t srcLength) const;
36958 # 779 "/usr/include/unicode/unistr.h" 3 4
36959 inline UBool startsWith(const UChar *srcChars,
36960 int32_t srcLength) const;
36961 # 791 "/usr/include/unicode/unistr.h" 3 4
36962 inline UBool startsWith(const UChar *srcChars,
36963 int32_t srcStart,
36964 int32_t srcLength) const;
36965 # 802 "/usr/include/unicode/unistr.h" 3 4
36966 inline UBool endsWith(const UnicodeString& text) const;
36967 # 814 "/usr/include/unicode/unistr.h" 3 4
36968 inline UBool endsWith(const UnicodeString& srcText,
36969 int32_t srcStart,
36970 int32_t srcLength) const;
36971 # 826 "/usr/include/unicode/unistr.h" 3 4
36972 inline UBool endsWith(const UChar *srcChars,
36973 int32_t srcLength) const;
36974 # 839 "/usr/include/unicode/unistr.h" 3 4
36975 inline UBool endsWith(const UChar *srcChars,
36976 int32_t srcStart,
36977 int32_t srcLength) const;
36978 # 854 "/usr/include/unicode/unistr.h" 3 4
36979 inline int32_t indexOf(const UnicodeString& text) const;
36980 # 865 "/usr/include/unicode/unistr.h" 3 4
36981 inline int32_t indexOf(const UnicodeString& text,
36982 int32_t start) const;
36983 # 879 "/usr/include/unicode/unistr.h" 3 4
36984 inline int32_t indexOf(const UnicodeString& text,
36985 int32_t start,
36986 int32_t length) const;
36987 # 899 "/usr/include/unicode/unistr.h" 3 4
36988 inline int32_t indexOf(const UnicodeString& srcText,
36989 int32_t srcStart,
36990 int32_t srcLength,
36991 int32_t start,
36992 int32_t length) const;
36993 # 916 "/usr/include/unicode/unistr.h" 3 4
36994 inline int32_t indexOf(const UChar *srcChars,
36995 int32_t srcLength,
36996 int32_t start) const;
36997 # 932 "/usr/include/unicode/unistr.h" 3 4
36998 inline int32_t indexOf(const UChar *srcChars,
36999 int32_t srcLength,
37000 int32_t start,
37001 int32_t length) const;
37002 # 953 "/usr/include/unicode/unistr.h" 3 4
37003 int32_t indexOf(const UChar *srcChars,
37004 int32_t srcStart,
37005 int32_t srcLength,
37006 int32_t start,
37007 int32_t length) const;
37008 # 966 "/usr/include/unicode/unistr.h" 3 4
37009 inline int32_t indexOf(UChar c) const;
37010 # 976 "/usr/include/unicode/unistr.h" 3 4
37011 inline int32_t indexOf(UChar32 c) const;
37012 # 986 "/usr/include/unicode/unistr.h" 3 4
37013 inline int32_t indexOf(UChar c,
37014 int32_t start) const;
37015 # 998 "/usr/include/unicode/unistr.h" 3 4
37016 inline int32_t indexOf(UChar32 c,
37017 int32_t start) const;
37018 # 1011 "/usr/include/unicode/unistr.h" 3 4
37019 inline int32_t indexOf(UChar c,
37020 int32_t start,
37021 int32_t length) const;
37022 # 1026 "/usr/include/unicode/unistr.h" 3 4
37023 inline int32_t indexOf(UChar32 c,
37024 int32_t start,
37025 int32_t length) const;
37026 # 1038 "/usr/include/unicode/unistr.h" 3 4
37027 inline int32_t lastIndexOf(const UnicodeString& text) const;
37028 # 1049 "/usr/include/unicode/unistr.h" 3 4
37029 inline int32_t lastIndexOf(const UnicodeString& text,
37030 int32_t start) const;
37031 # 1063 "/usr/include/unicode/unistr.h" 3 4
37032 inline int32_t lastIndexOf(const UnicodeString& text,
37033 int32_t start,
37034 int32_t length) const;
37035 # 1083 "/usr/include/unicode/unistr.h" 3 4
37036 inline int32_t lastIndexOf(const UnicodeString& srcText,
37037 int32_t srcStart,
37038 int32_t srcLength,
37039 int32_t start,
37040 int32_t length) const;
37041 # 1099 "/usr/include/unicode/unistr.h" 3 4
37042 inline int32_t lastIndexOf(const UChar *srcChars,
37043 int32_t srcLength,
37044 int32_t start) const;
37045 # 1115 "/usr/include/unicode/unistr.h" 3 4
37046 inline int32_t lastIndexOf(const UChar *srcChars,
37047 int32_t srcLength,
37048 int32_t start,
37049 int32_t length) const;
37050 # 1136 "/usr/include/unicode/unistr.h" 3 4
37051 int32_t lastIndexOf(const UChar *srcChars,
37052 int32_t srcStart,
37053 int32_t srcLength,
37054 int32_t start,
37055 int32_t length) const;
37056 # 1149 "/usr/include/unicode/unistr.h" 3 4
37057 inline int32_t lastIndexOf(UChar c) const;
37058 # 1159 "/usr/include/unicode/unistr.h" 3 4
37059 inline int32_t lastIndexOf(UChar32 c) const;
37060 # 1169 "/usr/include/unicode/unistr.h" 3 4
37061 inline int32_t lastIndexOf(UChar c,
37062 int32_t start) const;
37063 # 1181 "/usr/include/unicode/unistr.h" 3 4
37064 inline int32_t lastIndexOf(UChar32 c,
37065 int32_t start) const;
37066 # 1194 "/usr/include/unicode/unistr.h" 3 4
37067 inline int32_t lastIndexOf(UChar c,
37068 int32_t start,
37069 int32_t length) const;
37070 # 1209 "/usr/include/unicode/unistr.h" 3 4
37071 inline int32_t lastIndexOf(UChar32 c,
37072 int32_t start,
37073 int32_t length) const;
37074 # 1224 "/usr/include/unicode/unistr.h" 3 4
37075 inline UChar charAt(int32_t offset) const;
37076 # 1233 "/usr/include/unicode/unistr.h" 3 4
37077 inline UChar operator[] (int32_t offset) const;
37078 # 1246 "/usr/include/unicode/unistr.h" 3 4
37079 inline UChar32 char32At(int32_t offset) const;
37080 # 1263 "/usr/include/unicode/unistr.h" 3 4
37081 inline int32_t getChar32Start(int32_t offset) const;
37082 # 1281 "/usr/include/unicode/unistr.h" 3 4
37083 inline int32_t getChar32Limit(int32_t offset) const;
37084 # 1333 "/usr/include/unicode/unistr.h" 3 4
37085 int32_t moveIndex32(int32_t index, int32_t delta) const;
37086 # 1352 "/usr/include/unicode/unistr.h" 3 4
37087 inline void extract(int32_t start,
37088 int32_t length,
37089 UChar *dst,
37090 int32_t dstStart = 0) const;
37091 # 1378 "/usr/include/unicode/unistr.h" 3 4
37092 int32_t
37093 extract(UChar *dest, int32_t destCapacity,
37094 UErrorCode &errorCode) const;
37095 # 1392 "/usr/include/unicode/unistr.h" 3 4
37096 inline void extract(int32_t start,
37097 int32_t length,
37098 UnicodeString& target) const;
37099 # 1407 "/usr/include/unicode/unistr.h" 3 4
37100 inline void extractBetween(int32_t start,
37101 int32_t limit,
37102 UChar *dst,
37103 int32_t dstStart = 0) const;
37104 # 1421 "/usr/include/unicode/unistr.h" 3 4
37105 virtual void extractBetween(int32_t start,
37106 int32_t limit,
37107 UnicodeString& target) const;
37108 # 1446 "/usr/include/unicode/unistr.h" 3 4
37109 int32_t extract(int32_t start,
37110 int32_t startLength,
37111 char *target,
37112 int32_t targetCapacity,
37113 enum EInvariant inv) const;
37114 # 1473 "/usr/include/unicode/unistr.h" 3 4
37115 int32_t extract(int32_t start,
37116 int32_t startLength,
37117 char *target,
37118 uint32_t targetLength) const;
37119 # 1507 "/usr/include/unicode/unistr.h" 3 4
37120 inline int32_t extract(int32_t start,
37121 int32_t startLength,
37122 char *target,
37123 const char *codepage = 0) const;
37124 # 1541 "/usr/include/unicode/unistr.h" 3 4
37125 int32_t extract(int32_t start,
37126 int32_t startLength,
37127 char *target,
37128 uint32_t targetLength,
37129 const char *codepage) const;
37130 # 1564 "/usr/include/unicode/unistr.h" 3 4
37131 int32_t extract(char *dest, int32_t destCapacity,
37132 UConverter *cnv,
37133 UErrorCode &errorCode) const;
37134 # 1583 "/usr/include/unicode/unistr.h" 3 4
37135 UnicodeString tempSubString(int32_t start=0, int32_t length=((int32_t)(2147483647))) const;
37136 # 1595 "/usr/include/unicode/unistr.h" 3 4
37137 inline UnicodeString tempSubStringBetween(int32_t start, int32_t limit=((int32_t)(2147483647))) const;
37138 # 1608 "/usr/include/unicode/unistr.h" 3 4
37139 void toUTF8(ByteSink &sink) const;
37140 # 1624 "/usr/include/unicode/unistr.h" 3 4
37141 template<typename StringClass>
37142 StringClass &toUTF8String(StringClass &result) const {
37143 StringByteSink<StringClass> sbs(&result);
37144 toUTF8(sbs);
37145 return result;
37146 }
37147 # 1648 "/usr/include/unicode/unistr.h" 3 4
37148 int32_t toUTF32(UChar32 *utf32, int32_t capacity, UErrorCode &errorCode) const;
37149 # 1660 "/usr/include/unicode/unistr.h" 3 4
37150 inline int32_t length(void) const;
37151 # 1675 "/usr/include/unicode/unistr.h" 3 4
37152 int32_t
37153 countChar32(int32_t start=0, int32_t length=((int32_t)(2147483647))) const;
37154 # 1701 "/usr/include/unicode/unistr.h" 3 4
37155 UBool
37156 hasMoreChar32Than(int32_t start, int32_t length, int32_t number) const;
37157
37158
37159
37160
37161
37162
37163 inline UBool isEmpty(void) const;
37164 # 1720 "/usr/include/unicode/unistr.h" 3 4
37165 inline int32_t getCapacity(void) const;
37166 # 1729 "/usr/include/unicode/unistr.h" 3 4
37167 inline int32_t hashCode(void) const;
37168 # 1743 "/usr/include/unicode/unistr.h" 3 4
37169 inline UBool isBogus(void) const;
37170 # 1759 "/usr/include/unicode/unistr.h" 3 4
37171 UnicodeString &operator=(const UnicodeString &srcText);
37172 # 1781 "/usr/include/unicode/unistr.h" 3 4
37173 UnicodeString &fastCopyFrom(const UnicodeString &src);
37174 # 1790 "/usr/include/unicode/unistr.h" 3 4
37175 inline UnicodeString& operator= (UChar ch);
37176 # 1799 "/usr/include/unicode/unistr.h" 3 4
37177 inline UnicodeString& operator= (UChar32 ch);
37178 # 1812 "/usr/include/unicode/unistr.h" 3 4
37179 inline UnicodeString& setTo(const UnicodeString& srcText,
37180 int32_t srcStart);
37181 # 1828 "/usr/include/unicode/unistr.h" 3 4
37182 inline UnicodeString& setTo(const UnicodeString& srcText,
37183 int32_t srcStart,
37184 int32_t srcLength);
37185 # 1840 "/usr/include/unicode/unistr.h" 3 4
37186 inline UnicodeString& setTo(const UnicodeString& srcText);
37187 # 1850 "/usr/include/unicode/unistr.h" 3 4
37188 inline UnicodeString& setTo(const UChar *srcChars,
37189 int32_t srcLength);
37190 # 1861 "/usr/include/unicode/unistr.h" 3 4
37191 UnicodeString& setTo(UChar srcChar);
37192 # 1871 "/usr/include/unicode/unistr.h" 3 4
37193 UnicodeString& setTo(UChar32 srcChar);
37194 # 1893 "/usr/include/unicode/unistr.h" 3 4
37195 UnicodeString &setTo(UBool isTerminated,
37196 const UChar *text,
37197 int32_t textLength);
37198 # 1916 "/usr/include/unicode/unistr.h" 3 4
37199 UnicodeString &setTo(UChar *buffer,
37200 int32_t buffLength,
37201 int32_t buffCapacity);
37202 # 1960 "/usr/include/unicode/unistr.h" 3 4
37203 void setToBogus();
37204 # 1969 "/usr/include/unicode/unistr.h" 3 4
37205 UnicodeString& setCharAt(int32_t offset,
37206 UChar ch);
37207 # 1982 "/usr/include/unicode/unistr.h" 3 4
37208 inline UnicodeString& operator+= (UChar ch);
37209 # 1991 "/usr/include/unicode/unistr.h" 3 4
37210 inline UnicodeString& operator+= (UChar32 ch);
37211 # 2000 "/usr/include/unicode/unistr.h" 3 4
37212 inline UnicodeString& operator+= (const UnicodeString& srcText);
37213 # 2016 "/usr/include/unicode/unistr.h" 3 4
37214 inline UnicodeString& append(const UnicodeString& srcText,
37215 int32_t srcStart,
37216 int32_t srcLength);
37217 # 2027 "/usr/include/unicode/unistr.h" 3 4
37218 inline UnicodeString& append(const UnicodeString& srcText);
37219 # 2042 "/usr/include/unicode/unistr.h" 3 4
37220 inline UnicodeString& append(const UChar *srcChars,
37221 int32_t srcStart,
37222 int32_t srcLength);
37223 # 2055 "/usr/include/unicode/unistr.h" 3 4
37224 inline UnicodeString& append(const UChar *srcChars,
37225 int32_t srcLength);
37226
37227
37228
37229
37230
37231
37232
37233 inline UnicodeString& append(UChar srcChar);
37234
37235
37236
37237
37238
37239
37240
37241 inline UnicodeString& append(UChar32 srcChar);
37242 # 2090 "/usr/include/unicode/unistr.h" 3 4
37243 inline UnicodeString& insert(int32_t start,
37244 const UnicodeString& srcText,
37245 int32_t srcStart,
37246 int32_t srcLength);
37247 # 2103 "/usr/include/unicode/unistr.h" 3 4
37248 inline UnicodeString& insert(int32_t start,
37249 const UnicodeString& srcText);
37250 # 2119 "/usr/include/unicode/unistr.h" 3 4
37251 inline UnicodeString& insert(int32_t start,
37252 const UChar *srcChars,
37253 int32_t srcStart,
37254 int32_t srcLength);
37255 # 2133 "/usr/include/unicode/unistr.h" 3 4
37256 inline UnicodeString& insert(int32_t start,
37257 const UChar *srcChars,
37258 int32_t srcLength);
37259 # 2145 "/usr/include/unicode/unistr.h" 3 4
37260 inline UnicodeString& insert(int32_t start,
37261 UChar srcChar);
37262 # 2156 "/usr/include/unicode/unistr.h" 3 4
37263 inline UnicodeString& insert(int32_t start,
37264 UChar32 srcChar);
37265 # 2179 "/usr/include/unicode/unistr.h" 3 4
37266 UnicodeString& replace(int32_t start,
37267 int32_t length,
37268 const UnicodeString& srcText,
37269 int32_t srcStart,
37270 int32_t srcLength);
37271 # 2197 "/usr/include/unicode/unistr.h" 3 4
37272 UnicodeString& replace(int32_t start,
37273 int32_t length,
37274 const UnicodeString& srcText);
37275 # 2218 "/usr/include/unicode/unistr.h" 3 4
37276 UnicodeString& replace(int32_t start,
37277 int32_t length,
37278 const UChar *srcChars,
37279 int32_t srcStart,
37280 int32_t srcLength);
37281 # 2236 "/usr/include/unicode/unistr.h" 3 4
37282 inline UnicodeString& replace(int32_t start,
37283 int32_t length,
37284 const UChar *srcChars,
37285 int32_t srcLength);
37286 # 2252 "/usr/include/unicode/unistr.h" 3 4
37287 inline UnicodeString& replace(int32_t start,
37288 int32_t length,
37289 UChar srcChar);
37290 # 2267 "/usr/include/unicode/unistr.h" 3 4
37291 inline UnicodeString& replace(int32_t start,
37292 int32_t length,
37293 UChar32 srcChar);
37294 # 2280 "/usr/include/unicode/unistr.h" 3 4
37295 inline UnicodeString& replaceBetween(int32_t start,
37296 int32_t limit,
37297 const UnicodeString& srcText);
37298 # 2298 "/usr/include/unicode/unistr.h" 3 4
37299 inline UnicodeString& replaceBetween(int32_t start,
37300 int32_t limit,
37301 const UnicodeString& srcText,
37302 int32_t srcStart,
37303 int32_t srcLimit);
37304 # 2314 "/usr/include/unicode/unistr.h" 3 4
37305 virtual void handleReplaceBetween(int32_t start,
37306 int32_t limit,
37307 const UnicodeString& text);
37308
37309
37310
37311
37312
37313
37314 virtual UBool hasMetaData() const;
37315 # 2340 "/usr/include/unicode/unistr.h" 3 4
37316 virtual void copy(int32_t start, int32_t limit, int32_t dest);
37317 # 2352 "/usr/include/unicode/unistr.h" 3 4
37318 inline UnicodeString& findAndReplace(const UnicodeString& oldText,
37319 const UnicodeString& newText);
37320 # 2366 "/usr/include/unicode/unistr.h" 3 4
37321 inline UnicodeString& findAndReplace(int32_t start,
37322 int32_t length,
37323 const UnicodeString& oldText,
37324 const UnicodeString& newText);
37325 # 2388 "/usr/include/unicode/unistr.h" 3 4
37326 UnicodeString& findAndReplace(int32_t start,
37327 int32_t length,
37328 const UnicodeString& oldText,
37329 int32_t oldStart,
37330 int32_t oldLength,
37331 const UnicodeString& newText,
37332 int32_t newStart,
37333 int32_t newLength);
37334 # 2405 "/usr/include/unicode/unistr.h" 3 4
37335 inline UnicodeString& remove(void);
37336 # 2415 "/usr/include/unicode/unistr.h" 3 4
37337 inline UnicodeString& remove(int32_t start,
37338 int32_t length = (int32_t)((int32_t)(2147483647)));
37339 # 2426 "/usr/include/unicode/unistr.h" 3 4
37340 inline UnicodeString& removeBetween(int32_t start,
37341 int32_t limit = (int32_t)((int32_t)(2147483647)));
37342 # 2438 "/usr/include/unicode/unistr.h" 3 4
37343 inline UnicodeString &retainBetween(int32_t start, int32_t limit = ((int32_t)(2147483647)));
37344 # 2453 "/usr/include/unicode/unistr.h" 3 4
37345 UBool padLeading(int32_t targetLength,
37346 UChar padChar = 0x0020);
37347 # 2467 "/usr/include/unicode/unistr.h" 3 4
37348 UBool padTrailing(int32_t targetLength,
37349 UChar padChar = 0x0020);
37350
37351
37352
37353
37354
37355
37356
37357 inline UBool truncate(int32_t targetLength);
37358
37359
37360
37361
37362
37363
37364 UnicodeString& trim(void);
37365 # 2493 "/usr/include/unicode/unistr.h" 3 4
37366 inline UnicodeString& reverse(void);
37367 # 2503 "/usr/include/unicode/unistr.h" 3 4
37368 inline UnicodeString& reverse(int32_t start,
37369 int32_t length);
37370
37371
37372
37373
37374
37375
37376
37377 UnicodeString& toUpper(void);
37378 # 2521 "/usr/include/unicode/unistr.h" 3 4
37379 UnicodeString& toUpper(const Locale& locale);
37380
37381
37382
37383
37384
37385
37386
37387 UnicodeString& toLower(void);
37388 # 2538 "/usr/include/unicode/unistr.h" 3 4
37389 UnicodeString& toLower(const Locale& locale);
37390 # 2568 "/usr/include/unicode/unistr.h" 3 4
37391 UnicodeString &toTitle(BreakIterator *titleIter);
37392 # 2597 "/usr/include/unicode/unistr.h" 3 4
37393 UnicodeString &toTitle(BreakIterator *titleIter, const Locale &locale);
37394 # 2630 "/usr/include/unicode/unistr.h" 3 4
37395 UnicodeString &toTitle(BreakIterator *titleIter, const Locale &locale, uint32_t options);
37396 # 2645 "/usr/include/unicode/unistr.h" 3 4
37397 UnicodeString &foldCase(uint32_t options=0 );
37398 # 2694 "/usr/include/unicode/unistr.h" 3 4
37399 UChar *getBuffer(int32_t minCapacity);
37400 # 2716 "/usr/include/unicode/unistr.h" 3 4
37401 void releaseBuffer(int32_t newLength=-1);
37402 # 2748 "/usr/include/unicode/unistr.h" 3 4
37403 inline const UChar *getBuffer() const;
37404 # 2783 "/usr/include/unicode/unistr.h" 3 4
37405 inline const UChar *getTerminatedBuffer();
37406 # 2792 "/usr/include/unicode/unistr.h" 3 4
37407 UnicodeString();
37408 # 2805 "/usr/include/unicode/unistr.h" 3 4
37409 UnicodeString(int32_t capacity, UChar32 c, int32_t count);
37410
37411
37412
37413
37414
37415
37416 UnicodeString(UChar ch);
37417
37418
37419
37420
37421
37422
37423 UnicodeString(UChar32 ch);
37424
37425
37426
37427
37428
37429
37430
37431 UnicodeString(const UChar *text);
37432 # 2836 "/usr/include/unicode/unistr.h" 3 4
37433 UnicodeString(const UChar *text,
37434 int32_t textLength);
37435 # 2858 "/usr/include/unicode/unistr.h" 3 4
37436 UnicodeString(UBool isTerminated,
37437 const UChar *text,
37438 int32_t textLength);
37439 # 2880 "/usr/include/unicode/unistr.h" 3 4
37440 UnicodeString(UChar *buffer, int32_t buffLength, int32_t buffCapacity);
37441 # 2890 "/usr/include/unicode/unistr.h" 3 4
37442 UnicodeString(const char *codepageData);
37443
37444
37445
37446
37447
37448
37449
37450 UnicodeString(const char *codepageData, int32_t dataLength);
37451 # 2921 "/usr/include/unicode/unistr.h" 3 4
37452 UnicodeString(const char *codepageData, const char *codepage);
37453 # 2940 "/usr/include/unicode/unistr.h" 3 4
37454 UnicodeString(const char *codepageData, int32_t dataLength, const char *codepage);
37455 # 2963 "/usr/include/unicode/unistr.h" 3 4
37456 UnicodeString(
37457 const char *src, int32_t srcLength,
37458 UConverter *cnv,
37459 UErrorCode &errorCode);
37460 # 2994 "/usr/include/unicode/unistr.h" 3 4
37461 UnicodeString(const char *src, int32_t length, enum EInvariant inv);
37462
37463
37464
37465
37466
37467
37468
37469 UnicodeString(const UnicodeString& that);
37470
37471
37472
37473
37474
37475
37476
37477 UnicodeString(const UnicodeString& src, int32_t srcStart);
37478 # 3019 "/usr/include/unicode/unistr.h" 3 4
37479 UnicodeString(const UnicodeString& src, int32_t srcStart, int32_t srcLength);
37480 # 3037 "/usr/include/unicode/unistr.h" 3 4
37481 virtual Replaceable *clone() const;
37482
37483
37484
37485
37486 virtual ~UnicodeString();
37487 # 3057 "/usr/include/unicode/unistr.h" 3 4
37488 static UnicodeString fromUTF8(const StringPiece &utf8);
37489 # 3070 "/usr/include/unicode/unistr.h" 3 4
37490 static UnicodeString fromUTF32(const UChar32 *utf32, int32_t length);
37491 # 3108 "/usr/include/unicode/unistr.h" 3 4
37492 UnicodeString unescape() const;
37493 # 3129 "/usr/include/unicode/unistr.h" 3 4
37494 UChar32 unescapeAt(int32_t &offset) const;
37495
37496
37497
37498
37499
37500
37501 static UClassID getStaticClassID();
37502
37503
37504
37505
37506
37507
37508 virtual UClassID getDynamicClassID() const;
37509
37510
37511
37512
37513
37514 protected:
37515
37516
37517
37518
37519 virtual int32_t getLength() const;
37520
37521
37522
37523
37524
37525
37526 virtual UChar getCharAt(int32_t offset) const;
37527
37528
37529
37530
37531
37532
37533 virtual UChar32 getChar32At(int32_t offset) const;
37534
37535 private:
37536
37537 UnicodeString &setToUTF8(const StringPiece &utf8);
37538
37539
37540
37541
37542
37543 int32_t
37544 toUTF8(int32_t start, int32_t len,
37545 char *target, int32_t capacity) const;
37546
37547
37548 inline int8_t
37549 doCompare(int32_t start,
37550 int32_t length,
37551 const UnicodeString& srcText,
37552 int32_t srcStart,
37553 int32_t srcLength) const;
37554
37555 int8_t doCompare(int32_t start,
37556 int32_t length,
37557 const UChar *srcChars,
37558 int32_t srcStart,
37559 int32_t srcLength) const;
37560
37561 inline int8_t
37562 doCompareCodePointOrder(int32_t start,
37563 int32_t length,
37564 const UnicodeString& srcText,
37565 int32_t srcStart,
37566 int32_t srcLength) const;
37567
37568 int8_t doCompareCodePointOrder(int32_t start,
37569 int32_t length,
37570 const UChar *srcChars,
37571 int32_t srcStart,
37572 int32_t srcLength) const;
37573
37574 inline int8_t
37575 doCaseCompare(int32_t start,
37576 int32_t length,
37577 const UnicodeString &srcText,
37578 int32_t srcStart,
37579 int32_t srcLength,
37580 uint32_t options) const;
37581
37582 int8_t
37583 doCaseCompare(int32_t start,
37584 int32_t length,
37585 const UChar *srcChars,
37586 int32_t srcStart,
37587 int32_t srcLength,
37588 uint32_t options) const;
37589
37590 int32_t doIndexOf(UChar c,
37591 int32_t start,
37592 int32_t length) const;
37593
37594 int32_t doIndexOf(UChar32 c,
37595 int32_t start,
37596 int32_t length) const;
37597
37598 int32_t doLastIndexOf(UChar c,
37599 int32_t start,
37600 int32_t length) const;
37601
37602 int32_t doLastIndexOf(UChar32 c,
37603 int32_t start,
37604 int32_t length) const;
37605
37606 void doExtract(int32_t start,
37607 int32_t length,
37608 UChar *dst,
37609 int32_t dstStart) const;
37610
37611 inline void doExtract(int32_t start,
37612 int32_t length,
37613 UnicodeString& target) const;
37614
37615 inline UChar doCharAt(int32_t offset) const;
37616
37617 UnicodeString& doReplace(int32_t start,
37618 int32_t length,
37619 const UnicodeString& srcText,
37620 int32_t srcStart,
37621 int32_t srcLength);
37622
37623 UnicodeString& doReplace(int32_t start,
37624 int32_t length,
37625 const UChar *srcChars,
37626 int32_t srcStart,
37627 int32_t srcLength);
37628
37629 UnicodeString& doReverse(int32_t start,
37630 int32_t length);
37631
37632
37633 int32_t doHashCode(void) const;
37634
37635
37636
37637 inline UChar* getArrayStart(void);
37638 inline const UChar* getArrayStart(void) const;
37639
37640
37641
37642 inline UBool isWritable() const;
37643
37644
37645 inline UBool isBufferWritable() const;
37646
37647
37648 inline void setLength(int32_t len);
37649 inline void setToEmpty();
37650 inline void setArray(UChar *array, int32_t len, int32_t capacity);
37651
37652
37653
37654
37655
37656 UBool allocate(int32_t capacity);
37657
37658
37659 void releaseArray(void);
37660
37661
37662 void unBogus();
37663
37664
37665 UnicodeString &copyFrom(const UnicodeString &src, UBool fastCopy=0);
37666
37667
37668 inline void pinIndex(int32_t& start) const;
37669 inline void pinIndices(int32_t& start,
37670 int32_t& length) const;
37671
37672
37673
37674
37675 int32_t doExtract(int32_t start, int32_t length,
37676 char *dest, int32_t destCapacity,
37677 UConverter *cnv,
37678 UErrorCode &errorCode) const;
37679 # 3325 "/usr/include/unicode/unistr.h" 3 4
37680 void doCodepageCreate(const char *codepageData,
37681 int32_t dataLength,
37682 const char *codepage);
37683
37684
37685
37686
37687
37688 void
37689 doCodepageCreate(const char *codepageData,
37690 int32_t dataLength,
37691 UConverter *converter,
37692 UErrorCode &status);
37693 # 3352 "/usr/include/unicode/unistr.h" 3 4
37694 UBool cloneArrayIfNeeded(int32_t newCapacity = -1,
37695 int32_t growCapacity = -1,
37696 UBool doCopyArray = 1,
37697 int32_t **pBufferToDelete = 0,
37698 UBool forceClone = 0);
37699
37700
37701 UnicodeString &
37702 caseMap(BreakIterator *titleIter,
37703 const char *locale,
37704 uint32_t options,
37705 int32_t toWhichCase);
37706
37707
37708 void addRef(void);
37709 int32_t removeRef(void);
37710 int32_t refCount(void) const;
37711
37712
37713 enum {
37714
37715
37716 US_STACKBUF_SIZE= sizeof(void *)==4 ? 13 : 15,
37717 kInvalidUChar=0xffff,
37718 kGrowSize=128,
37719 kInvalidHashCode=0,
37720 kEmptyHashCode=1,
37721
37722
37723 kIsBogus=1,
37724 kUsingStackBuffer=2,
37725 kRefCounted=4,
37726 kBufferIsReadonly=8,
37727 kOpenGetBuffer=16,
37728
37729
37730
37731 kShortString=kUsingStackBuffer,
37732 kLongString=kRefCounted,
37733 kReadonlyAlias=kBufferIsReadonly,
37734 kWritableAlias=0
37735 };
37736
37737 friend class StringThreadTest;
37738 friend class UnicodeStringAppendable;
37739
37740 union StackBufferOrFields;
37741 friend union StackBufferOrFields;
37742 # 3436 "/usr/include/unicode/unistr.h" 3 4
37743 union StackBufferOrFields {
37744
37745
37746 UChar fStackBuffer[8];
37747 struct {
37748 UChar *fArray;
37749 int32_t fCapacity;
37750 int32_t fLength;
37751 } fFields;
37752 } fUnion;
37753 UChar fRestOfStackBuffer[US_STACKBUF_SIZE-8];
37754 int8_t fShortLength;
37755 uint8_t fFlags;
37756 };
37757 # 3459 "/usr/include/unicode/unistr.h" 3 4
37758 UnicodeString
37759 operator+ (const UnicodeString &s1, const UnicodeString &s2);
37760 # 3470 "/usr/include/unicode/unistr.h" 3 4
37761 inline void
37762 UnicodeString::pinIndex(int32_t& start) const
37763 {
37764
37765 if(start < 0) {
37766 start = 0;
37767 } else if(start > length()) {
37768 start = length();
37769 }
37770 }
37771
37772 inline void
37773 UnicodeString::pinIndices(int32_t& start,
37774 int32_t& _length) const
37775 {
37776
37777 int32_t len = length();
37778 if(start < 0) {
37779 start = 0;
37780 } else if(start > len) {
37781 start = len;
37782 }
37783 if(_length < 0) {
37784 _length = 0;
37785 } else if(_length > (len - start)) {
37786 _length = (len - start);
37787 }
37788 }
37789
37790 inline UChar*
37791 UnicodeString::getArrayStart()
37792 { return (fFlags&kUsingStackBuffer) ? fUnion.fStackBuffer : fUnion.fFields.fArray; }
37793
37794 inline const UChar*
37795 UnicodeString::getArrayStart() const
37796 { return (fFlags&kUsingStackBuffer) ? fUnion.fStackBuffer : fUnion.fFields.fArray; }
37797
37798
37799
37800
37801 inline int32_t
37802 UnicodeString::length() const
37803 { return fShortLength>=0 ? fShortLength : fUnion.fFields.fLength; }
37804
37805 inline int32_t
37806 UnicodeString::getCapacity() const
37807 { return (fFlags&kUsingStackBuffer) ? US_STACKBUF_SIZE : fUnion.fFields.fCapacity; }
37808
37809 inline int32_t
37810 UnicodeString::hashCode() const
37811 { return doHashCode(); }
37812
37813 inline UBool
37814 UnicodeString::isBogus() const
37815 { return (UBool)(fFlags & kIsBogus); }
37816
37817 inline UBool
37818 UnicodeString::isWritable() const
37819 { return (UBool)!(fFlags&(kOpenGetBuffer|kIsBogus)); }
37820
37821 inline UBool
37822 UnicodeString::isBufferWritable() const
37823 {
37824 return (UBool)(
37825 !(fFlags&(kOpenGetBuffer|kIsBogus|kBufferIsReadonly)) &&
37826 (!(fFlags&kRefCounted) || refCount()==1));
37827 }
37828
37829 inline const UChar *
37830 UnicodeString::getBuffer() const {
37831 if(fFlags&(kIsBogus|kOpenGetBuffer)) {
37832 return 0;
37833 } else if(fFlags&kUsingStackBuffer) {
37834 return fUnion.fStackBuffer;
37835 } else {
37836 return fUnion.fFields.fArray;
37837 }
37838 }
37839
37840
37841
37842
37843 inline int8_t
37844 UnicodeString::doCompare(int32_t start,
37845 int32_t thisLength,
37846 const UnicodeString& srcText,
37847 int32_t srcStart,
37848 int32_t srcLength) const
37849 {
37850 if(srcText.isBogus()) {
37851 return (int8_t)!isBogus();
37852 } else {
37853 srcText.pinIndices(srcStart, srcLength);
37854 return doCompare(start, thisLength, srcText.getArrayStart(), srcStart, srcLength);
37855 }
37856 }
37857
37858 inline UBool
37859 UnicodeString::operator== (const UnicodeString& text) const
37860 {
37861 if(isBogus()) {
37862 return text.isBogus();
37863 } else {
37864 int32_t len = length(), textLength = text.length();
37865 return
37866 !text.isBogus() &&
37867 len == textLength &&
37868 doCompare(0, len, text, 0, textLength) == 0;
37869 }
37870 }
37871
37872 inline UBool
37873 UnicodeString::operator!= (const UnicodeString& text) const
37874 { return (! operator==(text)); }
37875
37876 inline UBool
37877 UnicodeString::operator> (const UnicodeString& text) const
37878 { return doCompare(0, length(), text, 0, text.length()) == 1; }
37879
37880 inline UBool
37881 UnicodeString::operator< (const UnicodeString& text) const
37882 { return doCompare(0, length(), text, 0, text.length()) == -1; }
37883
37884 inline UBool
37885 UnicodeString::operator>= (const UnicodeString& text) const
37886 { return doCompare(0, length(), text, 0, text.length()) != -1; }
37887
37888 inline UBool
37889 UnicodeString::operator<= (const UnicodeString& text) const
37890 { return doCompare(0, length(), text, 0, text.length()) != 1; }
37891
37892 inline int8_t
37893 UnicodeString::compare(const UnicodeString& text) const
37894 { return doCompare(0, length(), text, 0, text.length()); }
37895
37896 inline int8_t
37897 UnicodeString::compare(int32_t start,
37898 int32_t _length,
37899 const UnicodeString& srcText) const
37900 { return doCompare(start, _length, srcText, 0, srcText.length()); }
37901
37902 inline int8_t
37903 UnicodeString::compare(const UChar *srcChars,
37904 int32_t srcLength) const
37905 { return doCompare(0, length(), srcChars, 0, srcLength); }
37906
37907 inline int8_t
37908 UnicodeString::compare(int32_t start,
37909 int32_t _length,
37910 const UnicodeString& srcText,
37911 int32_t srcStart,
37912 int32_t srcLength) const
37913 { return doCompare(start, _length, srcText, srcStart, srcLength); }
37914
37915 inline int8_t
37916 UnicodeString::compare(int32_t start,
37917 int32_t _length,
37918 const UChar *srcChars) const
37919 { return doCompare(start, _length, srcChars, 0, _length); }
37920
37921 inline int8_t
37922 UnicodeString::compare(int32_t start,
37923 int32_t _length,
37924 const UChar *srcChars,
37925 int32_t srcStart,
37926 int32_t srcLength) const
37927 { return doCompare(start, _length, srcChars, srcStart, srcLength); }
37928
37929 inline int8_t
37930 UnicodeString::compareBetween(int32_t start,
37931 int32_t limit,
37932 const UnicodeString& srcText,
37933 int32_t srcStart,
37934 int32_t srcLimit) const
37935 { return doCompare(start, limit - start,
37936 srcText, srcStart, srcLimit - srcStart); }
37937
37938 inline int8_t
37939 UnicodeString::doCompareCodePointOrder(int32_t start,
37940 int32_t thisLength,
37941 const UnicodeString& srcText,
37942 int32_t srcStart,
37943 int32_t srcLength) const
37944 {
37945 if(srcText.isBogus()) {
37946 return (int8_t)!isBogus();
37947 } else {
37948 srcText.pinIndices(srcStart, srcLength);
37949 return doCompareCodePointOrder(start, thisLength, srcText.getArrayStart(), srcStart, srcLength);
37950 }
37951 }
37952
37953 inline int8_t
37954 UnicodeString::compareCodePointOrder(const UnicodeString& text) const
37955 { return doCompareCodePointOrder(0, length(), text, 0, text.length()); }
37956
37957 inline int8_t
37958 UnicodeString::compareCodePointOrder(int32_t start,
37959 int32_t _length,
37960 const UnicodeString& srcText) const
37961 { return doCompareCodePointOrder(start, _length, srcText, 0, srcText.length()); }
37962
37963 inline int8_t
37964 UnicodeString::compareCodePointOrder(const UChar *srcChars,
37965 int32_t srcLength) const
37966 { return doCompareCodePointOrder(0, length(), srcChars, 0, srcLength); }
37967
37968 inline int8_t
37969 UnicodeString::compareCodePointOrder(int32_t start,
37970 int32_t _length,
37971 const UnicodeString& srcText,
37972 int32_t srcStart,
37973 int32_t srcLength) const
37974 { return doCompareCodePointOrder(start, _length, srcText, srcStart, srcLength); }
37975
37976 inline int8_t
37977 UnicodeString::compareCodePointOrder(int32_t start,
37978 int32_t _length,
37979 const UChar *srcChars) const
37980 { return doCompareCodePointOrder(start, _length, srcChars, 0, _length); }
37981
37982 inline int8_t
37983 UnicodeString::compareCodePointOrder(int32_t start,
37984 int32_t _length,
37985 const UChar *srcChars,
37986 int32_t srcStart,
37987 int32_t srcLength) const
37988 { return doCompareCodePointOrder(start, _length, srcChars, srcStart, srcLength); }
37989
37990 inline int8_t
37991 UnicodeString::compareCodePointOrderBetween(int32_t start,
37992 int32_t limit,
37993 const UnicodeString& srcText,
37994 int32_t srcStart,
37995 int32_t srcLimit) const
37996 { return doCompareCodePointOrder(start, limit - start,
37997 srcText, srcStart, srcLimit - srcStart); }
37998
37999 inline int8_t
38000 UnicodeString::doCaseCompare(int32_t start,
38001 int32_t thisLength,
38002 const UnicodeString &srcText,
38003 int32_t srcStart,
38004 int32_t srcLength,
38005 uint32_t options) const
38006 {
38007 if(srcText.isBogus()) {
38008 return (int8_t)!isBogus();
38009 } else {
38010 srcText.pinIndices(srcStart, srcLength);
38011 return doCaseCompare(start, thisLength, srcText.getArrayStart(), srcStart, srcLength, options);
38012 }
38013 }
38014
38015 inline int8_t
38016 UnicodeString::caseCompare(const UnicodeString &text, uint32_t options) const {
38017 return doCaseCompare(0, length(), text, 0, text.length(), options);
38018 }
38019
38020 inline int8_t
38021 UnicodeString::caseCompare(int32_t start,
38022 int32_t _length,
38023 const UnicodeString &srcText,
38024 uint32_t options) const {
38025 return doCaseCompare(start, _length, srcText, 0, srcText.length(), options);
38026 }
38027
38028 inline int8_t
38029 UnicodeString::caseCompare(const UChar *srcChars,
38030 int32_t srcLength,
38031 uint32_t options) const {
38032 return doCaseCompare(0, length(), srcChars, 0, srcLength, options);
38033 }
38034
38035 inline int8_t
38036 UnicodeString::caseCompare(int32_t start,
38037 int32_t _length,
38038 const UnicodeString &srcText,
38039 int32_t srcStart,
38040 int32_t srcLength,
38041 uint32_t options) const {
38042 return doCaseCompare(start, _length, srcText, srcStart, srcLength, options);
38043 }
38044
38045 inline int8_t
38046 UnicodeString::caseCompare(int32_t start,
38047 int32_t _length,
38048 const UChar *srcChars,
38049 uint32_t options) const {
38050 return doCaseCompare(start, _length, srcChars, 0, _length, options);
38051 }
38052
38053 inline int8_t
38054 UnicodeString::caseCompare(int32_t start,
38055 int32_t _length,
38056 const UChar *srcChars,
38057 int32_t srcStart,
38058 int32_t srcLength,
38059 uint32_t options) const {
38060 return doCaseCompare(start, _length, srcChars, srcStart, srcLength, options);
38061 }
38062
38063 inline int8_t
38064 UnicodeString::caseCompareBetween(int32_t start,
38065 int32_t limit,
38066 const UnicodeString &srcText,
38067 int32_t srcStart,
38068 int32_t srcLimit,
38069 uint32_t options) const {
38070 return doCaseCompare(start, limit - start, srcText, srcStart, srcLimit - srcStart, options);
38071 }
38072
38073 inline int32_t
38074 UnicodeString::indexOf(const UnicodeString& srcText,
38075 int32_t srcStart,
38076 int32_t srcLength,
38077 int32_t start,
38078 int32_t _length) const
38079 {
38080 if(!srcText.isBogus()) {
38081 srcText.pinIndices(srcStart, srcLength);
38082 if(srcLength > 0) {
38083 return indexOf(srcText.getArrayStart(), srcStart, srcLength, start, _length);
38084 }
38085 }
38086 return -1;
38087 }
38088
38089 inline int32_t
38090 UnicodeString::indexOf(const UnicodeString& text) const
38091 { return indexOf(text, 0, text.length(), 0, length()); }
38092
38093 inline int32_t
38094 UnicodeString::indexOf(const UnicodeString& text,
38095 int32_t start) const {
38096 pinIndex(start);
38097 return indexOf(text, 0, text.length(), start, length() - start);
38098 }
38099
38100 inline int32_t
38101 UnicodeString::indexOf(const UnicodeString& text,
38102 int32_t start,
38103 int32_t _length) const
38104 { return indexOf(text, 0, text.length(), start, _length); }
38105
38106 inline int32_t
38107 UnicodeString::indexOf(const UChar *srcChars,
38108 int32_t srcLength,
38109 int32_t start) const {
38110 pinIndex(start);
38111 return indexOf(srcChars, 0, srcLength, start, length() - start);
38112 }
38113
38114 inline int32_t
38115 UnicodeString::indexOf(const UChar *srcChars,
38116 int32_t srcLength,
38117 int32_t start,
38118 int32_t _length) const
38119 { return indexOf(srcChars, 0, srcLength, start, _length); }
38120
38121 inline int32_t
38122 UnicodeString::indexOf(UChar c,
38123 int32_t start,
38124 int32_t _length) const
38125 { return doIndexOf(c, start, _length); }
38126
38127 inline int32_t
38128 UnicodeString::indexOf(UChar32 c,
38129 int32_t start,
38130 int32_t _length) const
38131 { return doIndexOf(c, start, _length); }
38132
38133 inline int32_t
38134 UnicodeString::indexOf(UChar c) const
38135 { return doIndexOf(c, 0, length()); }
38136
38137 inline int32_t
38138 UnicodeString::indexOf(UChar32 c) const
38139 { return indexOf(c, 0, length()); }
38140
38141 inline int32_t
38142 UnicodeString::indexOf(UChar c,
38143 int32_t start) const {
38144 pinIndex(start);
38145 return doIndexOf(c, start, length() - start);
38146 }
38147
38148 inline int32_t
38149 UnicodeString::indexOf(UChar32 c,
38150 int32_t start) const {
38151 pinIndex(start);
38152 return indexOf(c, start, length() - start);
38153 }
38154
38155 inline int32_t
38156 UnicodeString::lastIndexOf(const UChar *srcChars,
38157 int32_t srcLength,
38158 int32_t start,
38159 int32_t _length) const
38160 { return lastIndexOf(srcChars, 0, srcLength, start, _length); }
38161
38162 inline int32_t
38163 UnicodeString::lastIndexOf(const UChar *srcChars,
38164 int32_t srcLength,
38165 int32_t start) const {
38166 pinIndex(start);
38167 return lastIndexOf(srcChars, 0, srcLength, start, length() - start);
38168 }
38169
38170 inline int32_t
38171 UnicodeString::lastIndexOf(const UnicodeString& srcText,
38172 int32_t srcStart,
38173 int32_t srcLength,
38174 int32_t start,
38175 int32_t _length) const
38176 {
38177 if(!srcText.isBogus()) {
38178 srcText.pinIndices(srcStart, srcLength);
38179 if(srcLength > 0) {
38180 return lastIndexOf(srcText.getArrayStart(), srcStart, srcLength, start, _length);
38181 }
38182 }
38183 return -1;
38184 }
38185
38186 inline int32_t
38187 UnicodeString::lastIndexOf(const UnicodeString& text,
38188 int32_t start,
38189 int32_t _length) const
38190 { return lastIndexOf(text, 0, text.length(), start, _length); }
38191
38192 inline int32_t
38193 UnicodeString::lastIndexOf(const UnicodeString& text,
38194 int32_t start) const {
38195 pinIndex(start);
38196 return lastIndexOf(text, 0, text.length(), start, length() - start);
38197 }
38198
38199 inline int32_t
38200 UnicodeString::lastIndexOf(const UnicodeString& text) const
38201 { return lastIndexOf(text, 0, text.length(), 0, length()); }
38202
38203 inline int32_t
38204 UnicodeString::lastIndexOf(UChar c,
38205 int32_t start,
38206 int32_t _length) const
38207 { return doLastIndexOf(c, start, _length); }
38208
38209 inline int32_t
38210 UnicodeString::lastIndexOf(UChar32 c,
38211 int32_t start,
38212 int32_t _length) const {
38213 return doLastIndexOf(c, start, _length);
38214 }
38215
38216 inline int32_t
38217 UnicodeString::lastIndexOf(UChar c) const
38218 { return doLastIndexOf(c, 0, length()); }
38219
38220 inline int32_t
38221 UnicodeString::lastIndexOf(UChar32 c) const {
38222 return lastIndexOf(c, 0, length());
38223 }
38224
38225 inline int32_t
38226 UnicodeString::lastIndexOf(UChar c,
38227 int32_t start) const {
38228 pinIndex(start);
38229 return doLastIndexOf(c, start, length() - start);
38230 }
38231
38232 inline int32_t
38233 UnicodeString::lastIndexOf(UChar32 c,
38234 int32_t start) const {
38235 pinIndex(start);
38236 return lastIndexOf(c, start, length() - start);
38237 }
38238
38239 inline UBool
38240 UnicodeString::startsWith(const UnicodeString& text) const
38241 { return compare(0, text.length(), text, 0, text.length()) == 0; }
38242
38243 inline UBool
38244 UnicodeString::startsWith(const UnicodeString& srcText,
38245 int32_t srcStart,
38246 int32_t srcLength) const
38247 { return doCompare(0, srcLength, srcText, srcStart, srcLength) == 0; }
38248
38249 inline UBool
38250 UnicodeString::startsWith(const UChar *srcChars, int32_t srcLength) const {
38251 if(srcLength < 0) {
38252 srcLength = u_strlen_48(srcChars);
38253 }
38254 return doCompare(0, srcLength, srcChars, 0, srcLength) == 0;
38255 }
38256
38257 inline UBool
38258 UnicodeString::startsWith(const UChar *srcChars, int32_t srcStart, int32_t srcLength) const {
38259 if(srcLength < 0) {
38260 srcLength = u_strlen_48(srcChars);
38261 }
38262 return doCompare(0, srcLength, srcChars, srcStart, srcLength) == 0;
38263 }
38264
38265 inline UBool
38266 UnicodeString::endsWith(const UnicodeString& text) const
38267 { return doCompare(length() - text.length(), text.length(),
38268 text, 0, text.length()) == 0; }
38269
38270 inline UBool
38271 UnicodeString::endsWith(const UnicodeString& srcText,
38272 int32_t srcStart,
38273 int32_t srcLength) const {
38274 srcText.pinIndices(srcStart, srcLength);
38275 return doCompare(length() - srcLength, srcLength,
38276 srcText, srcStart, srcLength) == 0;
38277 }
38278
38279 inline UBool
38280 UnicodeString::endsWith(const UChar *srcChars,
38281 int32_t srcLength) const {
38282 if(srcLength < 0) {
38283 srcLength = u_strlen_48(srcChars);
38284 }
38285 return doCompare(length() - srcLength, srcLength,
38286 srcChars, 0, srcLength) == 0;
38287 }
38288
38289 inline UBool
38290 UnicodeString::endsWith(const UChar *srcChars,
38291 int32_t srcStart,
38292 int32_t srcLength) const {
38293 if(srcLength < 0) {
38294 srcLength = u_strlen_48(srcChars + srcStart);
38295 }
38296 return doCompare(length() - srcLength, srcLength,
38297 srcChars, srcStart, srcLength) == 0;
38298 }
38299
38300
38301
38302
38303 inline UnicodeString&
38304 UnicodeString::replace(int32_t start,
38305 int32_t _length,
38306 const UnicodeString& srcText)
38307 { return doReplace(start, _length, srcText, 0, srcText.length()); }
38308
38309 inline UnicodeString&
38310 UnicodeString::replace(int32_t start,
38311 int32_t _length,
38312 const UnicodeString& srcText,
38313 int32_t srcStart,
38314 int32_t srcLength)
38315 { return doReplace(start, _length, srcText, srcStart, srcLength); }
38316
38317 inline UnicodeString&
38318 UnicodeString::replace(int32_t start,
38319 int32_t _length,
38320 const UChar *srcChars,
38321 int32_t srcLength)
38322 { return doReplace(start, _length, srcChars, 0, srcLength); }
38323
38324 inline UnicodeString&
38325 UnicodeString::replace(int32_t start,
38326 int32_t _length,
38327 const UChar *srcChars,
38328 int32_t srcStart,
38329 int32_t srcLength)
38330 { return doReplace(start, _length, srcChars, srcStart, srcLength); }
38331
38332 inline UnicodeString&
38333 UnicodeString::replace(int32_t start,
38334 int32_t _length,
38335 UChar srcChar)
38336 { return doReplace(start, _length, &srcChar, 0, 1); }
38337
38338 inline UnicodeString&
38339 UnicodeString::replace(int32_t start,
38340 int32_t _length,
38341 UChar32 srcChar) {
38342 UChar buffer[2];
38343 int32_t count = 0;
38344 UBool isError = 0;
38345 { if((uint32_t)(srcChar)<=0xffff) { (buffer)[(count)++]=(uint16_t)(srcChar); } else if((uint32_t)(srcChar)<=0x10ffff && (count)+1<(2)) { (buffer)[(count)++]=(uint16_t)(((srcChar)>>10)+0xd7c0); (buffer)[(count)++]=(uint16_t)(((srcChar)&0x3ff)|0xdc00); } else { (isError)=1; } };
38346 return doReplace(start, _length, buffer, 0, count);
38347 }
38348
38349 inline UnicodeString&
38350 UnicodeString::replaceBetween(int32_t start,
38351 int32_t limit,
38352 const UnicodeString& srcText)
38353 { return doReplace(start, limit - start, srcText, 0, srcText.length()); }
38354
38355 inline UnicodeString&
38356 UnicodeString::replaceBetween(int32_t start,
38357 int32_t limit,
38358 const UnicodeString& srcText,
38359 int32_t srcStart,
38360 int32_t srcLimit)
38361 { return doReplace(start, limit - start, srcText, srcStart, srcLimit - srcStart); }
38362
38363 inline UnicodeString&
38364 UnicodeString::findAndReplace(const UnicodeString& oldText,
38365 const UnicodeString& newText)
38366 { return findAndReplace(0, length(), oldText, 0, oldText.length(),
38367 newText, 0, newText.length()); }
38368
38369 inline UnicodeString&
38370 UnicodeString::findAndReplace(int32_t start,
38371 int32_t _length,
38372 const UnicodeString& oldText,
38373 const UnicodeString& newText)
38374 { return findAndReplace(start, _length, oldText, 0, oldText.length(),
38375 newText, 0, newText.length()); }
38376
38377
38378
38379
38380 inline void
38381 UnicodeString::doExtract(int32_t start,
38382 int32_t _length,
38383 UnicodeString& target) const
38384 { target.replace(0, target.length(), *this, start, _length); }
38385
38386 inline void
38387 UnicodeString::extract(int32_t start,
38388 int32_t _length,
38389 UChar *target,
38390 int32_t targetStart) const
38391 { doExtract(start, _length, target, targetStart); }
38392
38393 inline void
38394 UnicodeString::extract(int32_t start,
38395 int32_t _length,
38396 UnicodeString& target) const
38397 { doExtract(start, _length, target); }
38398
38399
38400
38401 inline int32_t
38402 UnicodeString::extract(int32_t start,
38403 int32_t _length,
38404 char *dst,
38405 const char *codepage) const
38406
38407 {
38408
38409 return extract(start, _length, dst, dst!=0 ? 0xffffffff : 0, codepage);
38410 }
38411
38412
38413
38414 inline void
38415 UnicodeString::extractBetween(int32_t start,
38416 int32_t limit,
38417 UChar *dst,
38418 int32_t dstStart) const {
38419 pinIndex(start);
38420 pinIndex(limit);
38421 doExtract(start, limit - start, dst, dstStart);
38422 }
38423
38424 inline UnicodeString
38425 UnicodeString::tempSubStringBetween(int32_t start, int32_t limit) const {
38426 return tempSubString(start, limit - start);
38427 }
38428
38429 inline UChar
38430 UnicodeString::doCharAt(int32_t offset) const
38431 {
38432 if((uint32_t)offset < (uint32_t)length()) {
38433 return getArrayStart()[offset];
38434 } else {
38435 return kInvalidUChar;
38436 }
38437 }
38438
38439 inline UChar
38440 UnicodeString::charAt(int32_t offset) const
38441 { return doCharAt(offset); }
38442
38443 inline UChar
38444 UnicodeString::operator[] (int32_t offset) const
38445 { return doCharAt(offset); }
38446
38447 inline UChar32
38448 UnicodeString::char32At(int32_t offset) const
38449 {
38450 int32_t len = length();
38451 if((uint32_t)offset < (uint32_t)len) {
38452 const UChar *array = getArrayStart();
38453 UChar32 c;
38454 { (c)=(array)[offset]; if((((c)&0xfffff800)==0xd800)) { uint16_t __c2; if((((c)&0x400)==0)) { if((offset)+1<(len) && (((__c2=(array)[(offset)+1])&0xfffffc00)==0xdc00)) { (c)=(((UChar32)((c))<<10UL)+(UChar32)(__c2)-((0xd800<<10UL)+0xdc00-0x10000)); } } else { if((offset)>(0) && (((__c2=(array)[(offset)-1])&0xfffffc00)==0xd800)) { (c)=(((UChar32)(__c2)<<10UL)+(UChar32)((c))-((0xd800<<10UL)+0xdc00-0x10000)); } } } };
38455 return c;
38456 } else {
38457 return kInvalidUChar;
38458 }
38459 }
38460
38461 inline int32_t
38462 UnicodeString::getChar32Start(int32_t offset) const {
38463 if((uint32_t)offset < (uint32_t)length()) {
38464 const UChar *array = getArrayStart();
38465 { if(((((array)[offset])&0xfffffc00)==0xdc00) && (offset)>(0) && ((((array)[(offset)-1])&0xfffffc00)==0xd800)) { --(offset); } };
38466 return offset;
38467 } else {
38468 return 0;
38469 }
38470 }
38471
38472 inline int32_t
38473 UnicodeString::getChar32Limit(int32_t offset) const {
38474 int32_t len = length();
38475 if((uint32_t)offset < (uint32_t)len) {
38476 const UChar *array = getArrayStart();
38477 { if((0)<(offset) && (offset)<(len) && ((((array)[(offset)-1])&0xfffffc00)==0xd800) && ((((array)[offset])&0xfffffc00)==0xdc00)) { ++(offset); } };
38478 return offset;
38479 } else {
38480 return len;
38481 }
38482 }
38483
38484 inline UBool
38485 UnicodeString::isEmpty() const {
38486 return fShortLength == 0;
38487 }
38488
38489
38490
38491
38492 inline void
38493 UnicodeString::setLength(int32_t len) {
38494 if(len <= 127) {
38495 fShortLength = (int8_t)len;
38496 } else {
38497 fShortLength = (int8_t)-1;
38498 fUnion.fFields.fLength = len;
38499 }
38500 }
38501
38502 inline void
38503 UnicodeString::setToEmpty() {
38504 fShortLength = 0;
38505 fFlags = kShortString;
38506 }
38507
38508 inline void
38509 UnicodeString::setArray(UChar *array, int32_t len, int32_t capacity) {
38510 setLength(len);
38511 fUnion.fFields.fArray = array;
38512 fUnion.fFields.fCapacity = capacity;
38513 }
38514
38515 inline const UChar *
38516 UnicodeString::getTerminatedBuffer() {
38517 if(!isWritable()) {
38518 return 0;
38519 } else {
38520 UChar *array = getArrayStart();
38521 int32_t len = length();
38522 if(len < getCapacity() && ((fFlags&kRefCounted) == 0 || refCount() == 1)) {
38523
38524
38525
38526
38527
38528
38529 if(!(fFlags&kBufferIsReadonly)) {
38530 # 4253 "/usr/include/unicode/unistr.h" 3 4
38531 array[len] = 0;
38532 }
38533 return array;
38534 } else if(cloneArrayIfNeeded(len+1)) {
38535 array = getArrayStart();
38536 array[len] = 0;
38537 return array;
38538 } else {
38539 return 0;
38540 }
38541 }
38542 }
38543
38544 inline UnicodeString&
38545 UnicodeString::operator= (UChar ch)
38546 { return doReplace(0, length(), &ch, 0, 1); }
38547
38548 inline UnicodeString&
38549 UnicodeString::operator= (UChar32 ch)
38550 { return replace(0, length(), ch); }
38551
38552 inline UnicodeString&
38553 UnicodeString::setTo(const UnicodeString& srcText,
38554 int32_t srcStart,
38555 int32_t srcLength)
38556 {
38557 unBogus();
38558 return doReplace(0, length(), srcText, srcStart, srcLength);
38559 }
38560
38561 inline UnicodeString&
38562 UnicodeString::setTo(const UnicodeString& srcText,
38563 int32_t srcStart)
38564 {
38565 unBogus();
38566 srcText.pinIndex(srcStart);
38567 return doReplace(0, length(), srcText, srcStart, srcText.length() - srcStart);
38568 }
38569
38570 inline UnicodeString&
38571 UnicodeString::setTo(const UnicodeString& srcText)
38572 {
38573 return copyFrom(srcText);
38574 }
38575
38576 inline UnicodeString&
38577 UnicodeString::setTo(const UChar *srcChars,
38578 int32_t srcLength)
38579 {
38580 unBogus();
38581 return doReplace(0, length(), srcChars, 0, srcLength);
38582 }
38583
38584 inline UnicodeString&
38585 UnicodeString::setTo(UChar srcChar)
38586 {
38587 unBogus();
38588 return doReplace(0, length(), &srcChar, 0, 1);
38589 }
38590
38591 inline UnicodeString&
38592 UnicodeString::setTo(UChar32 srcChar)
38593 {
38594 unBogus();
38595 return replace(0, length(), srcChar);
38596 }
38597
38598 inline UnicodeString&
38599 UnicodeString::append(const UnicodeString& srcText,
38600 int32_t srcStart,
38601 int32_t srcLength)
38602 { return doReplace(length(), 0, srcText, srcStart, srcLength); }
38603
38604 inline UnicodeString&
38605 UnicodeString::append(const UnicodeString& srcText)
38606 { return doReplace(length(), 0, srcText, 0, srcText.length()); }
38607
38608 inline UnicodeString&
38609 UnicodeString::append(const UChar *srcChars,
38610 int32_t srcStart,
38611 int32_t srcLength)
38612 { return doReplace(length(), 0, srcChars, srcStart, srcLength); }
38613
38614 inline UnicodeString&
38615 UnicodeString::append(const UChar *srcChars,
38616 int32_t srcLength)
38617 { return doReplace(length(), 0, srcChars, 0, srcLength); }
38618
38619 inline UnicodeString&
38620 UnicodeString::append(UChar srcChar)
38621 { return doReplace(length(), 0, &srcChar, 0, 1); }
38622
38623 inline UnicodeString&
38624 UnicodeString::append(UChar32 srcChar) {
38625 UChar buffer[2];
38626 int32_t _length = 0;
38627 UBool isError = 0;
38628 { if((uint32_t)(srcChar)<=0xffff) { (buffer)[(_length)++]=(uint16_t)(srcChar); } else if((uint32_t)(srcChar)<=0x10ffff && (_length)+1<(2)) { (buffer)[(_length)++]=(uint16_t)(((srcChar)>>10)+0xd7c0); (buffer)[(_length)++]=(uint16_t)(((srcChar)&0x3ff)|0xdc00); } else { (isError)=1; } };
38629 return doReplace(length(), 0, buffer, 0, _length);
38630 }
38631
38632 inline UnicodeString&
38633 UnicodeString::operator+= (UChar ch)
38634 { return doReplace(length(), 0, &ch, 0, 1); }
38635
38636 inline UnicodeString&
38637 UnicodeString::operator+= (UChar32 ch) {
38638 return append(ch);
38639 }
38640
38641 inline UnicodeString&
38642 UnicodeString::operator+= (const UnicodeString& srcText)
38643 { return doReplace(length(), 0, srcText, 0, srcText.length()); }
38644
38645 inline UnicodeString&
38646 UnicodeString::insert(int32_t start,
38647 const UnicodeString& srcText,
38648 int32_t srcStart,
38649 int32_t srcLength)
38650 { return doReplace(start, 0, srcText, srcStart, srcLength); }
38651
38652 inline UnicodeString&
38653 UnicodeString::insert(int32_t start,
38654 const UnicodeString& srcText)
38655 { return doReplace(start, 0, srcText, 0, srcText.length()); }
38656
38657 inline UnicodeString&
38658 UnicodeString::insert(int32_t start,
38659 const UChar *srcChars,
38660 int32_t srcStart,
38661 int32_t srcLength)
38662 { return doReplace(start, 0, srcChars, srcStart, srcLength); }
38663
38664 inline UnicodeString&
38665 UnicodeString::insert(int32_t start,
38666 const UChar *srcChars,
38667 int32_t srcLength)
38668 { return doReplace(start, 0, srcChars, 0, srcLength); }
38669
38670 inline UnicodeString&
38671 UnicodeString::insert(int32_t start,
38672 UChar srcChar)
38673 { return doReplace(start, 0, &srcChar, 0, 1); }
38674
38675 inline UnicodeString&
38676 UnicodeString::insert(int32_t start,
38677 UChar32 srcChar)
38678 { return replace(start, 0, srcChar); }
38679
38680
38681 inline UnicodeString&
38682 UnicodeString::remove()
38683 {
38684
38685
38686
38687 if(fFlags & (kIsBogus|kBufferIsReadonly)) {
38688 setToEmpty();
38689 } else {
38690 fShortLength = 0;
38691 }
38692 return *this;
38693 }
38694
38695 inline UnicodeString&
38696 UnicodeString::remove(int32_t start,
38697 int32_t _length)
38698 {
38699 if(start <= 0 && _length == ((int32_t)(2147483647))) {
38700
38701 return remove();
38702 }
38703 return doReplace(start, _length, __null, 0, 0);
38704 }
38705
38706 inline UnicodeString&
38707 UnicodeString::removeBetween(int32_t start,
38708 int32_t limit)
38709 { return doReplace(start, limit - start, __null, 0, 0); }
38710
38711 inline UnicodeString &
38712 UnicodeString::retainBetween(int32_t start, int32_t limit) {
38713 truncate(limit);
38714 return doReplace(0, start, __null, 0, 0);
38715 }
38716
38717 inline UBool
38718 UnicodeString::truncate(int32_t targetLength)
38719 {
38720 if(isBogus() && targetLength == 0) {
38721
38722 unBogus();
38723 return 0;
38724 } else if((uint32_t)targetLength < (uint32_t)length()) {
38725 setLength(targetLength);
38726 if(fFlags&kBufferIsReadonly) {
38727 fUnion.fFields.fCapacity = targetLength;
38728 }
38729 return 1;
38730 } else {
38731 return 0;
38732 }
38733 }
38734
38735 inline UnicodeString&
38736 UnicodeString::reverse()
38737 { return doReverse(0, length()); }
38738
38739 inline UnicodeString&
38740 UnicodeString::reverse(int32_t start,
38741 int32_t _length)
38742 { return doReverse(start, _length); }
38743
38744 } }
38745 # 15 "/usr/include/unicode/strenum.h" 2 3 4
38746
38747
38748
38749
38750
38751
38752 extern "C++" { namespace icu_48 {
38753 # 55 "/usr/include/unicode/strenum.h" 3 4
38754 class StringEnumeration : public UObject {
38755 public:
38756
38757
38758
38759
38760 virtual ~StringEnumeration();
38761 # 78 "/usr/include/unicode/strenum.h" 3 4
38762 virtual StringEnumeration *clone() const;
38763 # 97 "/usr/include/unicode/strenum.h" 3 4
38764 virtual int32_t count(UErrorCode& status) const = 0;
38765 # 128 "/usr/include/unicode/strenum.h" 3 4
38766 virtual const char* next(int32_t *resultLength, UErrorCode& status);
38767 # 153 "/usr/include/unicode/strenum.h" 3 4
38768 virtual const UChar* unext(int32_t *resultLength, UErrorCode& status);
38769 # 171 "/usr/include/unicode/strenum.h" 3 4
38770 virtual const UnicodeString* snext(UErrorCode& status) = 0;
38771 # 185 "/usr/include/unicode/strenum.h" 3 4
38772 virtual void reset(UErrorCode& status) = 0;
38773 # 194 "/usr/include/unicode/strenum.h" 3 4
38774 virtual UBool operator==(const StringEnumeration& that)const;
38775
38776
38777
38778
38779
38780
38781
38782 virtual UBool operator!=(const StringEnumeration& that)const;
38783
38784 protected:
38785
38786
38787
38788
38789 UnicodeString unistr;
38790
38791
38792
38793
38794 char charsBuffer[32];
38795
38796
38797
38798
38799
38800 char *chars;
38801
38802
38803
38804
38805 int32_t charsCapacity;
38806
38807
38808
38809
38810
38811 StringEnumeration();
38812 # 241 "/usr/include/unicode/strenum.h" 3 4
38813 void ensureCharsCapacity(int32_t capacity, UErrorCode &status);
38814 # 265 "/usr/include/unicode/strenum.h" 3 4
38815 UnicodeString *setChars(const char *s, int32_t length, UErrorCode &status);
38816 };
38817
38818 } }
38819 # 25 "/usr/include/unicode/uenum.h" 2 3 4
38820 # 37 "/usr/include/unicode/uenum.h" 3 4
38821 struct UEnumeration;
38822
38823 typedef struct UEnumeration UEnumeration;
38824 # 48 "/usr/include/unicode/uenum.h" 3 4
38825 extern "C" __attribute__((visibility("default"))) void
38826 uenum_close_48(UEnumeration* en);
38827
38828
38829
38830 extern "C++" { namespace icu_48 {
38831 # 64 "/usr/include/unicode/uenum.h" 3 4
38832 class LocalUEnumerationPointer : public LocalPointerBase<UEnumeration> { public: explicit LocalUEnumerationPointer(UEnumeration *p=__null) : LocalPointerBase<UEnumeration>(p) {} ~LocalUEnumerationPointer() { uenum_close_48(ptr); } void adoptInstead(UEnumeration *p) { uenum_close_48(ptr); ptr=p; } };
38833
38834 } }
38835 # 84 "/usr/include/unicode/uenum.h" 3 4
38836 extern "C" __attribute__((visibility("default"))) int32_t
38837 uenum_count_48(UEnumeration* en, UErrorCode* status);
38838 # 108 "/usr/include/unicode/uenum.h" 3 4
38839 extern "C" __attribute__((visibility("default"))) const UChar*
38840 uenum_unext_48(UEnumeration* en,
38841 int32_t* resultLength,
38842 UErrorCode* status);
38843 # 141 "/usr/include/unicode/uenum.h" 3 4
38844 extern "C" __attribute__((visibility("default"))) const char*
38845 uenum_next_48(UEnumeration* en,
38846 int32_t* resultLength,
38847 UErrorCode* status);
38848 # 155 "/usr/include/unicode/uenum.h" 3 4
38849 extern "C" __attribute__((visibility("default"))) void
38850 uenum_reset_48(UEnumeration* en, UErrorCode* status);
38851 # 169 "/usr/include/unicode/uenum.h" 3 4
38852 extern "C" __attribute__((visibility("default"))) UEnumeration*
38853 uenum_openFromStringEnumeration_48(icu_48:: StringEnumeration* adopted, UErrorCode* ec);
38854 # 52 "/usr/include/unicode/ucnv.h" 2 3 4
38855 # 65 "/usr/include/unicode/ucnv.h" 3 4
38856 struct USet;
38857
38858 typedef struct USet USet;
38859
38860
38861
38862
38863
38864 extern "C" {
38865
38866
38867 #define UCNV_MAX_CONVERTER_NAME_LENGTH 60
38868
38869 #define UCNV_MAX_FULL_FILE_NAME_LENGTH (600+UCNV_MAX_CONVERTER_NAME_LENGTH)
38870
38871
38872 #define UCNV_SI 0x0F
38873
38874 #define UCNV_SO 0x0E
38875
38876
38877
38878
38879
38880
38881 typedef enum {
38882
38883 UCNV_UNSUPPORTED_CONVERTER = -1,
38884
38885 UCNV_SBCS = 0,
38886
38887 UCNV_DBCS = 1,
38888
38889 UCNV_MBCS = 2,
38890
38891 UCNV_LATIN_1 = 3,
38892
38893 UCNV_UTF8 = 4,
38894
38895 UCNV_UTF16_BigEndian = 5,
38896
38897 UCNV_UTF16_LittleEndian = 6,
38898
38899 UCNV_UTF32_BigEndian = 7,
38900
38901 UCNV_UTF32_LittleEndian = 8,
38902
38903 UCNV_EBCDIC_STATEFUL = 9,
38904
38905 UCNV_ISO_2022 = 10,
38906
38907
38908 UCNV_LMBCS_1 = 11,
38909
38910 UCNV_LMBCS_2,
38911
38912 UCNV_LMBCS_3,
38913
38914 UCNV_LMBCS_4,
38915
38916 UCNV_LMBCS_5,
38917
38918 UCNV_LMBCS_6,
38919
38920 UCNV_LMBCS_8,
38921
38922 UCNV_LMBCS_11,
38923
38924 UCNV_LMBCS_16,
38925
38926 UCNV_LMBCS_17,
38927
38928 UCNV_LMBCS_18,
38929
38930 UCNV_LMBCS_19,
38931
38932 UCNV_LMBCS_LAST = UCNV_LMBCS_19,
38933
38934 UCNV_HZ,
38935
38936 UCNV_SCSU,
38937
38938 UCNV_ISCII,
38939
38940 UCNV_US_ASCII,
38941
38942 UCNV_UTF7,
38943
38944 UCNV_BOCU1,
38945
38946 UCNV_UTF16,
38947
38948 UCNV_UTF32,
38949
38950 UCNV_CESU8,
38951
38952 UCNV_IMAP_MAILBOX,
38953
38954 UCNV_COMPOUND_TEXT,
38955
38956
38957 UCNV_NUMBER_OF_SUPPORTED_CONVERTER_TYPES
38958 } UConverterType;
38959 # 178 "/usr/include/unicode/ucnv.h" 3 4
38960 typedef enum {
38961 UCNV_UNKNOWN = -1,
38962 UCNV_IBM = 0
38963 } UConverterPlatform;
38964 # 198 "/usr/include/unicode/ucnv.h" 3 4
38965 typedef void ( *UConverterToUCallback) (
38966 const void* context,
38967 UConverterToUnicodeArgs *args,
38968 const char *codeUnits,
38969 int32_t length,
38970 UConverterCallbackReason reason,
38971 UErrorCode *pErrorCode);
38972 # 221 "/usr/include/unicode/ucnv.h" 3 4
38973 typedef void ( *UConverterFromUCallback) (
38974 const void* context,
38975 UConverterFromUnicodeArgs *args,
38976 const UChar* codeUnits,
38977 int32_t length,
38978 UChar32 codePoint,
38979 UConverterCallbackReason reason,
38980 UErrorCode *pErrorCode);
38981
38982 }
38983
38984
38985
38986
38987
38988
38989 #define UCNV_OPTION_SEP_CHAR ','
38990
38991
38992
38993
38994
38995
38996 #define UCNV_OPTION_SEP_STRING ","
38997
38998
38999
39000
39001
39002
39003 #define UCNV_VALUE_SEP_CHAR '='
39004
39005
39006
39007
39008
39009
39010 #define UCNV_VALUE_SEP_STRING "="
39011 # 268 "/usr/include/unicode/ucnv.h" 3 4
39012 #define UCNV_LOCALE_OPTION_STRING ",locale="
39013 # 281 "/usr/include/unicode/ucnv.h" 3 4
39014 #define UCNV_VERSION_OPTION_STRING ",version="
39015 # 293 "/usr/include/unicode/ucnv.h" 3 4
39016 #define UCNV_SWAP_LFNL_OPTION_STRING ",swaplfnl"
39017 # 310 "/usr/include/unicode/ucnv.h" 3 4
39018 extern "C" __attribute__((visibility("default"))) int
39019 ucnv_compareNames_48(const char *name1, const char *name2);
39020 # 362 "/usr/include/unicode/ucnv.h" 3 4
39021 extern "C" __attribute__((visibility("default"))) UConverter*
39022 ucnv_open_48(const char *converterName, UErrorCode *err);
39023 # 392 "/usr/include/unicode/ucnv.h" 3 4
39024 extern "C" __attribute__((visibility("default"))) UConverter*
39025 ucnv_openU_48(const UChar *name,
39026 UErrorCode *err);
39027 # 460 "/usr/include/unicode/ucnv.h" 3 4
39028 extern "C" __attribute__((visibility("default"))) UConverter*
39029 ucnv_openCCSID_48(int32_t codepage,
39030 UConverterPlatform platform,
39031 UErrorCode * err);
39032 # 495 "/usr/include/unicode/ucnv.h" 3 4
39033 extern "C" __attribute__((visibility("default"))) UConverter*
39034 ucnv_openPackage_48(const char *packageName, const char *converterName, UErrorCode *err);
39035 # 535 "/usr/include/unicode/ucnv.h" 3 4
39036 extern "C" __attribute__((visibility("default"))) UConverter *
39037 ucnv_safeClone_48(const UConverter *cnv,
39038 void *stackBuffer,
39039 int32_t *pBufferSize,
39040 UErrorCode *status);
39041
39042
39043
39044
39045
39046
39047
39048 #define U_CNV_SAFECLONE_BUFFERSIZE 1024
39049 # 560 "/usr/include/unicode/ucnv.h" 3 4
39050 extern "C" __attribute__((visibility("default"))) void
39051 ucnv_close_48(UConverter * converter);
39052
39053
39054
39055 extern "C++" { namespace icu_48 {
39056 # 576 "/usr/include/unicode/ucnv.h" 3 4
39057 class LocalUConverterPointer : public LocalPointerBase<UConverter> { public: explicit LocalUConverterPointer(UConverter *p=__null) : LocalPointerBase<UConverter>(p) {} ~LocalUConverterPointer() { ucnv_close_48(ptr); } void adoptInstead(UConverter *p) { ucnv_close_48(ptr); ptr=p; } };
39058
39059 } }
39060 # 599 "/usr/include/unicode/ucnv.h" 3 4
39061 extern "C" __attribute__((visibility("default"))) void
39062 ucnv_getSubstChars_48(const UConverter *converter,
39063 char *subChars,
39064 int8_t *len,
39065 UErrorCode *err);
39066 # 624 "/usr/include/unicode/ucnv.h" 3 4
39067 extern "C" __attribute__((visibility("default"))) void
39068 ucnv_setSubstChars_48(UConverter *converter,
39069 const char *subChars,
39070 int8_t len,
39071 UErrorCode *err);
39072 # 657 "/usr/include/unicode/ucnv.h" 3 4
39073 extern "C" __attribute__((visibility("default"))) void
39074 ucnv_setSubstString_48(UConverter *cnv,
39075 const UChar *s,
39076 int32_t length,
39077 UErrorCode *err);
39078 # 676 "/usr/include/unicode/ucnv.h" 3 4
39079 extern "C" __attribute__((visibility("default"))) void
39080 ucnv_getInvalidChars_48(const UConverter *converter,
39081 char *errBytes,
39082 int8_t *len,
39083 UErrorCode *err);
39084 # 695 "/usr/include/unicode/ucnv.h" 3 4
39085 extern "C" __attribute__((visibility("default"))) void
39086 ucnv_getInvalidUChars_48(const UConverter *converter,
39087 UChar *errUChars,
39088 int8_t *len,
39089 UErrorCode *err);
39090 # 708 "/usr/include/unicode/ucnv.h" 3 4
39091 extern "C" __attribute__((visibility("default"))) void
39092 ucnv_reset_48(UConverter *converter);
39093 # 719 "/usr/include/unicode/ucnv.h" 3 4
39094 extern "C" __attribute__((visibility("default"))) void
39095 ucnv_resetToUnicode_48(UConverter *converter);
39096 # 730 "/usr/include/unicode/ucnv.h" 3 4
39097 extern "C" __attribute__((visibility("default"))) void
39098 ucnv_resetFromUnicode_48(UConverter *converter);
39099 # 781 "/usr/include/unicode/ucnv.h" 3 4
39100 extern "C" __attribute__((visibility("default"))) int8_t
39101 ucnv_getMaxCharSize_48(const UConverter *converter);
39102 # 803 "/usr/include/unicode/ucnv.h" 3 4
39103 #define UCNV_GET_MAX_BYTES_FOR_STRING(length,maxCharSize) (((int32_t)(length)+10)*(int32_t)(maxCharSize))
39104 # 814 "/usr/include/unicode/ucnv.h" 3 4
39105 extern "C" __attribute__((visibility("default"))) int8_t
39106 ucnv_getMinCharSize_48(const UConverter *converter);
39107 # 831 "/usr/include/unicode/ucnv.h" 3 4
39108 extern "C" __attribute__((visibility("default"))) int32_t
39109 ucnv_getDisplayName_48(const UConverter *converter,
39110 const char *displayLocale,
39111 UChar *displayName,
39112 int32_t displayNameCapacity,
39113 UErrorCode *err);
39114 # 848 "/usr/include/unicode/ucnv.h" 3 4
39115 extern "C" __attribute__((visibility("default"))) const char *
39116 ucnv_getName_48(const UConverter *converter, UErrorCode *err);
39117 # 874 "/usr/include/unicode/ucnv.h" 3 4
39118 extern "C" __attribute__((visibility("default"))) int32_t
39119 ucnv_getCCSID_48(const UConverter *converter,
39120 UErrorCode *err);
39121 # 888 "/usr/include/unicode/ucnv.h" 3 4
39122 extern "C" __attribute__((visibility("default"))) UConverterPlatform
39123 ucnv_getPlatform_48(const UConverter *converter,
39124 UErrorCode *err);
39125 # 900 "/usr/include/unicode/ucnv.h" 3 4
39126 extern "C" __attribute__((visibility("default"))) UConverterType
39127 ucnv_getType_48(const UConverter * converter);
39128 # 918 "/usr/include/unicode/ucnv.h" 3 4
39129 extern "C" __attribute__((visibility("default"))) void
39130 ucnv_getStarters_48(const UConverter* converter,
39131 UBool starters[256],
39132 UErrorCode* err);
39133
39134
39135
39136
39137
39138
39139
39140 typedef enum UConverterUnicodeSet {
39141
39142 UCNV_ROUNDTRIP_SET,
39143
39144 UCNV_ROUNDTRIP_AND_FALLBACK_SET,
39145
39146 UCNV_SET_COUNT
39147 } UConverterUnicodeSet;
39148 # 984 "/usr/include/unicode/ucnv.h" 3 4
39149 extern "C" __attribute__((visibility("default"))) void
39150 ucnv_getUnicodeSet_48(const UConverter *cnv,
39151 USet *setFillIn,
39152 UConverterUnicodeSet whichSet,
39153 UErrorCode *pErrorCode);
39154 # 1001 "/usr/include/unicode/ucnv.h" 3 4
39155 extern "C" __attribute__((visibility("default"))) void
39156 ucnv_getToUCallBack_48 (const UConverter * converter,
39157 UConverterToUCallback *action,
39158 const void **context);
39159 # 1017 "/usr/include/unicode/ucnv.h" 3 4
39160 extern "C" __attribute__((visibility("default"))) void
39161 ucnv_getFromUCallBack_48 (const UConverter * converter,
39162 UConverterFromUCallback *action,
39163 const void **context);
39164 # 1037 "/usr/include/unicode/ucnv.h" 3 4
39165 extern "C" __attribute__((visibility("default"))) void
39166 ucnv_setToUCallBack_48 (UConverter * converter,
39167 UConverterToUCallback newAction,
39168 const void* newContext,
39169 UConverterToUCallback *oldAction,
39170 const void** oldContext,
39171 UErrorCode * err);
39172 # 1060 "/usr/include/unicode/ucnv.h" 3 4
39173 extern "C" __attribute__((visibility("default"))) void
39174 ucnv_setFromUCallBack_48 (UConverter * converter,
39175 UConverterFromUCallback newAction,
39176 const void *newContext,
39177 UConverterFromUCallback *oldAction,
39178 const void **oldContext,
39179 UErrorCode * err);
39180 # 1126 "/usr/include/unicode/ucnv.h" 3 4
39181 extern "C" __attribute__((visibility("default"))) void
39182 ucnv_fromUnicode_48 (UConverter * converter,
39183 char **target,
39184 const char *targetLimit,
39185 const UChar ** source,
39186 const UChar * sourceLimit,
39187 int32_t* offsets,
39188 UBool flush,
39189 UErrorCode * err);
39190 # 1195 "/usr/include/unicode/ucnv.h" 3 4
39191 extern "C" __attribute__((visibility("default"))) void
39192 ucnv_toUnicode_48(UConverter *converter,
39193 UChar **target,
39194 const UChar *targetLimit,
39195 const char **source,
39196 const char *sourceLimit,
39197 int32_t *offsets,
39198 UBool flush,
39199 UErrorCode *err);
39200 # 1232 "/usr/include/unicode/ucnv.h" 3 4
39201 extern "C" __attribute__((visibility("default"))) int32_t
39202 ucnv_fromUChars_48(UConverter *cnv,
39203 char *dest, int32_t destCapacity,
39204 const UChar *src, int32_t srcLength,
39205 UErrorCode *pErrorCode);
39206 # 1264 "/usr/include/unicode/ucnv.h" 3 4
39207 extern "C" __attribute__((visibility("default"))) int32_t
39208 ucnv_toUChars_48(UConverter *cnv,
39209 UChar *dest, int32_t destCapacity,
39210 const char *src, int32_t srcLength,
39211 UErrorCode *pErrorCode);
39212 # 1340 "/usr/include/unicode/ucnv.h" 3 4
39213 extern "C" __attribute__((visibility("default"))) UChar32
39214 ucnv_getNextUChar_48(UConverter * converter,
39215 const char **source,
39216 const char * sourceLimit,
39217 UErrorCode * err);
39218 # 1484 "/usr/include/unicode/ucnv.h" 3 4
39219 extern "C" __attribute__((visibility("default"))) void
39220 ucnv_convertEx_48(UConverter *targetCnv, UConverter *sourceCnv,
39221 char **target, const char *targetLimit,
39222 const char **source, const char *sourceLimit,
39223 UChar *pivotStart, UChar **pivotSource,
39224 UChar **pivotTarget, const UChar *pivotLimit,
39225 UBool reset, UBool flush,
39226 UErrorCode *pErrorCode);
39227 # 1548 "/usr/include/unicode/ucnv.h" 3 4
39228 extern "C" __attribute__((visibility("default"))) int32_t
39229 ucnv_convert_48(const char *toConverterName,
39230 const char *fromConverterName,
39231 char *target,
39232 int32_t targetCapacity,
39233 const char *source,
39234 int32_t sourceLength,
39235 UErrorCode *pErrorCode);
39236 # 1602 "/usr/include/unicode/ucnv.h" 3 4
39237 extern "C" __attribute__((visibility("default"))) int32_t
39238 ucnv_toAlgorithmic_48(UConverterType algorithmicType,
39239 UConverter *cnv,
39240 char *target, int32_t targetCapacity,
39241 const char *source, int32_t sourceLength,
39242 UErrorCode *pErrorCode);
39243 # 1654 "/usr/include/unicode/ucnv.h" 3 4
39244 extern "C" __attribute__((visibility("default"))) int32_t
39245 ucnv_fromAlgorithmic_48(UConverter *cnv,
39246 UConverterType algorithmicType,
39247 char *target, int32_t targetCapacity,
39248 const char *source, int32_t sourceLength,
39249 UErrorCode *pErrorCode);
39250 # 1668 "/usr/include/unicode/ucnv.h" 3 4
39251 extern "C" __attribute__((visibility("default"))) int32_t
39252 ucnv_flushCache_48(void);
39253 # 1678 "/usr/include/unicode/ucnv.h" 3 4
39254 extern "C" __attribute__((visibility("default"))) int32_t
39255 ucnv_countAvailable_48(void);
39256 # 1691 "/usr/include/unicode/ucnv.h" 3 4
39257 extern "C" __attribute__((visibility("default"))) const char*
39258 ucnv_getAvailableName_48(int32_t n);
39259 # 1706 "/usr/include/unicode/ucnv.h" 3 4
39260 extern "C" __attribute__((visibility("default"))) UEnumeration *
39261 ucnv_openAllNames_48(UErrorCode *pErrorCode);
39262 # 1719 "/usr/include/unicode/ucnv.h" 3 4
39263 extern "C" __attribute__((visibility("default"))) uint16_t
39264 ucnv_countAliases_48(const char *alias, UErrorCode *pErrorCode);
39265 # 1734 "/usr/include/unicode/ucnv.h" 3 4
39266 extern "C" __attribute__((visibility("default"))) const char *
39267 ucnv_getAlias_48(const char *alias, uint16_t n, UErrorCode *pErrorCode);
39268 # 1750 "/usr/include/unicode/ucnv.h" 3 4
39269 extern "C" __attribute__((visibility("default"))) void
39270 ucnv_getAliases_48(const char *alias, const char **aliases, UErrorCode *pErrorCode);
39271 # 1776 "/usr/include/unicode/ucnv.h" 3 4
39272 extern "C" __attribute__((visibility("default"))) UEnumeration *
39273 ucnv_openStandardNames_48(const char *convName,
39274 const char *standard,
39275 UErrorCode *pErrorCode);
39276
39277
39278
39279
39280
39281
39282 extern "C" __attribute__((visibility("default"))) uint16_t
39283 ucnv_countStandards_48(void);
39284 # 1796 "/usr/include/unicode/ucnv.h" 3 4
39285 extern "C" __attribute__((visibility("default"))) const char *
39286 ucnv_getStandard_48(uint16_t n, UErrorCode *pErrorCode);
39287 # 1818 "/usr/include/unicode/ucnv.h" 3 4
39288 extern "C" __attribute__((visibility("default"))) const char *
39289 ucnv_getStandardName_48(const char *name, const char *standard, UErrorCode *pErrorCode);
39290 # 1840 "/usr/include/unicode/ucnv.h" 3 4
39291 extern "C" __attribute__((visibility("default"))) const char *
39292 ucnv_getCanonicalName_48(const char *alias, const char *standard, UErrorCode *pErrorCode);
39293 # 1857 "/usr/include/unicode/ucnv.h" 3 4
39294 extern "C" __attribute__((visibility("default"))) const char *
39295 ucnv_getDefaultName_48(void);
39296 # 1876 "/usr/include/unicode/ucnv.h" 3 4
39297 extern "C" __attribute__((visibility("default"))) void
39298 ucnv_setDefaultName_48(const char *name);
39299 # 1896 "/usr/include/unicode/ucnv.h" 3 4
39300 extern "C" __attribute__((visibility("default"))) void
39301 ucnv_fixFileSeparator_48(const UConverter *cnv, UChar *source, int32_t sourceLen);
39302 # 1907 "/usr/include/unicode/ucnv.h" 3 4
39303 extern "C" __attribute__((visibility("default"))) UBool
39304 ucnv_isAmbiguous_48(const UConverter *cnv);
39305 # 1925 "/usr/include/unicode/ucnv.h" 3 4
39306 extern "C" __attribute__((visibility("default"))) void
39307 ucnv_setFallback_48(UConverter *cnv, UBool usesFallback);
39308 # 1937 "/usr/include/unicode/ucnv.h" 3 4
39309 extern "C" __attribute__((visibility("default"))) UBool
39310 ucnv_usesFallback_48(const UConverter *cnv);
39311 # 1996 "/usr/include/unicode/ucnv.h" 3 4
39312 extern "C" __attribute__((visibility("default"))) const char*
39313 ucnv_detectUnicodeSignature_48(const char* source,
39314 int32_t sourceLength,
39315 int32_t *signatureLength,
39316 UErrorCode *pErrorCode);
39317 # 2013 "/usr/include/unicode/ucnv.h" 3 4
39318 extern "C" __attribute__((visibility("default"))) int32_t
39319 ucnv_fromUCountPending_48(const UConverter* cnv, UErrorCode* status);
39320 # 2027 "/usr/include/unicode/ucnv.h" 3 4
39321 extern "C" __attribute__((visibility("default"))) int32_t
39322 ucnv_toUCountPending_48(const UConverter* cnv, UErrorCode* status);
39323 # 2045 "/usr/include/unicode/ucnv.h" 3 4
39324 extern "C" __attribute__((visibility("default"))) UBool
39325 ucnv_isFixedWidth_48(UConverter *cnv, UErrorCode *status);
39326 # 32 "/usr/include/libxml2/libxml/encoding.h" 2
39327
39328
39329 extern "C" {
39330 # 58 "/usr/include/libxml2/libxml/encoding.h"
39331 typedef enum {
39332 XML_CHAR_ENCODING_ERROR= -1,
39333 XML_CHAR_ENCODING_NONE= 0,
39334 XML_CHAR_ENCODING_UTF8= 1,
39335 XML_CHAR_ENCODING_UTF16LE= 2,
39336 XML_CHAR_ENCODING_UTF16BE= 3,
39337 XML_CHAR_ENCODING_UCS4LE= 4,
39338 XML_CHAR_ENCODING_UCS4BE= 5,
39339 XML_CHAR_ENCODING_EBCDIC= 6,
39340 XML_CHAR_ENCODING_UCS4_2143=7,
39341 XML_CHAR_ENCODING_UCS4_3412=8,
39342 XML_CHAR_ENCODING_UCS2= 9,
39343 XML_CHAR_ENCODING_8859_1= 10,
39344 XML_CHAR_ENCODING_8859_2= 11,
39345 XML_CHAR_ENCODING_8859_3= 12,
39346 XML_CHAR_ENCODING_8859_4= 13,
39347 XML_CHAR_ENCODING_8859_5= 14,
39348 XML_CHAR_ENCODING_8859_6= 15,
39349 XML_CHAR_ENCODING_8859_7= 16,
39350 XML_CHAR_ENCODING_8859_8= 17,
39351 XML_CHAR_ENCODING_8859_9= 18,
39352 XML_CHAR_ENCODING_2022_JP= 19,
39353 XML_CHAR_ENCODING_SHIFT_JIS=20,
39354 XML_CHAR_ENCODING_EUC_JP= 21,
39355 XML_CHAR_ENCODING_ASCII= 22
39356 } xmlCharEncoding;
39357 # 101 "/usr/include/libxml2/libxml/encoding.h"
39358 typedef int (* xmlCharEncodingInputFunc)(unsigned char *out, int *outlen,
39359 const unsigned char *in, int *inlen);
39360 # 123 "/usr/include/libxml2/libxml/encoding.h"
39361 typedef int (* xmlCharEncodingOutputFunc)(unsigned char *out, int *outlen,
39362 const unsigned char *in, int *inlen);
39363
39364
39365
39366
39367
39368
39369
39370 struct _uconv_t {
39371 UConverter *uconv;
39372 UConverter *utf8;
39373 };
39374 typedef struct _uconv_t uconv_t;
39375
39376
39377 typedef struct _xmlCharEncodingHandler xmlCharEncodingHandler;
39378 typedef xmlCharEncodingHandler *xmlCharEncodingHandlerPtr;
39379 struct _xmlCharEncodingHandler {
39380 char *name;
39381 xmlCharEncodingInputFunc input;
39382 xmlCharEncodingOutputFunc output;
39383
39384 iconv_t iconv_in;
39385 iconv_t iconv_out;
39386
39387
39388 uconv_t *uconv_in;
39389 uconv_t *uconv_out;
39390
39391 };
39392
39393
39394 }
39395
39396
39397
39398 extern "C" {
39399
39400
39401
39402
39403
39404 void
39405 xmlInitCharEncodingHandlers (void);
39406 void
39407 xmlCleanupCharEncodingHandlers (void);
39408 void
39409 xmlRegisterCharEncodingHandler (xmlCharEncodingHandlerPtr handler);
39410 xmlCharEncodingHandlerPtr
39411 xmlGetCharEncodingHandler (xmlCharEncoding enc);
39412 xmlCharEncodingHandlerPtr
39413 xmlFindCharEncodingHandler (const char *name);
39414 xmlCharEncodingHandlerPtr
39415 xmlNewCharEncodingHandler (const char *name,
39416 xmlCharEncodingInputFunc input,
39417 xmlCharEncodingOutputFunc output);
39418
39419
39420
39421
39422 int
39423 xmlAddEncodingAlias (const char *name,
39424 const char *alias);
39425 int
39426 xmlDelEncodingAlias (const char *alias);
39427 const char *
39428 xmlGetEncodingAlias (const char *alias);
39429 void
39430 xmlCleanupEncodingAliases (void);
39431 xmlCharEncoding
39432 xmlParseCharEncoding (const char *name);
39433 const char *
39434 xmlGetCharEncodingName (xmlCharEncoding enc);
39435
39436
39437
39438
39439 xmlCharEncoding
39440 xmlDetectCharEncoding (const unsigned char *in,
39441 int len);
39442
39443 int
39444 xmlCharEncOutFunc (xmlCharEncodingHandler *handler,
39445 xmlBufferPtr out,
39446 xmlBufferPtr in);
39447
39448 int
39449 xmlCharEncInFunc (xmlCharEncodingHandler *handler,
39450 xmlBufferPtr out,
39451 xmlBufferPtr in);
39452 int
39453 xmlCharEncFirstLine (xmlCharEncodingHandler *handler,
39454 xmlBufferPtr out,
39455 xmlBufferPtr in);
39456 int
39457 xmlCharEncCloseFunc (xmlCharEncodingHandler *handler);
39458
39459
39460
39461
39462
39463 int
39464 UTF8Toisolat1 (unsigned char *out,
39465 int *outlen,
39466 const unsigned char *in,
39467 int *inlen);
39468
39469 int
39470 isolat1ToUTF8 (unsigned char *out,
39471 int *outlen,
39472 const unsigned char *in,
39473 int *inlen);
39474
39475 }
39476 # 808 "/usr/include/libxml2/libxml/parser.h" 2
39477 # 1 "/usr/include/libxml2/libxml/xmlIO.h" 1
39478 # 11 "/usr/include/libxml2/libxml/xmlIO.h"
39479 #define __XML_IO_H__
39480
39481
39482
39483
39484
39485 extern "C" {
39486 # 34 "/usr/include/libxml2/libxml/xmlIO.h"
39487 typedef int ( *xmlInputMatchCallback) (char const *filename);
39488 # 43 "/usr/include/libxml2/libxml/xmlIO.h"
39489 typedef void * ( *xmlInputOpenCallback) (char const *filename);
39490 # 54 "/usr/include/libxml2/libxml/xmlIO.h"
39491 typedef int ( *xmlInputReadCallback) (void * context, char * buffer, int len);
39492 # 63 "/usr/include/libxml2/libxml/xmlIO.h"
39493 typedef int ( *xmlInputCloseCallback) (void * context);
39494 # 80 "/usr/include/libxml2/libxml/xmlIO.h"
39495 typedef int ( *xmlOutputMatchCallback) (char const *filename);
39496 # 89 "/usr/include/libxml2/libxml/xmlIO.h"
39497 typedef void * ( *xmlOutputOpenCallback) (char const *filename);
39498 # 100 "/usr/include/libxml2/libxml/xmlIO.h"
39499 typedef int ( *xmlOutputWriteCallback) (void * context, const char * buffer,
39500 int len);
39501 # 110 "/usr/include/libxml2/libxml/xmlIO.h"
39502 typedef int ( *xmlOutputCloseCallback) (void * context);
39503
39504
39505
39506 }
39507
39508
39509 # 1 "/usr/include/libxml2/libxml/globals.h" 1
39510 # 15 "/usr/include/libxml2/libxml/globals.h"
39511 #define __XML_GLOBALS_H
39512
39513
39514
39515 # 1 "/usr/include/libxml2/libxml/xmlerror.h" 1
39516 # 20 "/usr/include/libxml2/libxml/globals.h" 2
39517 # 1 "/usr/include/libxml2/libxml/SAX.h" 1
39518 # 13 "/usr/include/libxml2/libxml/SAX.h"
39519 #define __XML_SAX_H__
39520
39521
39522 # 1 "/usr/include/stdlib.h" 1 3 4
39523 # 28 "/usr/include/stdlib.h" 3 4
39524 #define __need_size_t
39525
39526 #define __need_wchar_t
39527 #define __need_NULL
39528
39529 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 1 3 4
39530 # 160 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 3 4
39531 #undef __need_ptrdiff_t
39532 # 233 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 3 4
39533 #undef __need_size_t
39534 # 342 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 3 4
39535 #undef __need_wchar_t
39536 # 395 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 3 4
39537 #undef NULL
39538
39539 #define NULL __null
39540 # 406 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 3 4
39541 #undef __need_NULL
39542
39543
39544
39545
39546 #define offsetof(TYPE,MEMBER) __builtin_offsetof (TYPE, MEMBER)
39547 # 34 "/usr/include/stdlib.h" 2 3 4
39548
39549 extern "C" {
39550
39551
39552 #define _STDLIB_H 1
39553
39554
39555
39556 # 1 "/usr/include/bits/waitflags.h" 1 3 4
39557 # 26 "/usr/include/bits/waitflags.h" 3 4
39558 #define WNOHANG 1
39559 #define WUNTRACED 2
39560
39561
39562 #define WSTOPPED 2
39563 #define WEXITED 4
39564 #define WCONTINUED 8
39565 #define WNOWAIT 0x01000000
39566
39567 #define __WNOTHREAD 0x20000000
39568
39569 #define __WALL 0x40000000
39570 #define __WCLONE 0x80000000
39571 # 43 "/usr/include/stdlib.h" 2 3 4
39572 # 1 "/usr/include/bits/waitstatus.h" 1 3 4
39573 # 29 "/usr/include/bits/waitstatus.h" 3 4
39574 #define __WEXITSTATUS(status) (((status) & 0xff00) >> 8)
39575
39576
39577 #define __WTERMSIG(status) ((status) & 0x7f)
39578
39579
39580 #define __WSTOPSIG(status) __WEXITSTATUS(status)
39581
39582
39583 #define __WIFEXITED(status) (__WTERMSIG(status) == 0)
39584
39585
39586 #define __WIFSIGNALED(status) (((signed char) (((status) & 0x7f) + 1) >> 1) > 0)
39587
39588
39589
39590 #define __WIFSTOPPED(status) (((status) & 0xff) == 0x7f)
39591
39592
39593
39594
39595 #define __WIFCONTINUED(status) ((status) == __W_CONTINUED)
39596
39597
39598
39599 #define __WCOREDUMP(status) ((status) & __WCOREFLAG)
39600
39601
39602 #define __W_EXITCODE(ret,sig) ((ret) << 8 | (sig))
39603 #define __W_STOPCODE(sig) ((sig) << 8 | 0x7f)
39604 #define __W_CONTINUED 0xffff
39605 #define __WCOREFLAG 0x80
39606
39607
39608
39609
39610
39611
39612 union wait
39613 {
39614 int w_status;
39615 struct
39616 {
39617
39618 unsigned int __w_termsig:7;
39619 unsigned int __w_coredump:1;
39620 unsigned int __w_retcode:8;
39621 unsigned int:16;
39622
39623
39624
39625
39626
39627
39628
39629 } __wait_terminated;
39630 struct
39631 {
39632
39633 unsigned int __w_stopval:8;
39634 unsigned int __w_stopsig:8;
39635 unsigned int:16;
39636
39637
39638
39639
39640
39641
39642 } __wait_stopped;
39643 };
39644
39645 #define w_termsig __wait_terminated.__w_termsig
39646 #define w_coredump __wait_terminated.__w_coredump
39647 #define w_retcode __wait_terminated.__w_retcode
39648 #define w_stopsig __wait_stopped.__w_stopsig
39649 #define w_stopval __wait_stopped.__w_stopval
39650 # 44 "/usr/include/stdlib.h" 2 3 4
39651 # 55 "/usr/include/stdlib.h" 3 4
39652 #define __WAIT_INT(status) (*(int *) &(status))
39653 # 64 "/usr/include/stdlib.h" 3 4
39654 #define __WAIT_STATUS void *
39655 #define __WAIT_STATUS_DEFN void *
39656 # 85 "/usr/include/stdlib.h" 3 4
39657 #define WEXITSTATUS(status) __WEXITSTATUS (__WAIT_INT (status))
39658 #define WTERMSIG(status) __WTERMSIG (__WAIT_INT (status))
39659 #define WSTOPSIG(status) __WSTOPSIG (__WAIT_INT (status))
39660 #define WIFEXITED(status) __WIFEXITED (__WAIT_INT (status))
39661 #define WIFSIGNALED(status) __WIFSIGNALED (__WAIT_INT (status))
39662 #define WIFSTOPPED(status) __WIFSTOPPED (__WAIT_INT (status))
39663
39664 #define WIFCONTINUED(status) __WIFCONTINUED (__WAIT_INT (status))
39665
39666
39667
39668
39669
39670 typedef struct
39671 {
39672 int quot;
39673 int rem;
39674 } div_t;
39675
39676
39677
39678 typedef struct
39679 {
39680 long int quot;
39681 long int rem;
39682 } ldiv_t;
39683 #define __ldiv_t_defined 1
39684
39685
39686
39687
39688
39689
39690 __extension__ typedef struct
39691 {
39692 long long int quot;
39693 long long int rem;
39694 } lldiv_t;
39695 #define __lldiv_t_defined 1
39696
39697
39698
39699
39700
39701 #define RAND_MAX 2147483647
39702
39703
39704
39705
39706 #define EXIT_FAILURE 1
39707 #define EXIT_SUCCESS 0
39708
39709
39710
39711 #define MB_CUR_MAX (__ctype_get_mb_cur_max ())
39712 extern size_t __ctype_get_mb_cur_max (void) throw () __attribute__ ((__warn_unused_result__));
39713
39714
39715
39716
39717 extern double atof (__const char *__nptr)
39718 throw () __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
39719
39720 extern int atoi (__const char *__nptr)
39721 throw () __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
39722
39723 extern long int atol (__const char *__nptr)
39724 throw () __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
39725
39726
39727
39728
39729
39730 __extension__ extern long long int atoll (__const char *__nptr)
39731 throw () __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
39732
39733
39734
39735
39736
39737 extern double strtod (__const char *__restrict __nptr,
39738 char **__restrict __endptr)
39739 throw () __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
39740
39741
39742
39743
39744
39745 extern float strtof (__const char *__restrict __nptr,
39746 char **__restrict __endptr) throw () __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
39747
39748 extern long double strtold (__const char *__restrict __nptr,
39749 char **__restrict __endptr)
39750 throw () __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
39751
39752
39753
39754
39755
39756 extern long int strtol (__const char *__restrict __nptr,
39757 char **__restrict __endptr, int __base)
39758 throw () __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
39759
39760 extern unsigned long int strtoul (__const char *__restrict __nptr,
39761 char **__restrict __endptr, int __base)
39762 throw () __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
39763
39764
39765
39766
39767 __extension__
39768 extern long long int strtoq (__const char *__restrict __nptr,
39769 char **__restrict __endptr, int __base)
39770 throw () __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
39771
39772 __extension__
39773 extern unsigned long long int strtouq (__const char *__restrict __nptr,
39774 char **__restrict __endptr, int __base)
39775 throw () __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
39776
39777
39778
39779
39780
39781 __extension__
39782 extern long long int strtoll (__const char *__restrict __nptr,
39783 char **__restrict __endptr, int __base)
39784 throw () __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
39785
39786 __extension__
39787 extern unsigned long long int strtoull (__const char *__restrict __nptr,
39788 char **__restrict __endptr, int __base)
39789 throw () __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
39790
39791 # 240 "/usr/include/stdlib.h" 3 4
39792 extern long int strtol_l (__const char *__restrict __nptr,
39793 char **__restrict __endptr, int __base,
39794 __locale_t __loc) throw () __attribute__ ((__nonnull__ (1, 4))) __attribute__ ((__warn_unused_result__));
39795
39796 extern unsigned long int strtoul_l (__const char *__restrict __nptr,
39797 char **__restrict __endptr,
39798 int __base, __locale_t __loc)
39799 throw () __attribute__ ((__nonnull__ (1, 4))) __attribute__ ((__warn_unused_result__));
39800
39801 __extension__
39802 extern long long int strtoll_l (__const char *__restrict __nptr,
39803 char **__restrict __endptr, int __base,
39804 __locale_t __loc)
39805 throw () __attribute__ ((__nonnull__ (1, 4))) __attribute__ ((__warn_unused_result__));
39806
39807 __extension__
39808 extern unsigned long long int strtoull_l (__const char *__restrict __nptr,
39809 char **__restrict __endptr,
39810 int __base, __locale_t __loc)
39811 throw () __attribute__ ((__nonnull__ (1, 4))) __attribute__ ((__warn_unused_result__));
39812
39813 extern double strtod_l (__const char *__restrict __nptr,
39814 char **__restrict __endptr, __locale_t __loc)
39815 throw () __attribute__ ((__nonnull__ (1, 3))) __attribute__ ((__warn_unused_result__));
39816
39817 extern float strtof_l (__const char *__restrict __nptr,
39818 char **__restrict __endptr, __locale_t __loc)
39819 throw () __attribute__ ((__nonnull__ (1, 3))) __attribute__ ((__warn_unused_result__));
39820
39821 extern long double strtold_l (__const char *__restrict __nptr,
39822 char **__restrict __endptr,
39823 __locale_t __loc)
39824 throw () __attribute__ ((__nonnull__ (1, 3))) __attribute__ ((__warn_unused_result__));
39825
39826
39827
39828
39829
39830 extern __inline __attribute__ ((__gnu_inline__)) double
39831 atof (__const char *__nptr) throw ()
39832 {
39833 return strtod (__nptr, (char **) __null);
39834 }
39835 extern __inline __attribute__ ((__gnu_inline__)) int
39836 atoi (__const char *__nptr) throw ()
39837 {
39838 return (int) strtol (__nptr, (char **) __null, 10);
39839 }
39840 extern __inline __attribute__ ((__gnu_inline__)) long int
39841 atol (__const char *__nptr) throw ()
39842 {
39843 return strtol (__nptr, (char **) __null, 10);
39844 }
39845
39846
39847
39848
39849 __extension__ extern __inline __attribute__ ((__gnu_inline__)) long long int
39850 atoll (__const char *__nptr) throw ()
39851 {
39852 return strtoll (__nptr, (char **) __null, 10);
39853 }
39854
39855 # 311 "/usr/include/stdlib.h" 3 4
39856 extern char *l64a (long int __n) throw () __attribute__ ((__warn_unused_result__));
39857
39858
39859 extern long int a64l (__const char *__s)
39860 throw () __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
39861 # 327 "/usr/include/stdlib.h" 3 4
39862 extern long int random (void) throw ();
39863
39864
39865 extern void srandom (unsigned int __seed) throw ();
39866
39867
39868
39869
39870
39871 extern char *initstate (unsigned int __seed, char *__statebuf,
39872 size_t __statelen) throw () __attribute__ ((__nonnull__ (2)));
39873
39874
39875
39876 extern char *setstate (char *__statebuf) throw () __attribute__ ((__nonnull__ (1)));
39877
39878
39879
39880
39881
39882
39883
39884 struct random_data
39885 {
39886 int32_t *fptr;
39887 int32_t *rptr;
39888 int32_t *state;
39889 int rand_type;
39890 int rand_deg;
39891 int rand_sep;
39892 int32_t *end_ptr;
39893 };
39894
39895 extern int random_r (struct random_data *__restrict __buf,
39896 int32_t *__restrict __result) throw () __attribute__ ((__nonnull__ (1, 2)));
39897
39898 extern int srandom_r (unsigned int __seed, struct random_data *__buf)
39899 throw () __attribute__ ((__nonnull__ (2)));
39900
39901 extern int initstate_r (unsigned int __seed, char *__restrict __statebuf,
39902 size_t __statelen,
39903 struct random_data *__restrict __buf)
39904 throw () __attribute__ ((__nonnull__ (2, 4)));
39905
39906 extern int setstate_r (char *__restrict __statebuf,
39907 struct random_data *__restrict __buf)
39908 throw () __attribute__ ((__nonnull__ (1, 2)));
39909
39910
39911
39912
39913
39914
39915 extern int rand (void) throw ();
39916
39917 extern void srand (unsigned int __seed) throw ();
39918
39919
39920
39921
39922 extern int rand_r (unsigned int *__seed) throw ();
39923
39924
39925
39926
39927
39928
39929
39930 extern double drand48 (void) throw ();
39931 extern double erand48 (unsigned short int __xsubi[3]) throw () __attribute__ ((__nonnull__ (1)));
39932
39933
39934 extern long int lrand48 (void) throw ();
39935 extern long int nrand48 (unsigned short int __xsubi[3])
39936 throw () __attribute__ ((__nonnull__ (1)));
39937
39938
39939 extern long int mrand48 (void) throw ();
39940 extern long int jrand48 (unsigned short int __xsubi[3])
39941 throw () __attribute__ ((__nonnull__ (1)));
39942
39943
39944 extern void srand48 (long int __seedval) throw ();
39945 extern unsigned short int *seed48 (unsigned short int __seed16v[3])
39946 throw () __attribute__ ((__nonnull__ (1)));
39947 extern void lcong48 (unsigned short int __param[7]) throw () __attribute__ ((__nonnull__ (1)));
39948
39949
39950
39951
39952
39953 struct drand48_data
39954 {
39955 unsigned short int __x[3];
39956 unsigned short int __old_x[3];
39957 unsigned short int __c;
39958 unsigned short int __init;
39959 unsigned long long int __a;
39960 };
39961
39962
39963 extern int drand48_r (struct drand48_data *__restrict __buffer,
39964 double *__restrict __result) throw () __attribute__ ((__nonnull__ (1, 2)));
39965 extern int erand48_r (unsigned short int __xsubi[3],
39966 struct drand48_data *__restrict __buffer,
39967 double *__restrict __result) throw () __attribute__ ((__nonnull__ (1, 2)));
39968
39969
39970 extern int lrand48_r (struct drand48_data *__restrict __buffer,
39971 long int *__restrict __result)
39972 throw () __attribute__ ((__nonnull__ (1, 2)));
39973 extern int nrand48_r (unsigned short int __xsubi[3],
39974 struct drand48_data *__restrict __buffer,
39975 long int *__restrict __result)
39976 throw () __attribute__ ((__nonnull__ (1, 2)));
39977
39978
39979 extern int mrand48_r (struct drand48_data *__restrict __buffer,
39980 long int *__restrict __result)
39981 throw () __attribute__ ((__nonnull__ (1, 2)));
39982 extern int jrand48_r (unsigned short int __xsubi[3],
39983 struct drand48_data *__restrict __buffer,
39984 long int *__restrict __result)
39985 throw () __attribute__ ((__nonnull__ (1, 2)));
39986
39987
39988 extern int srand48_r (long int __seedval, struct drand48_data *__buffer)
39989 throw () __attribute__ ((__nonnull__ (2)));
39990
39991 extern int seed48_r (unsigned short int __seed16v[3],
39992 struct drand48_data *__buffer) throw () __attribute__ ((__nonnull__ (1, 2)));
39993
39994 extern int lcong48_r (unsigned short int __param[7],
39995 struct drand48_data *__buffer)
39996 throw () __attribute__ ((__nonnull__ (1, 2)));
39997
39998
39999
40000
40001
40002
40003 #define __malloc_and_calloc_defined
40004
40005
40006 extern void *malloc (size_t __size) throw () __attribute__ ((__malloc__)) __attribute__ ((__warn_unused_result__));
40007
40008 extern void *calloc (size_t __nmemb, size_t __size)
40009 throw () __attribute__ ((__malloc__)) __attribute__ ((__warn_unused_result__));
40010
40011
40012
40013
40014
40015
40016
40017
40018
40019
40020 extern void *realloc (void *__ptr, size_t __size)
40021 throw () __attribute__ ((__warn_unused_result__));
40022
40023 extern void free (void *__ptr) throw ();
40024
40025
40026
40027
40028 extern void cfree (void *__ptr) throw ();
40029
40030
40031
40032 # 1 "/usr/include/alloca.h" 1 3 4
40033 # 20 "/usr/include/alloca.h" 3 4
40034 #define _ALLOCA_H 1
40035
40036
40037
40038 #define __need_size_t
40039 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 1 3 4
40040 # 160 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 3 4
40041 #undef __need_ptrdiff_t
40042 # 233 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 3 4
40043 #undef __need_size_t
40044 # 342 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 3 4
40045 #undef __need_wchar_t
40046 # 395 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 3 4
40047 #undef NULL
40048
40049 #define NULL __null
40050 # 406 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 3 4
40051 #undef __need_NULL
40052
40053
40054
40055
40056 #define offsetof(TYPE,MEMBER) __builtin_offsetof (TYPE, MEMBER)
40057 # 26 "/usr/include/alloca.h" 2 3 4
40058
40059 extern "C" {
40060
40061
40062 #undef alloca
40063
40064
40065 extern void *alloca (size_t __size) throw ();
40066
40067
40068 #define alloca(size) __builtin_alloca (size)
40069
40070
40071 }
40072 # 498 "/usr/include/stdlib.h" 2 3 4
40073
40074
40075
40076
40077
40078 extern void *valloc (size_t __size) throw () __attribute__ ((__malloc__)) __attribute__ ((__warn_unused_result__));
40079
40080
40081
40082
40083 extern int posix_memalign (void **__memptr, size_t __alignment, size_t __size)
40084 throw () __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
40085
40086
40087
40088
40089 extern void abort (void) throw () __attribute__ ((__noreturn__));
40090
40091
40092
40093 extern int atexit (void (*__func) (void)) throw () __attribute__ ((__nonnull__ (1)));
40094
40095
40096
40097
40098
40099
40100 extern "C++" int at_quick_exit (void (*__func) (void))
40101 throw () __asm ("at_quick_exit") __attribute__ ((__nonnull__ (1)));
40102
40103
40104
40105
40106
40107
40108
40109
40110
40111 extern int on_exit (void (*__func) (int __status, void *__arg), void *__arg)
40112 throw () __attribute__ ((__nonnull__ (1)));
40113
40114
40115
40116
40117
40118
40119 extern void exit (int __status) throw () __attribute__ ((__noreturn__));
40120
40121
40122
40123
40124
40125
40126
40127 extern void quick_exit (int __status) throw () __attribute__ ((__noreturn__));
40128
40129
40130
40131
40132
40133
40134
40135 extern void _Exit (int __status) throw () __attribute__ ((__noreturn__));
40136
40137
40138
40139
40140
40141
40142 extern char *getenv (__const char *__name) throw () __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
40143
40144
40145
40146
40147 extern char *__secure_getenv (__const char *__name)
40148 throw () __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
40149
40150
40151
40152
40153
40154 extern int putenv (char *__string) throw () __attribute__ ((__nonnull__ (1)));
40155
40156
40157
40158
40159
40160 extern int setenv (__const char *__name, __const char *__value, int __replace)
40161 throw () __attribute__ ((__nonnull__ (2)));
40162
40163
40164 extern int unsetenv (__const char *__name) throw () __attribute__ ((__nonnull__ (1)));
40165
40166
40167
40168
40169
40170
40171 extern int clearenv (void) throw ();
40172 # 606 "/usr/include/stdlib.h" 3 4
40173 extern char *mktemp (char *__template) throw () __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
40174 # 620 "/usr/include/stdlib.h" 3 4
40175 extern int mkstemp (char *__template) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
40176 # 630 "/usr/include/stdlib.h" 3 4
40177 extern int mkstemp64 (char *__template) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
40178 # 642 "/usr/include/stdlib.h" 3 4
40179 extern int mkstemps (char *__template, int __suffixlen) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
40180 # 652 "/usr/include/stdlib.h" 3 4
40181 extern int mkstemps64 (char *__template, int __suffixlen)
40182 __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
40183 # 663 "/usr/include/stdlib.h" 3 4
40184 extern char *mkdtemp (char *__template) throw () __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
40185 # 674 "/usr/include/stdlib.h" 3 4
40186 extern int mkostemp (char *__template, int __flags) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
40187 # 684 "/usr/include/stdlib.h" 3 4
40188 extern int mkostemp64 (char *__template, int __flags) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
40189 # 694 "/usr/include/stdlib.h" 3 4
40190 extern int mkostemps (char *__template, int __suffixlen, int __flags)
40191 __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
40192 # 706 "/usr/include/stdlib.h" 3 4
40193 extern int mkostemps64 (char *__template, int __suffixlen, int __flags)
40194 __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
40195
40196
40197
40198
40199
40200
40201
40202
40203
40204 extern int system (__const char *__command) __attribute__ ((__warn_unused_result__));
40205
40206
40207
40208
40209
40210
40211 extern char *canonicalize_file_name (__const char *__name)
40212 throw () __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
40213 # 734 "/usr/include/stdlib.h" 3 4
40214 extern char *realpath (__const char *__restrict __name,
40215 char *__restrict __resolved) throw () __attribute__ ((__warn_unused_result__));
40216
40217
40218
40219
40220
40221 #define __COMPAR_FN_T
40222 typedef int (*__compar_fn_t) (__const void *, __const void *);
40223
40224
40225 typedef __compar_fn_t comparison_fn_t;
40226
40227
40228
40229 typedef int (*__compar_d_fn_t) (__const void *, __const void *, void *);
40230
40231
40232
40233
40234
40235 extern void *bsearch (__const void *__key, __const void *__base,
40236 size_t __nmemb, size_t __size, __compar_fn_t __compar)
40237 __attribute__ ((__nonnull__ (1, 2, 5))) __attribute__ ((__warn_unused_result__));
40238
40239
40240
40241 extern void qsort (void *__base, size_t __nmemb, size_t __size,
40242 __compar_fn_t __compar) __attribute__ ((__nonnull__ (1, 4)));
40243
40244 extern void qsort_r (void *__base, size_t __nmemb, size_t __size,
40245 __compar_d_fn_t __compar, void *__arg)
40246 __attribute__ ((__nonnull__ (1, 4)));
40247
40248
40249
40250
40251 extern int abs (int __x) throw () __attribute__ ((__const__)) __attribute__ ((__warn_unused_result__));
40252 extern long int labs (long int __x) throw () __attribute__ ((__const__)) __attribute__ ((__warn_unused_result__));
40253
40254
40255
40256 __extension__ extern long long int llabs (long long int __x)
40257 throw () __attribute__ ((__const__)) __attribute__ ((__warn_unused_result__));
40258
40259
40260
40261
40262
40263
40264
40265 extern div_t div (int __numer, int __denom)
40266 throw () __attribute__ ((__const__)) __attribute__ ((__warn_unused_result__));
40267 extern ldiv_t ldiv (long int __numer, long int __denom)
40268 throw () __attribute__ ((__const__)) __attribute__ ((__warn_unused_result__));
40269
40270
40271
40272
40273 __extension__ extern lldiv_t lldiv (long long int __numer,
40274 long long int __denom)
40275 throw () __attribute__ ((__const__)) __attribute__ ((__warn_unused_result__));
40276
40277 # 808 "/usr/include/stdlib.h" 3 4
40278 extern char *ecvt (double __value, int __ndigit, int *__restrict __decpt,
40279 int *__restrict __sign) throw () __attribute__ ((__nonnull__ (3, 4))) __attribute__ ((__warn_unused_result__));
40280
40281
40282
40283
40284 extern char *fcvt (double __value, int __ndigit, int *__restrict __decpt,
40285 int *__restrict __sign) throw () __attribute__ ((__nonnull__ (3, 4))) __attribute__ ((__warn_unused_result__));
40286
40287
40288
40289
40290 extern char *gcvt (double __value, int __ndigit, char *__buf)
40291 throw () __attribute__ ((__nonnull__ (3))) __attribute__ ((__warn_unused_result__));
40292
40293
40294
40295
40296 extern char *qecvt (long double __value, int __ndigit,
40297 int *__restrict __decpt, int *__restrict __sign)
40298 throw () __attribute__ ((__nonnull__ (3, 4))) __attribute__ ((__warn_unused_result__));
40299 extern char *qfcvt (long double __value, int __ndigit,
40300 int *__restrict __decpt, int *__restrict __sign)
40301 throw () __attribute__ ((__nonnull__ (3, 4))) __attribute__ ((__warn_unused_result__));
40302 extern char *qgcvt (long double __value, int __ndigit, char *__buf)
40303 throw () __attribute__ ((__nonnull__ (3))) __attribute__ ((__warn_unused_result__));
40304
40305
40306
40307
40308 extern int ecvt_r (double __value, int __ndigit, int *__restrict __decpt,
40309 int *__restrict __sign, char *__restrict __buf,
40310 size_t __len) throw () __attribute__ ((__nonnull__ (3, 4, 5)));
40311 extern int fcvt_r (double __value, int __ndigit, int *__restrict __decpt,
40312 int *__restrict __sign, char *__restrict __buf,
40313 size_t __len) throw () __attribute__ ((__nonnull__ (3, 4, 5)));
40314
40315 extern int qecvt_r (long double __value, int __ndigit,
40316 int *__restrict __decpt, int *__restrict __sign,
40317 char *__restrict __buf, size_t __len)
40318 throw () __attribute__ ((__nonnull__ (3, 4, 5)));
40319 extern int qfcvt_r (long double __value, int __ndigit,
40320 int *__restrict __decpt, int *__restrict __sign,
40321 char *__restrict __buf, size_t __len)
40322 throw () __attribute__ ((__nonnull__ (3, 4, 5)));
40323
40324
40325
40326
40327
40328
40329
40330 extern int mblen (__const char *__s, size_t __n) throw () __attribute__ ((__warn_unused_result__));
40331
40332
40333 extern int mbtowc (wchar_t *__restrict __pwc,
40334 __const char *__restrict __s, size_t __n) throw () __attribute__ ((__warn_unused_result__));
40335
40336
40337 extern int wctomb (char *__s, wchar_t __wchar) throw () __attribute__ ((__warn_unused_result__));
40338
40339
40340
40341 extern size_t mbstowcs (wchar_t *__restrict __pwcs,
40342 __const char *__restrict __s, size_t __n) throw ();
40343
40344 extern size_t wcstombs (char *__restrict __s,
40345 __const wchar_t *__restrict __pwcs, size_t __n)
40346 throw ();
40347
40348
40349
40350
40351
40352
40353
40354
40355 extern int rpmatch (__const char *__response) throw () __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
40356 # 896 "/usr/include/stdlib.h" 3 4
40357 extern int getsubopt (char **__restrict __optionp,
40358 char *__const *__restrict __tokens,
40359 char **__restrict __valuep)
40360 throw () __attribute__ ((__nonnull__ (1, 2, 3))) __attribute__ ((__warn_unused_result__));
40361
40362
40363
40364
40365
40366 extern void setkey (__const char *__key) throw () __attribute__ ((__nonnull__ (1)));
40367
40368
40369
40370
40371
40372
40373
40374 extern int posix_openpt (int __oflag) __attribute__ ((__warn_unused_result__));
40375
40376
40377
40378
40379
40380
40381
40382 extern int grantpt (int __fd) throw ();
40383
40384
40385
40386 extern int unlockpt (int __fd) throw ();
40387
40388
40389
40390
40391 extern char *ptsname (int __fd) throw () __attribute__ ((__warn_unused_result__));
40392
40393
40394
40395
40396
40397
40398 extern int ptsname_r (int __fd, char *__buf, size_t __buflen)
40399 throw () __attribute__ ((__nonnull__ (2)));
40400
40401
40402 extern int getpt (void);
40403
40404
40405
40406
40407
40408
40409 extern int getloadavg (double __loadavg[], int __nelem)
40410 throw () __attribute__ ((__nonnull__ (1)));
40411
40412
40413
40414
40415
40416 # 1 "/usr/include/bits/stdlib.h" 1 3 4
40417 # 24 "/usr/include/bits/stdlib.h" 3 4
40418 extern char *__realpath_chk (__const char *__restrict __name,
40419 char *__restrict __resolved,
40420 size_t __resolvedlen) throw () __attribute__ ((__warn_unused_result__));
40421 extern char *__realpath_alias (__const char *__restrict __name, char *__restrict __resolved) throw () __asm__ ("" "realpath")
40422
40423 __attribute__ ((__warn_unused_result__));
40424 extern char *__realpath_chk_warn (__const char *__restrict __name, char *__restrict __resolved, size_t __resolvedlen) throw () __asm__ ("" "__realpath_chk")
40425
40426
40427 __attribute__ ((__warn_unused_result__))
40428 __attribute__((__warning__ ("second argument of realpath must be either NULL or at " "least PATH_MAX bytes long buffer")))
40429 ;
40430
40431 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) __attribute__ ((__warn_unused_result__)) char *
40432 realpath (__const char *__restrict __name, char *__restrict __resolved) throw ()
40433 {
40434 if (__builtin_object_size (__resolved, 2 > 1) != (size_t) -1)
40435 {
40436
40437
40438
40439
40440 return __realpath_chk (__name, __resolved, __builtin_object_size (__resolved, 2 > 1));
40441 }
40442
40443 return __realpath_alias (__name, __resolved);
40444 }
40445
40446
40447 extern int __ptsname_r_chk (int __fd, char *__buf, size_t __buflen,
40448 size_t __nreal) throw () __attribute__ ((__nonnull__ (2)));
40449 extern int __ptsname_r_alias (int __fd, char *__buf, size_t __buflen) throw () __asm__ ("" "ptsname_r")
40450
40451 __attribute__ ((__nonnull__ (2)));
40452 extern int __ptsname_r_chk_warn (int __fd, char *__buf, size_t __buflen, size_t __nreal) throw () __asm__ ("" "__ptsname_r_chk")
40453
40454
40455 __attribute__ ((__nonnull__ (2))) __attribute__((__warning__ ("ptsname_r called with buflen bigger than " "size of buf")))
40456 ;
40457
40458 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) int
40459 ptsname_r (int __fd, char *__buf, size_t __buflen) throw ()
40460 {
40461 if (__builtin_object_size (__buf, 2 > 1) != (size_t) -1)
40462 {
40463 if (!__builtin_constant_p (__buflen))
40464 return __ptsname_r_chk (__fd, __buf, __buflen, __builtin_object_size (__buf, 2 > 1));
40465 if (__buflen > __builtin_object_size (__buf, 2 > 1))
40466 return __ptsname_r_chk_warn (__fd, __buf, __buflen, __builtin_object_size (__buf, 2 > 1));
40467 }
40468 return __ptsname_r_alias (__fd, __buf, __buflen);
40469 }
40470
40471
40472 extern int __wctomb_chk (char *__s, wchar_t __wchar, size_t __buflen)
40473 throw () __attribute__ ((__warn_unused_result__));
40474 extern int __wctomb_alias (char *__s, wchar_t __wchar) throw () __asm__ ("" "wctomb")
40475 __attribute__ ((__warn_unused_result__));
40476
40477 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) __attribute__ ((__warn_unused_result__)) int
40478 wctomb (char *__s, wchar_t __wchar) throw ()
40479 {
40480
40481
40482
40483 #define __STDLIB_MB_LEN_MAX 16
40484
40485
40486
40487 if (__builtin_object_size (__s, 2 > 1) != (size_t) -1 && 16 > __builtin_object_size (__s, 2 > 1))
40488 return __wctomb_chk (__s, __wchar, __builtin_object_size (__s, 2 > 1));
40489 return __wctomb_alias (__s, __wchar);
40490 }
40491
40492
40493 extern size_t __mbstowcs_chk (wchar_t *__restrict __dst,
40494 __const char *__restrict __src,
40495 size_t __len, size_t __dstlen) throw ();
40496 extern size_t __mbstowcs_alias (wchar_t *__restrict __dst, __const char *__restrict __src, size_t __len) throw () __asm__ ("" "mbstowcs")
40497
40498
40499 ;
40500 extern size_t __mbstowcs_chk_warn (wchar_t *__restrict __dst, __const char *__restrict __src, size_t __len, size_t __dstlen) throw () __asm__ ("" "__mbstowcs_chk")
40501
40502
40503
40504 __attribute__((__warning__ ("mbstowcs called with dst buffer smaller than len " "* sizeof (wchar_t)")))
40505 ;
40506
40507 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) size_t
40508 mbstowcs (wchar_t *__restrict __dst, __const char *__restrict __src, size_t __len) throw ()
40509
40510 {
40511 if (__builtin_object_size (__dst, 2 > 1) != (size_t) -1)
40512 {
40513 if (!__builtin_constant_p (__len))
40514 return __mbstowcs_chk (__dst, __src, __len,
40515 __builtin_object_size (__dst, 2 > 1) / sizeof (wchar_t));
40516
40517 if (__len > __builtin_object_size (__dst, 2 > 1) / sizeof (wchar_t))
40518 return __mbstowcs_chk_warn (__dst, __src, __len,
40519 __builtin_object_size (__dst, 2 > 1) / sizeof (wchar_t));
40520 }
40521 return __mbstowcs_alias (__dst, __src, __len);
40522 }
40523
40524
40525 extern size_t __wcstombs_chk (char *__restrict __dst,
40526 __const wchar_t *__restrict __src,
40527 size_t __len, size_t __dstlen) throw ();
40528 extern size_t __wcstombs_alias (char *__restrict __dst, __const wchar_t *__restrict __src, size_t __len) throw () __asm__ ("" "wcstombs")
40529
40530
40531 ;
40532 extern size_t __wcstombs_chk_warn (char *__restrict __dst, __const wchar_t *__restrict __src, size_t __len, size_t __dstlen) throw () __asm__ ("" "__wcstombs_chk")
40533
40534
40535
40536 __attribute__((__warning__ ("wcstombs called with dst buffer smaller than len")));
40537
40538 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) size_t
40539 wcstombs (char *__restrict __dst, __const wchar_t *__restrict __src, size_t __len) throw ()
40540
40541 {
40542 if (__builtin_object_size (__dst, 2 > 1) != (size_t) -1)
40543 {
40544 if (!__builtin_constant_p (__len))
40545 return __wcstombs_chk (__dst, __src, __len, __builtin_object_size (__dst, 2 > 1));
40546 if (__len > __builtin_object_size (__dst, 2 > 1))
40547 return __wcstombs_chk_warn (__dst, __src, __len, __builtin_object_size (__dst, 2 > 1));
40548 }
40549 return __wcstombs_alias (__dst, __src, __len);
40550 }
40551 # 956 "/usr/include/stdlib.h" 2 3 4
40552
40553
40554
40555
40556
40557
40558 #undef __need_malloc_and_calloc
40559
40560 }
40561 # 17 "/usr/include/libxml2/libxml/SAX.h" 2
40562
40563
40564 # 1 "/usr/include/libxml2/libxml/xlink.h" 1
40565 # 11 "/usr/include/libxml2/libxml/xlink.h"
40566 #define __XML_XLINK_H__
40567
40568
40569
40570
40571
40572
40573
40574 extern "C" {
40575 # 32 "/usr/include/libxml2/libxml/xlink.h"
40576 typedef xmlChar *xlinkHRef;
40577 typedef xmlChar *xlinkRole;
40578 typedef xmlChar *xlinkTitle;
40579
40580 typedef enum {
40581 XLINK_TYPE_NONE = 0,
40582 XLINK_TYPE_SIMPLE,
40583 XLINK_TYPE_EXTENDED,
40584 XLINK_TYPE_EXTENDED_SET
40585 } xlinkType;
40586
40587 typedef enum {
40588 XLINK_SHOW_NONE = 0,
40589 XLINK_SHOW_NEW,
40590 XLINK_SHOW_EMBED,
40591 XLINK_SHOW_REPLACE
40592 } xlinkShow;
40593
40594 typedef enum {
40595 XLINK_ACTUATE_NONE = 0,
40596 XLINK_ACTUATE_AUTO,
40597 XLINK_ACTUATE_ONREQUEST
40598 } xlinkActuate;
40599 # 64 "/usr/include/libxml2/libxml/xlink.h"
40600 typedef void (*xlinkNodeDetectFunc) (void *ctx, xmlNodePtr node);
40601 # 81 "/usr/include/libxml2/libxml/xlink.h"
40602 typedef void
40603 (*xlinkSimpleLinkFunk) (void *ctx,
40604 xmlNodePtr node,
40605 const xlinkHRef href,
40606 const xlinkRole role,
40607 const xlinkTitle title);
40608 # 106 "/usr/include/libxml2/libxml/xlink.h"
40609 typedef void
40610 (*xlinkExtendedLinkFunk)(void *ctx,
40611 xmlNodePtr node,
40612 int nbLocators,
40613 const xlinkHRef *hrefs,
40614 const xlinkRole *roles,
40615 int nbArcs,
40616 const xlinkRole *from,
40617 const xlinkRole *to,
40618 xlinkShow *show,
40619 xlinkActuate *actuate,
40620 int nbTitles,
40621 const xlinkTitle *titles,
40622 const xmlChar **langs);
40623 # 134 "/usr/include/libxml2/libxml/xlink.h"
40624 typedef void
40625 (*xlinkExtendedLinkSetFunk) (void *ctx,
40626 xmlNodePtr node,
40627 int nbLocators,
40628 const xlinkHRef *hrefs,
40629 const xlinkRole *roles,
40630 int nbTitles,
40631 const xlinkTitle *titles,
40632 const xmlChar **langs);
40633
40634
40635
40636
40637
40638
40639
40640 typedef struct _xlinkHandler xlinkHandler;
40641 typedef xlinkHandler *xlinkHandlerPtr;
40642 struct _xlinkHandler {
40643 xlinkSimpleLinkFunk simple;
40644 xlinkExtendedLinkFunk extended;
40645 xlinkExtendedLinkSetFunk set;
40646 };
40647
40648
40649
40650
40651
40652
40653 xlinkNodeDetectFunc
40654 xlinkGetDefaultDetect (void);
40655 void
40656 xlinkSetDefaultDetect (xlinkNodeDetectFunc func);
40657
40658
40659
40660
40661 xlinkHandlerPtr
40662 xlinkGetDefaultHandler (void);
40663 void
40664 xlinkSetDefaultHandler (xlinkHandlerPtr handler);
40665
40666
40667
40668
40669 xlinkType
40670 xlinkIsLink (xmlDocPtr doc,
40671 xmlNodePtr node);
40672
40673
40674 }
40675 # 20 "/usr/include/libxml2/libxml/SAX.h" 2
40676
40677
40678
40679
40680 extern "C" {
40681
40682 const xmlChar *
40683 getPublicId (void *ctx);
40684 const xmlChar *
40685 getSystemId (void *ctx);
40686 void
40687 setDocumentLocator (void *ctx,
40688 xmlSAXLocatorPtr loc);
40689
40690 int
40691 getLineNumber (void *ctx);
40692 int
40693 getColumnNumber (void *ctx);
40694
40695 int
40696 isStandalone (void *ctx);
40697 int
40698 hasInternalSubset (void *ctx);
40699 int
40700 hasExternalSubset (void *ctx);
40701
40702 void
40703 internalSubset (void *ctx,
40704 const xmlChar *name,
40705 const xmlChar *ExternalID,
40706 const xmlChar *SystemID);
40707 void
40708 externalSubset (void *ctx,
40709 const xmlChar *name,
40710 const xmlChar *ExternalID,
40711 const xmlChar *SystemID);
40712 xmlEntityPtr
40713 getEntity (void *ctx,
40714 const xmlChar *name);
40715 xmlEntityPtr
40716 getParameterEntity (void *ctx,
40717 const xmlChar *name);
40718 xmlParserInputPtr
40719 resolveEntity (void *ctx,
40720 const xmlChar *publicId,
40721 const xmlChar *systemId);
40722
40723 void
40724 entityDecl (void *ctx,
40725 const xmlChar *name,
40726 int type,
40727 const xmlChar *publicId,
40728 const xmlChar *systemId,
40729 xmlChar *content);
40730 void
40731 attributeDecl (void *ctx,
40732 const xmlChar *elem,
40733 const xmlChar *fullname,
40734 int type,
40735 int def,
40736 const xmlChar *defaultValue,
40737 xmlEnumerationPtr tree);
40738 void
40739 elementDecl (void *ctx,
40740 const xmlChar *name,
40741 int type,
40742 xmlElementContentPtr content);
40743 void
40744 notationDecl (void *ctx,
40745 const xmlChar *name,
40746 const xmlChar *publicId,
40747 const xmlChar *systemId);
40748 void
40749 unparsedEntityDecl (void *ctx,
40750 const xmlChar *name,
40751 const xmlChar *publicId,
40752 const xmlChar *systemId,
40753 const xmlChar *notationName);
40754
40755 void
40756 startDocument (void *ctx);
40757 void
40758 endDocument (void *ctx);
40759 void
40760 attribute (void *ctx,
40761 const xmlChar *fullname,
40762 const xmlChar *value);
40763 void
40764 startElement (void *ctx,
40765 const xmlChar *fullname,
40766 const xmlChar **atts);
40767 void
40768 endElement (void *ctx,
40769 const xmlChar *name);
40770 void
40771 reference (void *ctx,
40772 const xmlChar *name);
40773 void
40774 characters (void *ctx,
40775 const xmlChar *ch,
40776 int len);
40777 void
40778 ignorableWhitespace (void *ctx,
40779 const xmlChar *ch,
40780 int len);
40781 void
40782 processingInstruction (void *ctx,
40783 const xmlChar *target,
40784 const xmlChar *data);
40785 void
40786 globalNamespace (void *ctx,
40787 const xmlChar *href,
40788 const xmlChar *prefix);
40789 void
40790 setNamespace (void *ctx,
40791 const xmlChar *name);
40792 xmlNsPtr
40793 getNamespace (void *ctx);
40794 int
40795 checkNamespace (void *ctx,
40796 xmlChar *nameSpace);
40797 void
40798 namespaceDecl (void *ctx,
40799 const xmlChar *href,
40800 const xmlChar *prefix);
40801 void
40802 comment (void *ctx,
40803 const xmlChar *value);
40804 void
40805 cdataBlock (void *ctx,
40806 const xmlChar *value,
40807 int len);
40808
40809
40810 void
40811 initxmlDefaultSAXHandler (xmlSAXHandlerV1 *hdlr,
40812 int warning);
40813
40814 void
40815 inithtmlDefaultSAXHandler (xmlSAXHandlerV1 *hdlr);
40816
40817
40818 void
40819 initdocbDefaultSAXHandler (xmlSAXHandlerV1 *hdlr);
40820
40821
40822
40823
40824 }
40825 # 21 "/usr/include/libxml2/libxml/globals.h" 2
40826 # 1 "/usr/include/libxml2/libxml/SAX2.h" 1
40827 # 13 "/usr/include/libxml2/libxml/SAX2.h"
40828 #define __XML_SAX2_H__
40829 # 22 "/usr/include/libxml2/libxml/SAX2.h"
40830 extern "C" {
40831
40832 const xmlChar *
40833 xmlSAX2GetPublicId (void *ctx);
40834 const xmlChar *
40835 xmlSAX2GetSystemId (void *ctx);
40836 void
40837 xmlSAX2SetDocumentLocator (void *ctx,
40838 xmlSAXLocatorPtr loc);
40839
40840 int
40841 xmlSAX2GetLineNumber (void *ctx);
40842 int
40843 xmlSAX2GetColumnNumber (void *ctx);
40844
40845 int
40846 xmlSAX2IsStandalone (void *ctx);
40847 int
40848 xmlSAX2HasInternalSubset (void *ctx);
40849 int
40850 xmlSAX2HasExternalSubset (void *ctx);
40851
40852 void
40853 xmlSAX2InternalSubset (void *ctx,
40854 const xmlChar *name,
40855 const xmlChar *ExternalID,
40856 const xmlChar *SystemID);
40857 void
40858 xmlSAX2ExternalSubset (void *ctx,
40859 const xmlChar *name,
40860 const xmlChar *ExternalID,
40861 const xmlChar *SystemID);
40862 xmlEntityPtr
40863 xmlSAX2GetEntity (void *ctx,
40864 const xmlChar *name);
40865 xmlEntityPtr
40866 xmlSAX2GetParameterEntity (void *ctx,
40867 const xmlChar *name);
40868 xmlParserInputPtr
40869 xmlSAX2ResolveEntity (void *ctx,
40870 const xmlChar *publicId,
40871 const xmlChar *systemId);
40872
40873 void
40874 xmlSAX2EntityDecl (void *ctx,
40875 const xmlChar *name,
40876 int type,
40877 const xmlChar *publicId,
40878 const xmlChar *systemId,
40879 xmlChar *content);
40880 void
40881 xmlSAX2AttributeDecl (void *ctx,
40882 const xmlChar *elem,
40883 const xmlChar *fullname,
40884 int type,
40885 int def,
40886 const xmlChar *defaultValue,
40887 xmlEnumerationPtr tree);
40888 void
40889 xmlSAX2ElementDecl (void *ctx,
40890 const xmlChar *name,
40891 int type,
40892 xmlElementContentPtr content);
40893 void
40894 xmlSAX2NotationDecl (void *ctx,
40895 const xmlChar *name,
40896 const xmlChar *publicId,
40897 const xmlChar *systemId);
40898 void
40899 xmlSAX2UnparsedEntityDecl (void *ctx,
40900 const xmlChar *name,
40901 const xmlChar *publicId,
40902 const xmlChar *systemId,
40903 const xmlChar *notationName);
40904
40905 void
40906 xmlSAX2StartDocument (void *ctx);
40907 void
40908 xmlSAX2EndDocument (void *ctx);
40909
40910 void
40911 xmlSAX2StartElement (void *ctx,
40912 const xmlChar *fullname,
40913 const xmlChar **atts);
40914 void
40915 xmlSAX2EndElement (void *ctx,
40916 const xmlChar *name);
40917
40918 void
40919 xmlSAX2StartElementNs (void *ctx,
40920 const xmlChar *localname,
40921 const xmlChar *prefix,
40922 const xmlChar *URI,
40923 int nb_namespaces,
40924 const xmlChar **namespaces,
40925 int nb_attributes,
40926 int nb_defaulted,
40927 const xmlChar **attributes);
40928 void
40929 xmlSAX2EndElementNs (void *ctx,
40930 const xmlChar *localname,
40931 const xmlChar *prefix,
40932 const xmlChar *URI);
40933 void
40934 xmlSAX2Reference (void *ctx,
40935 const xmlChar *name);
40936 void
40937 xmlSAX2Characters (void *ctx,
40938 const xmlChar *ch,
40939 int len);
40940 void
40941 xmlSAX2IgnorableWhitespace (void *ctx,
40942 const xmlChar *ch,
40943 int len);
40944 void
40945 xmlSAX2ProcessingInstruction (void *ctx,
40946 const xmlChar *target,
40947 const xmlChar *data);
40948 void
40949 xmlSAX2Comment (void *ctx,
40950 const xmlChar *value);
40951 void
40952 xmlSAX2CDataBlock (void *ctx,
40953 const xmlChar *value,
40954 int len);
40955
40956
40957 int
40958 xmlSAXDefaultVersion (int version);
40959
40960
40961 int
40962 xmlSAXVersion (xmlSAXHandler *hdlr,
40963 int version);
40964 void
40965 xmlSAX2InitDefaultSAXHandler (xmlSAXHandler *hdlr,
40966 int warning);
40967
40968 void
40969 xmlSAX2InitHtmlDefaultSAXHandler(xmlSAXHandler *hdlr);
40970 void
40971 htmlDefaultSAXHandlerInit (void);
40972
40973
40974 void
40975 xmlSAX2InitDocbDefaultSAXHandler(xmlSAXHandler *hdlr);
40976 void
40977 docbDefaultSAXHandlerInit (void);
40978
40979 void
40980 xmlDefaultSAXHandlerInit (void);
40981
40982 }
40983 # 22 "/usr/include/libxml2/libxml/globals.h" 2
40984 # 1 "/usr/include/libxml2/libxml/xmlmemory.h" 1
40985 # 13 "/usr/include/libxml2/libxml/xmlmemory.h"
40986 #define __DEBUG_MEMORY_ALLOC__
40987 # 45 "/usr/include/libxml2/libxml/xmlmemory.h"
40988 extern "C" {
40989 # 57 "/usr/include/libxml2/libxml/xmlmemory.h"
40990 typedef void ( *xmlFreeFunc)(void *mem);
40991 # 66 "/usr/include/libxml2/libxml/xmlmemory.h"
40992 typedef void *(__attribute__((alloc_size(1))) *xmlMallocFunc)(size_t size);
40993 # 77 "/usr/include/libxml2/libxml/xmlmemory.h"
40994 typedef void *( *xmlReallocFunc)(void *mem, size_t size);
40995 # 87 "/usr/include/libxml2/libxml/xmlmemory.h"
40996 typedef char *( *xmlStrdupFunc)(const char *str);
40997 # 103 "/usr/include/libxml2/libxml/xmlmemory.h"
40998 int
40999 xmlMemSetup (xmlFreeFunc freeFunc,
41000 xmlMallocFunc mallocFunc,
41001 xmlReallocFunc reallocFunc,
41002 xmlStrdupFunc strdupFunc);
41003 int
41004 xmlMemGet (xmlFreeFunc *freeFunc,
41005 xmlMallocFunc *mallocFunc,
41006 xmlReallocFunc *reallocFunc,
41007 xmlStrdupFunc *strdupFunc);
41008 int
41009 xmlGcMemSetup (xmlFreeFunc freeFunc,
41010 xmlMallocFunc mallocFunc,
41011 xmlMallocFunc mallocAtomicFunc,
41012 xmlReallocFunc reallocFunc,
41013 xmlStrdupFunc strdupFunc);
41014 int
41015 xmlGcMemGet (xmlFreeFunc *freeFunc,
41016 xmlMallocFunc *mallocFunc,
41017 xmlMallocFunc *mallocAtomicFunc,
41018 xmlReallocFunc *reallocFunc,
41019 xmlStrdupFunc *strdupFunc);
41020
41021
41022
41023
41024 int
41025 xmlInitMemory (void);
41026
41027
41028
41029
41030 void
41031 xmlCleanupMemory (void);
41032
41033
41034
41035 int
41036 xmlMemUsed (void);
41037 int
41038 xmlMemBlocks (void);
41039 void
41040 xmlMemDisplay (FILE *fp);
41041 void
41042 xmlMemDisplayLast(FILE *fp, long nbBytes);
41043 void
41044 xmlMemShow (FILE *fp, int nr);
41045 void
41046 xmlMemoryDump (void);
41047 void *
41048 xmlMemMalloc (size_t size) __attribute__((alloc_size(1)));
41049 void *
41050 xmlMemRealloc (void *ptr,size_t size);
41051 void
41052 xmlMemFree (void *ptr);
41053 char *
41054 xmlMemoryStrdup (const char *str);
41055 void *
41056 xmlMallocLoc (size_t size, const char *file, int line) __attribute__((alloc_size(1)));
41057 void *
41058 xmlReallocLoc (void *ptr, size_t size, const char *file, int line);
41059 void *
41060 xmlMallocAtomicLoc (size_t size, const char *file, int line) __attribute__((alloc_size(1)));
41061 char *
41062 xmlMemStrdupLoc (const char *str, const char *file, int line);
41063 # 213 "/usr/include/libxml2/libxml/xmlmemory.h"
41064 }
41065 # 23 "/usr/include/libxml2/libxml/globals.h" 2
41066
41067
41068 extern "C" {
41069
41070
41071 void xmlInitGlobals(void);
41072 void xmlCleanupGlobals(void);
41073 # 42 "/usr/include/libxml2/libxml/globals.h"
41074 typedef xmlParserInputBufferPtr (*xmlParserInputBufferCreateFilenameFunc) (const char *URI, xmlCharEncoding enc);
41075 # 55 "/usr/include/libxml2/libxml/globals.h"
41076 typedef xmlOutputBufferPtr (*xmlOutputBufferCreateFilenameFunc) (const char *URI, xmlCharEncodingHandlerPtr encoder, int compression);
41077
41078 xmlParserInputBufferCreateFilenameFunc
41079 xmlParserInputBufferCreateFilenameDefault (xmlParserInputBufferCreateFilenameFunc func);
41080 xmlOutputBufferCreateFilenameFunc
41081 xmlOutputBufferCreateFilenameDefault (xmlOutputBufferCreateFilenameFunc func);
41082
41083
41084
41085
41086
41087
41088 #undef docbDefaultSAXHandler
41089 #undef htmlDefaultSAXHandler
41090 #undef oldXMLWDcompatibility
41091 #undef xmlBufferAllocScheme
41092 #undef xmlDefaultBufferSize
41093 #undef xmlDefaultSAXHandler
41094 #undef xmlDefaultSAXLocator
41095 #undef xmlDoValidityCheckingDefaultValue
41096 #undef xmlFree
41097 #undef xmlGenericError
41098 #undef xmlStructuredError
41099 #undef xmlGenericErrorContext
41100 #undef xmlStructuredErrorContext
41101 #undef xmlGetWarningsDefaultValue
41102 #undef xmlIndentTreeOutput
41103 #undef xmlTreeIndentString
41104 #undef xmlKeepBlanksDefaultValue
41105 #undef xmlLineNumbersDefaultValue
41106 #undef xmlLoadExtDtdDefaultValue
41107 #undef xmlMalloc
41108 #undef xmlMallocAtomic
41109 #undef xmlMemStrdup
41110 #undef xmlParserDebugEntities
41111 #undef xmlParserVersion
41112 #undef xmlPedanticParserDefaultValue
41113 #undef xmlRealloc
41114 #undef xmlSaveNoEmptyTags
41115 #undef xmlSubstituteEntitiesDefaultValue
41116 #undef xmlRegisterNodeDefaultValue
41117 #undef xmlDeregisterNodeDefaultValue
41118 #undef xmlLastError
41119 #undef xmlParserInputBufferCreateFilenameValue
41120 #undef xmlOutputBufferCreateFilenameValue
41121
41122
41123
41124
41125
41126
41127
41128 typedef void (*xmlRegisterNodeFunc) (xmlNodePtr node);
41129
41130
41131
41132
41133
41134
41135 typedef void (*xmlDeregisterNodeFunc) (xmlNodePtr node);
41136
41137 typedef struct _xmlGlobalState xmlGlobalState;
41138 typedef xmlGlobalState *xmlGlobalStatePtr;
41139 struct _xmlGlobalState
41140 {
41141 const char *xmlParserVersion;
41142
41143 xmlSAXLocator xmlDefaultSAXLocator;
41144 xmlSAXHandlerV1 xmlDefaultSAXHandler;
41145 xmlSAXHandlerV1 docbDefaultSAXHandler;
41146 xmlSAXHandlerV1 htmlDefaultSAXHandler;
41147
41148 xmlFreeFunc xmlFree;
41149 xmlMallocFunc xmlMalloc;
41150 xmlStrdupFunc xmlMemStrdup;
41151 xmlReallocFunc xmlRealloc;
41152
41153 xmlGenericErrorFunc xmlGenericError;
41154 xmlStructuredErrorFunc xmlStructuredError;
41155 void *xmlGenericErrorContext;
41156
41157 int oldXMLWDcompatibility;
41158
41159 xmlBufferAllocationScheme xmlBufferAllocScheme;
41160 int xmlDefaultBufferSize;
41161
41162 int xmlSubstituteEntitiesDefaultValue;
41163 int xmlDoValidityCheckingDefaultValue;
41164 int xmlGetWarningsDefaultValue;
41165 int xmlKeepBlanksDefaultValue;
41166 int xmlLineNumbersDefaultValue;
41167 int xmlLoadExtDtdDefaultValue;
41168 int xmlParserDebugEntities;
41169 int xmlPedanticParserDefaultValue;
41170
41171 int xmlSaveNoEmptyTags;
41172 int xmlIndentTreeOutput;
41173 const char *xmlTreeIndentString;
41174
41175 xmlRegisterNodeFunc xmlRegisterNodeDefaultValue;
41176 xmlDeregisterNodeFunc xmlDeregisterNodeDefaultValue;
41177
41178 xmlMallocFunc xmlMallocAtomic;
41179 xmlError xmlLastError;
41180
41181 xmlParserInputBufferCreateFilenameFunc xmlParserInputBufferCreateFilenameValue;
41182 xmlOutputBufferCreateFilenameFunc xmlOutputBufferCreateFilenameValue;
41183
41184 void *xmlStructuredErrorContext;
41185 };
41186
41187
41188 }
41189
41190 # 1 "/usr/include/libxml2/libxml/threads.h" 1
41191 # 12 "/usr/include/libxml2/libxml/threads.h"
41192 #define __XML_THREADS_H__
41193
41194
41195
41196
41197 extern "C" {
41198
41199
41200
41201
41202
41203 typedef struct _xmlMutex xmlMutex;
41204 typedef xmlMutex *xmlMutexPtr;
41205
41206
41207
41208
41209 typedef struct _xmlRMutex xmlRMutex;
41210 typedef xmlRMutex *xmlRMutexPtr;
41211
41212
41213 }
41214
41215 # 1 "/usr/include/libxml2/libxml/globals.h" 1
41216 # 36 "/usr/include/libxml2/libxml/threads.h" 2
41217
41218 extern "C" {
41219
41220 xmlMutexPtr
41221 xmlNewMutex (void);
41222 void
41223 xmlMutexLock (xmlMutexPtr tok);
41224 void
41225 xmlMutexUnlock (xmlMutexPtr tok);
41226 void
41227 xmlFreeMutex (xmlMutexPtr tok);
41228
41229 xmlRMutexPtr
41230 xmlNewRMutex (void);
41231 void
41232 xmlRMutexLock (xmlRMutexPtr tok);
41233 void
41234 xmlRMutexUnlock (xmlRMutexPtr tok);
41235 void
41236 xmlFreeRMutex (xmlRMutexPtr tok);
41237
41238
41239
41240
41241 void
41242 xmlInitThreads (void);
41243 void
41244 xmlLockLibrary (void);
41245 void
41246 xmlUnlockLibrary(void);
41247 int
41248 xmlGetThreadId (void);
41249 int
41250 xmlIsMainThread (void);
41251 void
41252 xmlCleanupThreads(void);
41253 xmlGlobalStatePtr
41254 xmlGetGlobalState(void);
41255
41256
41257
41258
41259
41260
41261 }
41262 # 170 "/usr/include/libxml2/libxml/globals.h" 2
41263
41264 extern "C" {
41265
41266
41267 void xmlInitializeGlobalState(xmlGlobalStatePtr gs);
41268
41269 void xmlThrDefSetGenericErrorFunc(void *ctx, xmlGenericErrorFunc handler);
41270
41271 void xmlThrDefSetStructuredErrorFunc(void *ctx, xmlStructuredErrorFunc handler);
41272
41273 xmlRegisterNodeFunc xmlRegisterNodeDefault(xmlRegisterNodeFunc func);
41274 xmlRegisterNodeFunc xmlThrDefRegisterNodeDefault(xmlRegisterNodeFunc func);
41275 xmlDeregisterNodeFunc xmlDeregisterNodeDefault(xmlDeregisterNodeFunc func);
41276 xmlDeregisterNodeFunc xmlThrDefDeregisterNodeDefault(xmlDeregisterNodeFunc func);
41277
41278 xmlOutputBufferCreateFilenameFunc
41279 xmlThrDefOutputBufferCreateFilenameDefault(xmlOutputBufferCreateFilenameFunc func);
41280 xmlParserInputBufferCreateFilenameFunc
41281 xmlThrDefParserInputBufferCreateFilenameDefault(xmlParserInputBufferCreateFilenameFunc func);
41282 # 243 "/usr/include/libxml2/libxml/globals.h"
41283 extern xmlMallocFunc xmlMalloc;
41284 extern xmlMallocFunc xmlMallocAtomic;
41285 extern xmlReallocFunc xmlRealloc;
41286 extern xmlFreeFunc xmlFree;
41287 extern xmlStrdupFunc xmlMemStrdup;
41288
41289
41290
41291 xmlSAXHandlerV1 * __docbDefaultSAXHandler(void);
41292
41293 #define docbDefaultSAXHandler (*(__docbDefaultSAXHandler()))
41294
41295
41296
41297
41298
41299
41300
41301 xmlSAXHandlerV1 * __htmlDefaultSAXHandler(void);
41302
41303 #define htmlDefaultSAXHandler (*(__htmlDefaultSAXHandler()))
41304
41305
41306
41307
41308
41309
41310 xmlError * __xmlLastError(void);
41311
41312 #define xmlLastError (*(__xmlLastError()))
41313 # 285 "/usr/include/libxml2/libxml/globals.h"
41314 int * __oldXMLWDcompatibility(void);
41315
41316 #define oldXMLWDcompatibility (*(__oldXMLWDcompatibility()))
41317
41318
41319
41320
41321
41322 xmlBufferAllocationScheme * __xmlBufferAllocScheme(void);
41323
41324 #define xmlBufferAllocScheme (*(__xmlBufferAllocScheme()))
41325
41326
41327
41328
41329 xmlBufferAllocationScheme xmlThrDefBufferAllocScheme(xmlBufferAllocationScheme v);
41330
41331 int * __xmlDefaultBufferSize(void);
41332
41333 #define xmlDefaultBufferSize (*(__xmlDefaultBufferSize()))
41334
41335
41336
41337
41338 int xmlThrDefDefaultBufferSize(int v);
41339
41340 xmlSAXHandlerV1 * __xmlDefaultSAXHandler(void);
41341
41342 #define xmlDefaultSAXHandler (*(__xmlDefaultSAXHandler()))
41343
41344
41345
41346
41347
41348 xmlSAXLocator * __xmlDefaultSAXLocator(void);
41349
41350 #define xmlDefaultSAXLocator (*(__xmlDefaultSAXLocator()))
41351
41352
41353
41354
41355
41356 int * __xmlDoValidityCheckingDefaultValue(void);
41357
41358 #define xmlDoValidityCheckingDefaultValue (*(__xmlDoValidityCheckingDefaultValue()))
41359
41360
41361
41362
41363 int xmlThrDefDoValidityCheckingDefaultValue(int v);
41364
41365 xmlGenericErrorFunc * __xmlGenericError(void);
41366
41367 #define xmlGenericError (*(__xmlGenericError()))
41368
41369
41370
41371
41372
41373 xmlStructuredErrorFunc * __xmlStructuredError(void);
41374
41375 #define xmlStructuredError (*(__xmlStructuredError()))
41376
41377
41378
41379
41380
41381 void * * __xmlGenericErrorContext(void);
41382
41383 #define xmlGenericErrorContext (*(__xmlGenericErrorContext()))
41384
41385
41386
41387
41388
41389 void * * __xmlStructuredErrorContext(void);
41390
41391 #define xmlStructuredErrorContext (*(__xmlStructuredErrorContext()))
41392
41393
41394
41395
41396
41397 int * __xmlGetWarningsDefaultValue(void);
41398
41399 #define xmlGetWarningsDefaultValue (*(__xmlGetWarningsDefaultValue()))
41400
41401
41402
41403
41404 int xmlThrDefGetWarningsDefaultValue(int v);
41405
41406 int * __xmlIndentTreeOutput(void);
41407
41408 #define xmlIndentTreeOutput (*(__xmlIndentTreeOutput()))
41409
41410
41411
41412
41413 int xmlThrDefIndentTreeOutput(int v);
41414
41415 const char * * __xmlTreeIndentString(void);
41416
41417 #define xmlTreeIndentString (*(__xmlTreeIndentString()))
41418
41419
41420
41421
41422 const char * xmlThrDefTreeIndentString(const char * v);
41423
41424 int * __xmlKeepBlanksDefaultValue(void);
41425
41426 #define xmlKeepBlanksDefaultValue (*(__xmlKeepBlanksDefaultValue()))
41427
41428
41429
41430
41431 int xmlThrDefKeepBlanksDefaultValue(int v);
41432
41433 int * __xmlLineNumbersDefaultValue(void);
41434
41435 #define xmlLineNumbersDefaultValue (*(__xmlLineNumbersDefaultValue()))
41436
41437
41438
41439
41440 int xmlThrDefLineNumbersDefaultValue(int v);
41441
41442 int * __xmlLoadExtDtdDefaultValue(void);
41443
41444 #define xmlLoadExtDtdDefaultValue (*(__xmlLoadExtDtdDefaultValue()))
41445
41446
41447
41448
41449 int xmlThrDefLoadExtDtdDefaultValue(int v);
41450
41451 int * __xmlParserDebugEntities(void);
41452
41453 #define xmlParserDebugEntities (*(__xmlParserDebugEntities()))
41454
41455
41456
41457
41458 int xmlThrDefParserDebugEntities(int v);
41459
41460 const char * * __xmlParserVersion(void);
41461
41462 #define xmlParserVersion (*(__xmlParserVersion()))
41463
41464
41465
41466
41467
41468 int * __xmlPedanticParserDefaultValue(void);
41469
41470 #define xmlPedanticParserDefaultValue (*(__xmlPedanticParserDefaultValue()))
41471
41472
41473
41474
41475 int xmlThrDefPedanticParserDefaultValue(int v);
41476
41477 int * __xmlSaveNoEmptyTags(void);
41478
41479 #define xmlSaveNoEmptyTags (*(__xmlSaveNoEmptyTags()))
41480
41481
41482
41483
41484 int xmlThrDefSaveNoEmptyTags(int v);
41485
41486 int * __xmlSubstituteEntitiesDefaultValue(void);
41487
41488 #define xmlSubstituteEntitiesDefaultValue (*(__xmlSubstituteEntitiesDefaultValue()))
41489
41490
41491
41492
41493 int xmlThrDefSubstituteEntitiesDefaultValue(int v);
41494
41495 xmlRegisterNodeFunc * __xmlRegisterNodeDefaultValue(void);
41496
41497 #define xmlRegisterNodeDefaultValue (*(__xmlRegisterNodeDefaultValue()))
41498
41499
41500
41501
41502
41503 xmlDeregisterNodeFunc * __xmlDeregisterNodeDefaultValue(void);
41504
41505 #define xmlDeregisterNodeDefaultValue (*(__xmlDeregisterNodeDefaultValue()))
41506
41507
41508
41509
41510
41511 xmlParserInputBufferCreateFilenameFunc * __xmlParserInputBufferCreateFilenameValue(void);
41512
41513 #define xmlParserInputBufferCreateFilenameValue (*(__xmlParserInputBufferCreateFilenameValue()))
41514
41515
41516
41517
41518
41519 xmlOutputBufferCreateFilenameFunc * __xmlOutputBufferCreateFilenameValue(void);
41520
41521 #define xmlOutputBufferCreateFilenameValue (*(__xmlOutputBufferCreateFilenameValue()))
41522
41523
41524
41525
41526
41527
41528 }
41529 # 118 "/usr/include/libxml2/libxml/xmlIO.h" 2
41530
41531
41532
41533
41534
41535 extern "C" {
41536
41537 struct _xmlParserInputBuffer {
41538 void* context;
41539 xmlInputReadCallback readcallback;
41540 xmlInputCloseCallback closecallback;
41541
41542 xmlCharEncodingHandlerPtr encoder;
41543
41544 xmlBufferPtr buffer;
41545 xmlBufferPtr raw;
41546 int compressed;
41547 int error;
41548 unsigned long rawconsumed;
41549 };
41550
41551
41552
41553 struct _xmlOutputBuffer {
41554 void* context;
41555 xmlOutputWriteCallback writecallback;
41556 xmlOutputCloseCallback closecallback;
41557
41558 xmlCharEncodingHandlerPtr encoder;
41559
41560 xmlBufferPtr buffer;
41561 xmlBufferPtr conv;
41562 int written;
41563 int error;
41564 };
41565
41566
41567
41568
41569
41570 void
41571 xmlCleanupInputCallbacks (void);
41572
41573 int
41574 xmlPopInputCallbacks (void);
41575
41576 void
41577 xmlRegisterDefaultInputCallbacks (void);
41578 xmlParserInputBufferPtr
41579 xmlAllocParserInputBuffer (xmlCharEncoding enc);
41580
41581 xmlParserInputBufferPtr
41582 xmlParserInputBufferCreateFilename (const char *URI,
41583 xmlCharEncoding enc);
41584 xmlParserInputBufferPtr
41585 xmlParserInputBufferCreateFile (FILE *file,
41586 xmlCharEncoding enc);
41587 xmlParserInputBufferPtr
41588 xmlParserInputBufferCreateFd (int fd,
41589 xmlCharEncoding enc);
41590 xmlParserInputBufferPtr
41591 xmlParserInputBufferCreateMem (const char *mem, int size,
41592 xmlCharEncoding enc);
41593 xmlParserInputBufferPtr
41594 xmlParserInputBufferCreateStatic (const char *mem, int size,
41595 xmlCharEncoding enc);
41596 xmlParserInputBufferPtr
41597 xmlParserInputBufferCreateIO (xmlInputReadCallback ioread,
41598 xmlInputCloseCallback ioclose,
41599 void *ioctx,
41600 xmlCharEncoding enc);
41601 int
41602 xmlParserInputBufferRead (xmlParserInputBufferPtr in,
41603 int len);
41604 int
41605 xmlParserInputBufferGrow (xmlParserInputBufferPtr in,
41606 int len);
41607 int
41608 xmlParserInputBufferPush (xmlParserInputBufferPtr in,
41609 int len,
41610 const char *buf);
41611 void
41612 xmlFreeParserInputBuffer (xmlParserInputBufferPtr in);
41613 char *
41614 xmlParserGetDirectory (const char *filename);
41615
41616 int
41617 xmlRegisterInputCallbacks (xmlInputMatchCallback matchFunc,
41618 xmlInputOpenCallback openFunc,
41619 xmlInputReadCallback readFunc,
41620 xmlInputCloseCallback closeFunc);
41621
41622 xmlParserInputBufferPtr
41623 __xmlParserInputBufferCreateFilename(const char *URI,
41624 xmlCharEncoding enc);
41625
41626
41627
41628
41629
41630 void
41631 xmlCleanupOutputCallbacks (void);
41632 void
41633 xmlRegisterDefaultOutputCallbacks(void);
41634 xmlOutputBufferPtr
41635 xmlAllocOutputBuffer (xmlCharEncodingHandlerPtr encoder);
41636
41637 xmlOutputBufferPtr
41638 xmlOutputBufferCreateFilename (const char *URI,
41639 xmlCharEncodingHandlerPtr encoder,
41640 int compression);
41641
41642 xmlOutputBufferPtr
41643 xmlOutputBufferCreateFile (FILE *file,
41644 xmlCharEncodingHandlerPtr encoder);
41645
41646 xmlOutputBufferPtr
41647 xmlOutputBufferCreateBuffer (xmlBufferPtr buffer,
41648 xmlCharEncodingHandlerPtr encoder);
41649
41650 xmlOutputBufferPtr
41651 xmlOutputBufferCreateFd (int fd,
41652 xmlCharEncodingHandlerPtr encoder);
41653
41654 xmlOutputBufferPtr
41655 xmlOutputBufferCreateIO (xmlOutputWriteCallback iowrite,
41656 xmlOutputCloseCallback ioclose,
41657 void *ioctx,
41658 xmlCharEncodingHandlerPtr encoder);
41659
41660 int
41661 xmlOutputBufferWrite (xmlOutputBufferPtr out,
41662 int len,
41663 const char *buf);
41664 int
41665 xmlOutputBufferWriteString (xmlOutputBufferPtr out,
41666 const char *str);
41667 int
41668 xmlOutputBufferWriteEscape (xmlOutputBufferPtr out,
41669 const xmlChar *str,
41670 xmlCharEncodingOutputFunc escaping);
41671
41672 int
41673 xmlOutputBufferFlush (xmlOutputBufferPtr out);
41674 int
41675 xmlOutputBufferClose (xmlOutputBufferPtr out);
41676
41677 int
41678 xmlRegisterOutputCallbacks (xmlOutputMatchCallback matchFunc,
41679 xmlOutputOpenCallback openFunc,
41680 xmlOutputWriteCallback writeFunc,
41681 xmlOutputCloseCallback closeFunc);
41682
41683 xmlOutputBufferPtr
41684 __xmlOutputBufferCreateFilename(const char *URI,
41685 xmlCharEncodingHandlerPtr encoder,
41686 int compression);
41687
41688
41689
41690 void
41691 xmlRegisterHTTPPostCallbacks (void );
41692
41693
41694
41695
41696 xmlParserInputPtr
41697 xmlCheckHTTPInput (xmlParserCtxtPtr ctxt,
41698 xmlParserInputPtr ret);
41699
41700
41701
41702
41703 xmlParserInputPtr
41704 xmlNoNetExternalEntityLoader (const char *URL,
41705 const char *ID,
41706 xmlParserCtxtPtr ctxt);
41707
41708
41709
41710
41711
41712 xmlChar *
41713 xmlNormalizeWindowsPath (const xmlChar *path);
41714
41715 int
41716 xmlCheckFilename (const char *path);
41717
41718
41719
41720 int
41721 xmlFileMatch (const char *filename);
41722 void *
41723 xmlFileOpen (const char *filename);
41724 int
41725 xmlFileRead (void * context,
41726 char * buffer,
41727 int len);
41728 int
41729 xmlFileClose (void * context);
41730
41731
41732
41733
41734
41735 int
41736 xmlIOHTTPMatch (const char *filename);
41737 void *
41738 xmlIOHTTPOpen (const char *filename);
41739
41740 void *
41741 xmlIOHTTPOpenW (const char * post_uri,
41742 int compression );
41743
41744 int
41745 xmlIOHTTPRead (void * context,
41746 char * buffer,
41747 int len);
41748 int
41749 xmlIOHTTPClose (void * context);
41750
41751
41752
41753
41754
41755
41756 int
41757 xmlIOFTPMatch (const char *filename);
41758 void *
41759 xmlIOFTPOpen (const char *filename);
41760 int
41761 xmlIOFTPRead (void * context,
41762 char * buffer,
41763 int len);
41764 int
41765 xmlIOFTPClose (void * context);
41766
41767
41768
41769 }
41770 # 809 "/usr/include/libxml2/libxml/parser.h" 2
41771
41772
41773
41774 extern "C" {
41775
41776
41777
41778
41779
41780
41781 void
41782 xmlInitParser (void);
41783 void
41784 xmlCleanupParser (void);
41785
41786
41787
41788
41789 int
41790 xmlParserInputRead (xmlParserInputPtr in,
41791 int len);
41792 int
41793 xmlParserInputGrow (xmlParserInputPtr in,
41794 int len);
41795
41796
41797
41798
41799
41800 xmlDocPtr
41801 xmlParseDoc (const xmlChar *cur);
41802 xmlDocPtr
41803 xmlParseFile (const char *filename);
41804 xmlDocPtr
41805 xmlParseMemory (const char *buffer,
41806 int size);
41807
41808 int
41809 xmlSubstituteEntitiesDefault(int val);
41810 int
41811 xmlKeepBlanksDefault (int val);
41812 void
41813 xmlStopParser (xmlParserCtxtPtr ctxt);
41814 int
41815 xmlPedanticParserDefault(int val);
41816 int
41817 xmlLineNumbersDefault (int val);
41818
41819
41820
41821
41822
41823 xmlDocPtr
41824 xmlRecoverDoc (const xmlChar *cur);
41825 xmlDocPtr
41826 xmlRecoverMemory (const char *buffer,
41827 int size);
41828 xmlDocPtr
41829 xmlRecoverFile (const char *filename);
41830
41831
41832
41833
41834
41835 int
41836 xmlParseDocument (xmlParserCtxtPtr ctxt);
41837 int
41838 xmlParseExtParsedEnt (xmlParserCtxtPtr ctxt);
41839
41840 int
41841 xmlSAXUserParseFile (xmlSAXHandlerPtr sax,
41842 void *user_data,
41843 const char *filename);
41844 int
41845 xmlSAXUserParseMemory (xmlSAXHandlerPtr sax,
41846 void *user_data,
41847 const char *buffer,
41848 int size);
41849 xmlDocPtr
41850 xmlSAXParseDoc (xmlSAXHandlerPtr sax,
41851 const xmlChar *cur,
41852 int recovery);
41853 xmlDocPtr
41854 xmlSAXParseMemory (xmlSAXHandlerPtr sax,
41855 const char *buffer,
41856 int size,
41857 int recovery);
41858 xmlDocPtr
41859 xmlSAXParseMemoryWithData (xmlSAXHandlerPtr sax,
41860 const char *buffer,
41861 int size,
41862 int recovery,
41863 void *data);
41864 xmlDocPtr
41865 xmlSAXParseFile (xmlSAXHandlerPtr sax,
41866 const char *filename,
41867 int recovery);
41868 xmlDocPtr
41869 xmlSAXParseFileWithData (xmlSAXHandlerPtr sax,
41870 const char *filename,
41871 int recovery,
41872 void *data);
41873 xmlDocPtr
41874 xmlSAXParseEntity (xmlSAXHandlerPtr sax,
41875 const char *filename);
41876 xmlDocPtr
41877 xmlParseEntity (const char *filename);
41878
41879
41880
41881 xmlDtdPtr
41882 xmlSAXParseDTD (xmlSAXHandlerPtr sax,
41883 const xmlChar *ExternalID,
41884 const xmlChar *SystemID);
41885 xmlDtdPtr
41886 xmlParseDTD (const xmlChar *ExternalID,
41887 const xmlChar *SystemID);
41888 xmlDtdPtr
41889 xmlIOParseDTD (xmlSAXHandlerPtr sax,
41890 xmlParserInputBufferPtr input,
41891 xmlCharEncoding enc);
41892
41893
41894 int
41895 xmlParseBalancedChunkMemory(xmlDocPtr doc,
41896 xmlSAXHandlerPtr sax,
41897 void *user_data,
41898 int depth,
41899 const xmlChar *string,
41900 xmlNodePtr *lst);
41901
41902 xmlParserErrors
41903 xmlParseInNodeContext (xmlNodePtr node,
41904 const char *data,
41905 int datalen,
41906 int options,
41907 xmlNodePtr *lst);
41908
41909 int
41910 xmlParseBalancedChunkMemoryRecover(xmlDocPtr doc,
41911 xmlSAXHandlerPtr sax,
41912 void *user_data,
41913 int depth,
41914 const xmlChar *string,
41915 xmlNodePtr *lst,
41916 int recover);
41917 int
41918 xmlParseExternalEntity (xmlDocPtr doc,
41919 xmlSAXHandlerPtr sax,
41920 void *user_data,
41921 int depth,
41922 const xmlChar *URL,
41923 const xmlChar *ID,
41924 xmlNodePtr *lst);
41925
41926 int
41927 xmlParseCtxtExternalEntity(xmlParserCtxtPtr ctx,
41928 const xmlChar *URL,
41929 const xmlChar *ID,
41930 xmlNodePtr *lst);
41931
41932
41933
41934
41935 xmlParserCtxtPtr
41936 xmlNewParserCtxt (void);
41937 int
41938 xmlInitParserCtxt (xmlParserCtxtPtr ctxt);
41939 void
41940 xmlClearParserCtxt (xmlParserCtxtPtr ctxt);
41941 void
41942 xmlFreeParserCtxt (xmlParserCtxtPtr ctxt);
41943
41944 void
41945 xmlSetupParserForBuffer (xmlParserCtxtPtr ctxt,
41946 const xmlChar* buffer,
41947 const char *filename);
41948
41949 xmlParserCtxtPtr
41950 xmlCreateDocParserCtxt (const xmlChar *cur);
41951
41952
41953
41954
41955
41956 int
41957 xmlGetFeaturesList (int *len,
41958 const char **result);
41959 int
41960 xmlGetFeature (xmlParserCtxtPtr ctxt,
41961 const char *name,
41962 void *result);
41963 int
41964 xmlSetFeature (xmlParserCtxtPtr ctxt,
41965 const char *name,
41966 void *value);
41967
41968
41969
41970
41971
41972
41973 xmlParserCtxtPtr
41974 xmlCreatePushParserCtxt(xmlSAXHandlerPtr sax,
41975 void *user_data,
41976 const char *chunk,
41977 int size,
41978 const char *filename);
41979 int
41980 xmlParseChunk (xmlParserCtxtPtr ctxt,
41981 const char *chunk,
41982 int size,
41983 int terminate);
41984
41985
41986
41987
41988
41989
41990 xmlParserCtxtPtr
41991 xmlCreateIOParserCtxt (xmlSAXHandlerPtr sax,
41992 void *user_data,
41993 xmlInputReadCallback ioread,
41994 xmlInputCloseCallback ioclose,
41995 void *ioctx,
41996 xmlCharEncoding enc);
41997
41998 xmlParserInputPtr
41999 xmlNewIOInputStream (xmlParserCtxtPtr ctxt,
42000 xmlParserInputBufferPtr input,
42001 xmlCharEncoding enc);
42002
42003
42004
42005
42006 const xmlParserNodeInfo*
42007 xmlParserFindNodeInfo (const xmlParserCtxtPtr ctxt,
42008 const xmlNodePtr node);
42009 void
42010 xmlInitNodeInfoSeq (xmlParserNodeInfoSeqPtr seq);
42011 void
42012 xmlClearNodeInfoSeq (xmlParserNodeInfoSeqPtr seq);
42013 unsigned long
42014 xmlParserFindNodeInfoIndex(const xmlParserNodeInfoSeqPtr seq,
42015 const xmlNodePtr node);
42016 void
42017 xmlParserAddNodeInfo (xmlParserCtxtPtr ctxt,
42018 const xmlParserNodeInfoPtr info);
42019
42020
42021
42022
42023
42024 void
42025 xmlSetExternalEntityLoader(xmlExternalEntityLoader f);
42026 xmlExternalEntityLoader
42027 xmlGetExternalEntityLoader(void);
42028 xmlParserInputPtr
42029 xmlLoadExternalEntity (const char *URL,
42030 const char *ID,
42031 xmlParserCtxtPtr ctxt);
42032
42033
42034
42035
42036 long
42037 xmlByteConsumed (xmlParserCtxtPtr ctxt);
42038 # 1086 "/usr/include/libxml2/libxml/parser.h"
42039 typedef enum {
42040 XML_PARSE_RECOVER = 1<<0,
42041 XML_PARSE_NOENT = 1<<1,
42042 XML_PARSE_DTDLOAD = 1<<2,
42043 XML_PARSE_DTDATTR = 1<<3,
42044 XML_PARSE_DTDVALID = 1<<4,
42045 XML_PARSE_NOERROR = 1<<5,
42046 XML_PARSE_NOWARNING = 1<<6,
42047 XML_PARSE_PEDANTIC = 1<<7,
42048 XML_PARSE_NOBLANKS = 1<<8,
42049 XML_PARSE_SAX1 = 1<<9,
42050 XML_PARSE_XINCLUDE = 1<<10,
42051 XML_PARSE_NONET = 1<<11,
42052 XML_PARSE_NODICT = 1<<12,
42053 XML_PARSE_NSCLEAN = 1<<13,
42054 XML_PARSE_NOCDATA = 1<<14,
42055 XML_PARSE_NOXINCNODE= 1<<15,
42056 XML_PARSE_COMPACT = 1<<16,
42057
42058
42059 XML_PARSE_OLD10 = 1<<17,
42060 XML_PARSE_NOBASEFIX = 1<<18,
42061 XML_PARSE_HUGE = 1<<19,
42062 XML_PARSE_OLDSAX = 1<<20
42063 } xmlParserOption;
42064
42065 void
42066 xmlCtxtReset (xmlParserCtxtPtr ctxt);
42067 int
42068 xmlCtxtResetPush (xmlParserCtxtPtr ctxt,
42069 const char *chunk,
42070 int size,
42071 const char *filename,
42072 const char *encoding);
42073 int
42074 xmlCtxtUseOptions (xmlParserCtxtPtr ctxt,
42075 int options);
42076 xmlDocPtr
42077 xmlReadDoc (const xmlChar *cur,
42078 const char *URL,
42079 const char *encoding,
42080 int options);
42081 xmlDocPtr
42082 xmlReadFile (const char *URL,
42083 const char *encoding,
42084 int options);
42085 xmlDocPtr
42086 xmlReadMemory (const char *buffer,
42087 int size,
42088 const char *URL,
42089 const char *encoding,
42090 int options);
42091 xmlDocPtr
42092 xmlReadFd (int fd,
42093 const char *URL,
42094 const char *encoding,
42095 int options);
42096 xmlDocPtr
42097 xmlReadIO (xmlInputReadCallback ioread,
42098 xmlInputCloseCallback ioclose,
42099 void *ioctx,
42100 const char *URL,
42101 const char *encoding,
42102 int options);
42103 xmlDocPtr
42104 xmlCtxtReadDoc (xmlParserCtxtPtr ctxt,
42105 const xmlChar *cur,
42106 const char *URL,
42107 const char *encoding,
42108 int options);
42109 xmlDocPtr
42110 xmlCtxtReadFile (xmlParserCtxtPtr ctxt,
42111 const char *filename,
42112 const char *encoding,
42113 int options);
42114 xmlDocPtr
42115 xmlCtxtReadMemory (xmlParserCtxtPtr ctxt,
42116 const char *buffer,
42117 int size,
42118 const char *URL,
42119 const char *encoding,
42120 int options);
42121 xmlDocPtr
42122 xmlCtxtReadFd (xmlParserCtxtPtr ctxt,
42123 int fd,
42124 const char *URL,
42125 const char *encoding,
42126 int options);
42127 xmlDocPtr
42128 xmlCtxtReadIO (xmlParserCtxtPtr ctxt,
42129 xmlInputReadCallback ioread,
42130 xmlInputCloseCallback ioclose,
42131 void *ioctx,
42132 const char *URL,
42133 const char *encoding,
42134 int options);
42135 # 1193 "/usr/include/libxml2/libxml/parser.h"
42136 typedef enum {
42137 XML_WITH_THREAD = 1,
42138 XML_WITH_TREE = 2,
42139 XML_WITH_OUTPUT = 3,
42140 XML_WITH_PUSH = 4,
42141 XML_WITH_READER = 5,
42142 XML_WITH_PATTERN = 6,
42143 XML_WITH_WRITER = 7,
42144 XML_WITH_SAX1 = 8,
42145 XML_WITH_FTP = 9,
42146 XML_WITH_HTTP = 10,
42147 XML_WITH_VALID = 11,
42148 XML_WITH_HTML = 12,
42149 XML_WITH_LEGACY = 13,
42150 XML_WITH_C14N = 14,
42151 XML_WITH_CATALOG = 15,
42152 XML_WITH_XPATH = 16,
42153 XML_WITH_XPTR = 17,
42154 XML_WITH_XINCLUDE = 18,
42155 XML_WITH_ICONV = 19,
42156 XML_WITH_ISO8859X = 20,
42157 XML_WITH_UNICODE = 21,
42158 XML_WITH_REGEXP = 22,
42159 XML_WITH_AUTOMATA = 23,
42160 XML_WITH_EXPR = 24,
42161 XML_WITH_SCHEMAS = 25,
42162 XML_WITH_SCHEMATRON = 26,
42163 XML_WITH_MODULES = 27,
42164 XML_WITH_DEBUG = 28,
42165 XML_WITH_DEBUG_MEM = 29,
42166 XML_WITH_DEBUG_RUN = 30,
42167 XML_WITH_ZLIB = 31,
42168 XML_WITH_ICU = 32,
42169 XML_WITH_NONE = 99999
42170 } xmlFeature;
42171
42172 int
42173 xmlHasFeature (xmlFeature feature);
42174
42175
42176 }
42177 # 37 "../fwbuilder/FWObject.h" 2
42178
42179
42180
42181 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/fstream" 1 3
42182 # 36 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/fstream" 3
42183 #define _GLIBCXX_FSTREAM 1
42184
42185
42186 # 39 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/fstream" 3
42187
42188
42189
42190 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/codecvt.h" 1 3
42191 # 38 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/codecvt.h" 3
42192 #define _CODECVT_H 1
42193
42194
42195 # 41 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/codecvt.h" 3
42196
42197 namespace std __attribute__ ((__visibility__ ("default"))) {
42198
42199
42200 class codecvt_base
42201 {
42202 public:
42203 enum result
42204 {
42205 ok,
42206 partial,
42207 error,
42208 noconv
42209 };
42210 };
42211 # 66 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/codecvt.h" 3
42212 template<typename _InternT, typename _ExternT, typename _StateT>
42213 class __codecvt_abstract_base
42214 : public locale::facet, public codecvt_base
42215 {
42216 public:
42217
42218 typedef codecvt_base::result result;
42219 typedef _InternT intern_type;
42220 typedef _ExternT extern_type;
42221 typedef _StateT state_type;
42222 # 114 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/codecvt.h" 3
42223 result
42224 out(state_type& __state, const intern_type* __from,
42225 const intern_type* __from_end, const intern_type*& __from_next,
42226 extern_type* __to, extern_type* __to_end,
42227 extern_type*& __to_next) const
42228 {
42229 return this->do_out(__state, __from, __from_end, __from_next,
42230 __to, __to_end, __to_next);
42231 }
42232 # 153 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/codecvt.h" 3
42233 result
42234 unshift(state_type& __state, extern_type* __to, extern_type* __to_end,
42235 extern_type*& __to_next) const
42236 { return this->do_unshift(__state, __to,__to_end,__to_next); }
42237 # 194 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/codecvt.h" 3
42238 result
42239 in(state_type& __state, const extern_type* __from,
42240 const extern_type* __from_end, const extern_type*& __from_next,
42241 intern_type* __to, intern_type* __to_end,
42242 intern_type*& __to_next) const
42243 {
42244 return this->do_in(__state, __from, __from_end, __from_next,
42245 __to, __to_end, __to_next);
42246 }
42247
42248 int
42249 encoding() const throw()
42250 { return this->do_encoding(); }
42251
42252 bool
42253 always_noconv() const throw()
42254 { return this->do_always_noconv(); }
42255
42256 int
42257 length(state_type& __state, const extern_type* __from,
42258 const extern_type* __end, size_t __max) const
42259 { return this->do_length(__state, __from, __end, __max); }
42260
42261 int
42262 max_length() const throw()
42263 { return this->do_max_length(); }
42264
42265 protected:
42266 explicit
42267 __codecvt_abstract_base(size_t __refs = 0) : locale::facet(__refs) { }
42268
42269 virtual
42270 ~__codecvt_abstract_base() { }
42271 # 235 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/codecvt.h" 3
42272 virtual result
42273 do_out(state_type& __state, const intern_type* __from,
42274 const intern_type* __from_end, const intern_type*& __from_next,
42275 extern_type* __to, extern_type* __to_end,
42276 extern_type*& __to_next) const = 0;
42277
42278 virtual result
42279 do_unshift(state_type& __state, extern_type* __to,
42280 extern_type* __to_end, extern_type*& __to_next) const = 0;
42281
42282 virtual result
42283 do_in(state_type& __state, const extern_type* __from,
42284 const extern_type* __from_end, const extern_type*& __from_next,
42285 intern_type* __to, intern_type* __to_end,
42286 intern_type*& __to_next) const = 0;
42287
42288 virtual int
42289 do_encoding() const throw() = 0;
42290
42291 virtual bool
42292 do_always_noconv() const throw() = 0;
42293
42294 virtual int
42295 do_length(state_type&, const extern_type* __from,
42296 const extern_type* __end, size_t __max) const = 0;
42297
42298 virtual int
42299 do_max_length() const throw() = 0;
42300 };
42301 # 274 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/codecvt.h" 3
42302 template<typename _InternT, typename _ExternT, typename _StateT>
42303 class codecvt
42304 : public __codecvt_abstract_base<_InternT, _ExternT, _StateT>
42305 {
42306 public:
42307
42308 typedef codecvt_base::result result;
42309 typedef _InternT intern_type;
42310 typedef _ExternT extern_type;
42311 typedef _StateT state_type;
42312
42313 protected:
42314 __c_locale _M_c_locale_codecvt;
42315
42316 public:
42317 static locale::id id;
42318
42319 explicit
42320 codecvt(size_t __refs = 0)
42321 : __codecvt_abstract_base<_InternT, _ExternT, _StateT> (__refs) { }
42322
42323 explicit
42324 codecvt(__c_locale __cloc, size_t __refs = 0);
42325
42326 protected:
42327 virtual
42328 ~codecvt() { }
42329
42330 virtual result
42331 do_out(state_type& __state, const intern_type* __from,
42332 const intern_type* __from_end, const intern_type*& __from_next,
42333 extern_type* __to, extern_type* __to_end,
42334 extern_type*& __to_next) const;
42335
42336 virtual result
42337 do_unshift(state_type& __state, extern_type* __to,
42338 extern_type* __to_end, extern_type*& __to_next) const;
42339
42340 virtual result
42341 do_in(state_type& __state, const extern_type* __from,
42342 const extern_type* __from_end, const extern_type*& __from_next,
42343 intern_type* __to, intern_type* __to_end,
42344 intern_type*& __to_next) const;
42345
42346 virtual int
42347 do_encoding() const throw();
42348
42349 virtual bool
42350 do_always_noconv() const throw();
42351
42352 virtual int
42353 do_length(state_type&, const extern_type* __from,
42354 const extern_type* __end, size_t __max) const;
42355
42356 virtual int
42357 do_max_length() const throw();
42358 };
42359
42360 template<typename _InternT, typename _ExternT, typename _StateT>
42361 locale::id codecvt<_InternT, _ExternT, _StateT>::id;
42362
42363
42364 template<>
42365 class codecvt<char, char, mbstate_t>
42366 : public __codecvt_abstract_base<char, char, mbstate_t>
42367 {
42368 public:
42369
42370 typedef char intern_type;
42371 typedef char extern_type;
42372 typedef mbstate_t state_type;
42373
42374 protected:
42375 __c_locale _M_c_locale_codecvt;
42376
42377 public:
42378 static locale::id id;
42379
42380 explicit
42381 codecvt(size_t __refs = 0);
42382
42383 explicit
42384 codecvt(__c_locale __cloc, size_t __refs = 0);
42385
42386 protected:
42387 virtual
42388 ~codecvt();
42389
42390 virtual result
42391 do_out(state_type& __state, const intern_type* __from,
42392 const intern_type* __from_end, const intern_type*& __from_next,
42393 extern_type* __to, extern_type* __to_end,
42394 extern_type*& __to_next) const;
42395
42396 virtual result
42397 do_unshift(state_type& __state, extern_type* __to,
42398 extern_type* __to_end, extern_type*& __to_next) const;
42399
42400 virtual result
42401 do_in(state_type& __state, const extern_type* __from,
42402 const extern_type* __from_end, const extern_type*& __from_next,
42403 intern_type* __to, intern_type* __to_end,
42404 intern_type*& __to_next) const;
42405
42406 virtual int
42407 do_encoding() const throw();
42408
42409 virtual bool
42410 do_always_noconv() const throw();
42411
42412 virtual int
42413 do_length(state_type&, const extern_type* __from,
42414 const extern_type* __end, size_t __max) const;
42415
42416 virtual int
42417 do_max_length() const throw();
42418 };
42419
42420
42421
42422 template<>
42423 class codecvt<wchar_t, char, mbstate_t>
42424 : public __codecvt_abstract_base<wchar_t, char, mbstate_t>
42425 {
42426 public:
42427
42428 typedef wchar_t intern_type;
42429 typedef char extern_type;
42430 typedef mbstate_t state_type;
42431
42432 protected:
42433 __c_locale _M_c_locale_codecvt;
42434
42435 public:
42436 static locale::id id;
42437
42438 explicit
42439 codecvt(size_t __refs = 0);
42440
42441 explicit
42442 codecvt(__c_locale __cloc, size_t __refs = 0);
42443
42444 protected:
42445 virtual
42446 ~codecvt();
42447
42448 virtual result
42449 do_out(state_type& __state, const intern_type* __from,
42450 const intern_type* __from_end, const intern_type*& __from_next,
42451 extern_type* __to, extern_type* __to_end,
42452 extern_type*& __to_next) const;
42453
42454 virtual result
42455 do_unshift(state_type& __state,
42456 extern_type* __to, extern_type* __to_end,
42457 extern_type*& __to_next) const;
42458
42459 virtual result
42460 do_in(state_type& __state,
42461 const extern_type* __from, const extern_type* __from_end,
42462 const extern_type*& __from_next,
42463 intern_type* __to, intern_type* __to_end,
42464 intern_type*& __to_next) const;
42465
42466 virtual
42467 int do_encoding() const throw();
42468
42469 virtual
42470 bool do_always_noconv() const throw();
42471
42472 virtual
42473 int do_length(state_type&, const extern_type* __from,
42474 const extern_type* __end, size_t __max) const;
42475
42476 virtual int
42477 do_max_length() const throw();
42478 };
42479
42480
42481
42482 template<typename _InternT, typename _ExternT, typename _StateT>
42483 class codecvt_byname : public codecvt<_InternT, _ExternT, _StateT>
42484 {
42485 public:
42486 explicit
42487 codecvt_byname(const char* __s, size_t __refs = 0)
42488 : codecvt<_InternT, _ExternT, _StateT>(__refs)
42489 {
42490 if (__builtin_strcmp(__s, "C") != 0
42491 && __builtin_strcmp(__s, "POSIX") != 0)
42492 {
42493 this->_S_destroy_c_locale(this->_M_c_locale_codecvt);
42494 this->_S_create_c_locale(this->_M_c_locale_codecvt, __s);
42495 }
42496 }
42497
42498 protected:
42499 virtual
42500 ~codecvt_byname() { }
42501 };
42502
42503
42504
42505
42506
42507 extern template class codecvt_byname<char, char, mbstate_t>;
42508
42509 extern template
42510 const codecvt<char, char, mbstate_t>&
42511 use_facet<codecvt<char, char, mbstate_t> >(const locale&);
42512
42513 extern template
42514 bool
42515 has_facet<codecvt<char, char, mbstate_t> >(const locale&);
42516
42517
42518 extern template class codecvt_byname<wchar_t, char, mbstate_t>;
42519
42520 extern template
42521 const codecvt<wchar_t, char, mbstate_t>&
42522 use_facet<codecvt<wchar_t, char, mbstate_t> >(const locale&);
42523
42524 extern template
42525 bool
42526 has_facet<codecvt<wchar_t, char, mbstate_t> >(const locale&);
42527
42528
42529
42530 }
42531 # 43 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/fstream" 2 3
42532 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/cstdio" 1 3
42533 # 41 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/cstdio" 3
42534
42535 # 42 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/cstdio" 3
42536
42537
42538 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/cstddef" 1 3
42539 # 41 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/cstddef" 3
42540
42541 # 42 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/cstddef" 3
42542
42543
42544 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 1 3 4
42545 # 45 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/cstddef" 2 3
42546 # 45 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/cstdio" 2 3
42547
42548
42549
42550 #define _GLIBCXX_CSTDIO 1
42551
42552
42553 #undef clearerr
42554 #undef fclose
42555 #undef feof
42556 #undef ferror
42557 #undef fflush
42558 #undef fgetc
42559 #undef fgetpos
42560 #undef fgets
42561 #undef fopen
42562 #undef fprintf
42563 #undef fputc
42564 #undef fputs
42565 #undef fread
42566 #undef freopen
42567 #undef fscanf
42568 #undef fseek
42569 #undef fsetpos
42570 #undef ftell
42571 #undef fwrite
42572 #undef getc
42573 #undef getchar
42574 #undef gets
42575 #undef perror
42576 #undef printf
42577 #undef putc
42578 #undef putchar
42579 #undef puts
42580 #undef remove
42581 #undef rename
42582 #undef rewind
42583 #undef scanf
42584 #undef setbuf
42585 #undef setvbuf
42586 #undef sprintf
42587 #undef sscanf
42588 #undef tmpfile
42589 #undef tmpnam
42590 #undef ungetc
42591 #undef vfprintf
42592 #undef vprintf
42593 #undef vsprintf
42594
42595 namespace std __attribute__ ((__visibility__ ("default"))) {
42596
42597 using ::FILE;
42598 using ::fpos_t;
42599
42600 using ::clearerr;
42601 using ::fclose;
42602 using ::feof;
42603 using ::ferror;
42604 using ::fflush;
42605 using ::fgetc;
42606 using ::fgetpos;
42607 using ::fgets;
42608 using ::fopen;
42609 using ::fprintf;
42610 using ::fputc;
42611 using ::fputs;
42612 using ::fread;
42613 using ::freopen;
42614 using ::fscanf;
42615 using ::fseek;
42616 using ::fsetpos;
42617 using ::ftell;
42618 using ::fwrite;
42619 using ::getc;
42620 using ::getchar;
42621 using ::gets;
42622 using ::perror;
42623 using ::printf;
42624 using ::putc;
42625 using ::putchar;
42626 using ::puts;
42627 using ::remove;
42628 using ::rename;
42629 using ::rewind;
42630 using ::scanf;
42631 using ::setbuf;
42632 using ::setvbuf;
42633 using ::sprintf;
42634 using ::sscanf;
42635 using ::tmpfile;
42636 using ::tmpnam;
42637 using ::ungetc;
42638 using ::vfprintf;
42639 using ::vprintf;
42640 using ::vsprintf;
42641
42642 }
42643
42644
42645
42646 #undef snprintf
42647 #undef vfscanf
42648 #undef vscanf
42649 #undef vsnprintf
42650 #undef vsscanf
42651
42652 namespace __gnu_cxx __attribute__ ((__visibility__ ("default"))) {
42653 # 167 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/cstdio" 3
42654 using ::snprintf;
42655 using ::vfscanf;
42656 using ::vscanf;
42657 using ::vsnprintf;
42658 using ::vsscanf;
42659
42660
42661 }
42662
42663 namespace std __attribute__ ((__visibility__ ("default"))) {
42664
42665 using ::__gnu_cxx::snprintf;
42666 using ::__gnu_cxx::vfscanf;
42667 using ::__gnu_cxx::vscanf;
42668 using ::__gnu_cxx::vsnprintf;
42669 using ::__gnu_cxx::vsscanf;
42670
42671 }
42672 # 44 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/fstream" 2 3
42673 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/x86_64-pc-linux-gnu/bits/basic_file.h" 1 3
42674 # 36 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/x86_64-pc-linux-gnu/bits/basic_file.h" 3
42675 #define _GLIBCXX_BASIC_FILE_STDIO_H 1
42676
42677
42678 # 39 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/x86_64-pc-linux-gnu/bits/basic_file.h" 3
42679
42680
42681 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/x86_64-pc-linux-gnu/bits/c++io.h" 1 3
42682 # 34 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/x86_64-pc-linux-gnu/bits/c++io.h" 3
42683 #define _GLIBCXX_CXX_IO_H 1
42684
42685 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/cstdio" 1 3
42686 # 41 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/cstdio" 3
42687
42688 # 42 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/cstdio" 3
42689
42690
42691 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/cstddef" 1 3
42692 # 41 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/cstddef" 3
42693
42694 # 42 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/cstddef" 3
42695
42696
42697 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 1 3 4
42698 # 45 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/cstddef" 2 3
42699 # 45 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/cstdio" 2 3
42700 # 37 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/x86_64-pc-linux-gnu/bits/c++io.h" 2 3
42701 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/cstddef" 1 3
42702 # 41 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/cstddef" 3
42703
42704 # 42 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/cstddef" 3
42705
42706
42707 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 1 3 4
42708 # 45 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/cstddef" 2 3
42709 # 38 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/x86_64-pc-linux-gnu/bits/c++io.h" 2 3
42710
42711
42712 namespace std __attribute__ ((__visibility__ ("default"))) {
42713
42714 typedef __gthread_mutex_t __c_lock;
42715
42716
42717 typedef FILE __c_file;
42718
42719 }
42720 # 42 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/x86_64-pc-linux-gnu/bits/basic_file.h" 2 3
42721
42722
42723 namespace std __attribute__ ((__visibility__ ("default"))) {
42724
42725
42726 template<typename _CharT>
42727 class __basic_file;
42728
42729
42730 template<>
42731 class __basic_file<char>
42732 {
42733
42734 __c_file* _M_cfile;
42735
42736
42737 bool _M_cfile_created;
42738
42739 public:
42740 __basic_file(__c_lock* __lock = 0) throw ();
42741
42742 __basic_file*
42743 open(const char* __name, ios_base::openmode __mode, int __prot = 0664);
42744
42745 __basic_file*
42746 sys_open(__c_file* __file, ios_base::openmode);
42747
42748 __basic_file*
42749 sys_open(int __fd, ios_base::openmode __mode) throw ();
42750
42751 __basic_file*
42752 close();
42753
42754 __attribute__ ((__pure__)) bool
42755 is_open() const throw ();
42756
42757 __attribute__ ((__pure__)) int
42758 fd() throw ();
42759
42760 __attribute__ ((__pure__)) __c_file*
42761 file() throw ();
42762
42763 ~__basic_file();
42764
42765 streamsize
42766 xsputn(const char* __s, streamsize __n);
42767
42768 streamsize
42769 xsputn_2(const char* __s1, streamsize __n1,
42770 const char* __s2, streamsize __n2);
42771
42772 streamsize
42773 xsgetn(char* __s, streamsize __n);
42774
42775 streamoff
42776 seekoff(streamoff __off, ios_base::seekdir __way) throw ();
42777
42778 int
42779 sync();
42780
42781 streamsize
42782 showmanyc();
42783 };
42784
42785 }
42786 # 45 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/fstream" 2 3
42787
42788
42789
42790
42791 namespace std __attribute__ ((__visibility__ ("default"))) {
42792 # 66 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/fstream" 3
42793 template<typename _CharT, typename _Traits>
42794 class basic_filebuf : public basic_streambuf<_CharT, _Traits>
42795 {
42796 public:
42797
42798 typedef _CharT char_type;
42799 typedef _Traits traits_type;
42800 typedef typename traits_type::int_type int_type;
42801 typedef typename traits_type::pos_type pos_type;
42802 typedef typename traits_type::off_type off_type;
42803
42804 typedef basic_streambuf<char_type, traits_type> __streambuf_type;
42805 typedef basic_filebuf<char_type, traits_type> __filebuf_type;
42806 typedef __basic_file<char> __file_type;
42807 typedef typename traits_type::state_type __state_type;
42808 typedef codecvt<char_type, char, __state_type> __codecvt_type;
42809
42810 friend class ios_base;
42811
42812 protected:
42813
42814
42815 __c_lock _M_lock;
42816
42817
42818 __file_type _M_file;
42819
42820
42821 ios_base::openmode _M_mode;
42822
42823
42824 __state_type _M_state_beg;
42825
42826
42827
42828
42829 __state_type _M_state_cur;
42830
42831
42832
42833 __state_type _M_state_last;
42834
42835
42836 char_type* _M_buf;
42837
42838
42839
42840
42841
42842
42843 size_t _M_buf_size;
42844
42845
42846 bool _M_buf_allocated;
42847 # 128 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/fstream" 3
42848 bool _M_reading;
42849 bool _M_writing;
42850
42851
42852
42853
42854
42855
42856
42857 char_type _M_pback;
42858 char_type* _M_pback_cur_save;
42859 char_type* _M_pback_end_save;
42860 bool _M_pback_init;
42861
42862
42863
42864 const __codecvt_type* _M_codecvt;
42865
42866
42867
42868
42869
42870
42871 char* _M_ext_buf;
42872
42873
42874
42875
42876 streamsize _M_ext_buf_size;
42877
42878
42879
42880
42881
42882
42883 const char* _M_ext_next;
42884 char* _M_ext_end;
42885
42886
42887
42888
42889
42890
42891 void
42892 _M_create_pback()
42893 {
42894 if (!_M_pback_init)
42895 {
42896 _M_pback_cur_save = this->gptr();
42897 _M_pback_end_save = this->egptr();
42898 this->setg(&_M_pback, &_M_pback, &_M_pback + 1);
42899 _M_pback_init = true;
42900 }
42901 }
42902
42903
42904
42905
42906
42907
42908 void
42909 _M_destroy_pback() throw()
42910 {
42911 if (_M_pback_init)
42912 {
42913
42914 _M_pback_cur_save += this->gptr() != this->eback();
42915 this->setg(_M_buf, _M_pback_cur_save, _M_pback_end_save);
42916 _M_pback_init = false;
42917 }
42918 }
42919
42920 public:
42921
42922
42923
42924
42925
42926
42927
42928 basic_filebuf();
42929
42930
42931
42932
42933 virtual
42934 ~basic_filebuf()
42935 { this->close(); }
42936
42937
42938
42939
42940
42941 bool
42942 is_open() const throw()
42943 { return _M_file.is_open(); }
42944 # 264 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/fstream" 3
42945 __filebuf_type*
42946 open(const char* __s, ios_base::openmode __mode);
42947 # 291 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/fstream" 3
42948 __filebuf_type*
42949 close();
42950
42951 protected:
42952 void
42953 _M_allocate_internal_buffer();
42954
42955 void
42956 _M_destroy_internal_buffer() throw();
42957
42958
42959 virtual streamsize
42960 showmanyc();
42961
42962
42963
42964
42965
42966
42967 virtual int_type
42968 underflow();
42969
42970 virtual int_type
42971 pbackfail(int_type __c = _Traits::eof());
42972 # 323 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/fstream" 3
42973 virtual int_type
42974 overflow(int_type __c = _Traits::eof());
42975
42976
42977
42978 bool
42979 _M_convert_to_external(char_type*, streamsize);
42980 # 343 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/fstream" 3
42981 virtual __streambuf_type*
42982 setbuf(char_type* __s, streamsize __n);
42983
42984 virtual pos_type
42985 seekoff(off_type __off, ios_base::seekdir __way,
42986 ios_base::openmode __mode = ios_base::in | ios_base::out);
42987
42988 virtual pos_type
42989 seekpos(pos_type __pos,
42990 ios_base::openmode __mode = ios_base::in | ios_base::out);
42991
42992
42993 pos_type
42994 _M_seek(off_type __off, ios_base::seekdir __way, __state_type __state);
42995
42996 virtual int
42997 sync();
42998
42999 virtual void
43000 imbue(const locale& __loc);
43001
43002 virtual streamsize
43003 xsgetn(char_type* __s, streamsize __n);
43004
43005 virtual streamsize
43006 xsputn(const char_type* __s, streamsize __n);
43007
43008
43009 bool
43010 _M_terminate_output();
43011 # 386 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/fstream" 3
43012 void
43013 _M_set_buffer(streamsize __off)
43014 {
43015 const bool __testin = _M_mode & ios_base::in;
43016 const bool __testout = _M_mode & ios_base::out;
43017
43018 if (__testin && __off > 0)
43019 this->setg(_M_buf, _M_buf, _M_buf + __off);
43020 else
43021 this->setg(_M_buf, _M_buf, _M_buf);
43022
43023 if (__testout && __off == 0 && _M_buf_size > 1 )
43024 this->setp(_M_buf, _M_buf + _M_buf_size - 1);
43025 else
43026 this->setp(__null, __null);
43027 }
43028 };
43029 # 414 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/fstream" 3
43030 template<typename _CharT, typename _Traits>
43031 class basic_ifstream : public basic_istream<_CharT, _Traits>
43032 {
43033 public:
43034
43035 typedef _CharT char_type;
43036 typedef _Traits traits_type;
43037 typedef typename traits_type::int_type int_type;
43038 typedef typename traits_type::pos_type pos_type;
43039 typedef typename traits_type::off_type off_type;
43040
43041
43042 typedef basic_filebuf<char_type, traits_type> __filebuf_type;
43043 typedef basic_istream<char_type, traits_type> __istream_type;
43044
43045 private:
43046 __filebuf_type _M_filebuf;
43047
43048 public:
43049 # 441 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/fstream" 3
43050 basic_ifstream() : __istream_type(), _M_filebuf()
43051 { this->init(&_M_filebuf); }
43052 # 454 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/fstream" 3
43053 explicit
43054 basic_ifstream(const char* __s, ios_base::openmode __mode = ios_base::in)
43055 : __istream_type(), _M_filebuf()
43056 {
43057 this->init(&_M_filebuf);
43058 this->open(__s, __mode);
43059 }
43060 # 486 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/fstream" 3
43061 ~basic_ifstream()
43062 { }
43063 # 496 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/fstream" 3
43064 __filebuf_type*
43065 rdbuf() const
43066 { return const_cast<__filebuf_type*>(&_M_filebuf); }
43067
43068
43069
43070
43071
43072 bool
43073 is_open()
43074 { return _M_filebuf.is_open(); }
43075
43076
43077
43078 bool
43079 is_open() const
43080 { return _M_filebuf.is_open(); }
43081 # 525 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/fstream" 3
43082 void
43083 open(const char* __s, ios_base::openmode __mode = ios_base::in)
43084 {
43085 if (!_M_filebuf.open(__s, __mode | ios_base::in))
43086 this->setstate(ios_base::failbit);
43087 else
43088
43089
43090 this->clear();
43091 }
43092 # 563 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/fstream" 3
43093 void
43094 close()
43095 {
43096 if (!_M_filebuf.close())
43097 this->setstate(ios_base::failbit);
43098 }
43099 };
43100 # 582 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/fstream" 3
43101 template<typename _CharT, typename _Traits>
43102 class basic_ofstream : public basic_ostream<_CharT,_Traits>
43103 {
43104 public:
43105
43106 typedef _CharT char_type;
43107 typedef _Traits traits_type;
43108 typedef typename traits_type::int_type int_type;
43109 typedef typename traits_type::pos_type pos_type;
43110 typedef typename traits_type::off_type off_type;
43111
43112
43113 typedef basic_filebuf<char_type, traits_type> __filebuf_type;
43114 typedef basic_ostream<char_type, traits_type> __ostream_type;
43115
43116 private:
43117 __filebuf_type _M_filebuf;
43118
43119 public:
43120 # 609 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/fstream" 3
43121 basic_ofstream(): __ostream_type(), _M_filebuf()
43122 { this->init(&_M_filebuf); }
43123 # 623 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/fstream" 3
43124 explicit
43125 basic_ofstream(const char* __s,
43126 ios_base::openmode __mode = ios_base::out|ios_base::trunc)
43127 : __ostream_type(), _M_filebuf()
43128 {
43129 this->init(&_M_filebuf);
43130 this->open(__s, __mode);
43131 }
43132 # 657 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/fstream" 3
43133 ~basic_ofstream()
43134 { }
43135 # 667 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/fstream" 3
43136 __filebuf_type*
43137 rdbuf() const
43138 { return const_cast<__filebuf_type*>(&_M_filebuf); }
43139
43140
43141
43142
43143
43144 bool
43145 is_open()
43146 { return _M_filebuf.is_open(); }
43147
43148
43149
43150 bool
43151 is_open() const
43152 { return _M_filebuf.is_open(); }
43153 # 696 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/fstream" 3
43154 void
43155 open(const char* __s,
43156 ios_base::openmode __mode = ios_base::out | ios_base::trunc)
43157 {
43158 if (!_M_filebuf.open(__s, __mode | ios_base::out))
43159 this->setstate(ios_base::failbit);
43160 else
43161
43162
43163 this->clear();
43164 }
43165 # 736 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/fstream" 3
43166 void
43167 close()
43168 {
43169 if (!_M_filebuf.close())
43170 this->setstate(ios_base::failbit);
43171 }
43172 };
43173 # 755 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/fstream" 3
43174 template<typename _CharT, typename _Traits>
43175 class basic_fstream : public basic_iostream<_CharT, _Traits>
43176 {
43177 public:
43178
43179 typedef _CharT char_type;
43180 typedef _Traits traits_type;
43181 typedef typename traits_type::int_type int_type;
43182 typedef typename traits_type::pos_type pos_type;
43183 typedef typename traits_type::off_type off_type;
43184
43185
43186 typedef basic_filebuf<char_type, traits_type> __filebuf_type;
43187 typedef basic_ios<char_type, traits_type> __ios_type;
43188 typedef basic_iostream<char_type, traits_type> __iostream_type;
43189
43190 private:
43191 __filebuf_type _M_filebuf;
43192
43193 public:
43194 # 783 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/fstream" 3
43195 basic_fstream()
43196 : __iostream_type(), _M_filebuf()
43197 { this->init(&_M_filebuf); }
43198 # 795 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/fstream" 3
43199 explicit
43200 basic_fstream(const char* __s,
43201 ios_base::openmode __mode = ios_base::in | ios_base::out)
43202 : __iostream_type(__null), _M_filebuf()
43203 {
43204 this->init(&_M_filebuf);
43205 this->open(__s, __mode);
43206 }
43207 # 826 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/fstream" 3
43208 ~basic_fstream()
43209 { }
43210 # 836 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/fstream" 3
43211 __filebuf_type*
43212 rdbuf() const
43213 { return const_cast<__filebuf_type*>(&_M_filebuf); }
43214
43215
43216
43217
43218
43219 bool
43220 is_open()
43221 { return _M_filebuf.is_open(); }
43222
43223
43224
43225 bool
43226 is_open() const
43227 { return _M_filebuf.is_open(); }
43228 # 865 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/fstream" 3
43229 void
43230 open(const char* __s,
43231 ios_base::openmode __mode = ios_base::in | ios_base::out)
43232 {
43233 if (!_M_filebuf.open(__s, __mode))
43234 this->setstate(ios_base::failbit);
43235 else
43236
43237
43238 this->clear();
43239 }
43240 # 905 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/fstream" 3
43241 void
43242 close()
43243 {
43244 if (!_M_filebuf.close())
43245 this->setstate(ios_base::failbit);
43246 }
43247 };
43248
43249 }
43250
43251
43252 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/fstream.tcc" 1 3
43253 # 37 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/fstream.tcc" 3
43254 #define _FSTREAM_TCC 1
43255
43256
43257 # 40 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/fstream.tcc" 3
43258
43259
43260
43261 namespace std __attribute__ ((__visibility__ ("default"))) {
43262
43263 template<typename _CharT, typename _Traits>
43264 void
43265 basic_filebuf<_CharT, _Traits>::
43266 _M_allocate_internal_buffer()
43267 {
43268
43269
43270 if (!_M_buf_allocated && !_M_buf)
43271 {
43272 _M_buf = new char_type[_M_buf_size];
43273 _M_buf_allocated = true;
43274 }
43275 }
43276
43277 template<typename _CharT, typename _Traits>
43278 void
43279 basic_filebuf<_CharT, _Traits>::
43280 _M_destroy_internal_buffer() throw()
43281 {
43282 if (_M_buf_allocated)
43283 {
43284 delete [] _M_buf;
43285 _M_buf = __null;
43286 _M_buf_allocated = false;
43287 }
43288 delete [] _M_ext_buf;
43289 _M_ext_buf = __null;
43290 _M_ext_buf_size = 0;
43291 _M_ext_next = __null;
43292 _M_ext_end = __null;
43293 }
43294
43295 template<typename _CharT, typename _Traits>
43296 basic_filebuf<_CharT, _Traits>::
43297 basic_filebuf() : __streambuf_type(), _M_lock(), _M_file(&_M_lock),
43298 _M_mode(ios_base::openmode(0)), _M_state_beg(), _M_state_cur(),
43299 _M_state_last(), _M_buf(__null), _M_buf_size(8192),
43300 _M_buf_allocated(false), _M_reading(false), _M_writing(false), _M_pback(),
43301 _M_pback_cur_save(0), _M_pback_end_save(0), _M_pback_init(false),
43302 _M_codecvt(0), _M_ext_buf(0), _M_ext_buf_size(0), _M_ext_next(0),
43303 _M_ext_end(0)
43304 {
43305 if (has_facet<__codecvt_type>(this->_M_buf_locale))
43306 _M_codecvt = &use_facet<__codecvt_type>(this->_M_buf_locale);
43307 }
43308
43309 template<typename _CharT, typename _Traits>
43310 typename basic_filebuf<_CharT, _Traits>::__filebuf_type*
43311 basic_filebuf<_CharT, _Traits>::
43312 open(const char* __s, ios_base::openmode __mode)
43313 {
43314 __filebuf_type *__ret = __null;
43315 if (!this->is_open())
43316 {
43317 _M_file.open(__s, __mode);
43318 if (this->is_open())
43319 {
43320 _M_allocate_internal_buffer();
43321 _M_mode = __mode;
43322
43323
43324 _M_reading = false;
43325 _M_writing = false;
43326 _M_set_buffer(-1);
43327
43328
43329 _M_state_last = _M_state_cur = _M_state_beg;
43330
43331
43332 if ((__mode & ios_base::ate)
43333 && this->seekoff(0, ios_base::end, __mode)
43334 == pos_type(off_type(-1)))
43335 this->close();
43336 else
43337 __ret = this;
43338 }
43339 }
43340 return __ret;
43341 }
43342
43343 template<typename _CharT, typename _Traits>
43344 typename basic_filebuf<_CharT, _Traits>::__filebuf_type*
43345 basic_filebuf<_CharT, _Traits>::
43346 close()
43347 {
43348 if (!this->is_open())
43349 return __null;
43350
43351 bool __testfail = false;
43352 {
43353
43354 struct __close_sentry
43355 {
43356 basic_filebuf *__fb;
43357 __close_sentry (basic_filebuf *__fbi): __fb(__fbi) { }
43358 ~__close_sentry ()
43359 {
43360 __fb->_M_mode = ios_base::openmode(0);
43361 __fb->_M_pback_init = false;
43362 __fb->_M_destroy_internal_buffer();
43363 __fb->_M_reading = false;
43364 __fb->_M_writing = false;
43365 __fb->_M_set_buffer(-1);
43366 __fb->_M_state_last = __fb->_M_state_cur = __fb->_M_state_beg;
43367 }
43368 } __cs (this);
43369
43370 try
43371 {
43372 if (!_M_terminate_output())
43373 __testfail = true;
43374 }
43375 catch(__cxxabiv1::__forced_unwind&)
43376 {
43377 _M_file.close();
43378 throw;
43379 }
43380 catch(...)
43381 { __testfail = true; }
43382 }
43383
43384 if (!_M_file.close())
43385 __testfail = true;
43386
43387 if (__testfail)
43388 return __null;
43389 else
43390 return this;
43391 }
43392
43393 template<typename _CharT, typename _Traits>
43394 streamsize
43395 basic_filebuf<_CharT, _Traits>::
43396 showmanyc()
43397 {
43398 streamsize __ret = -1;
43399 const bool __testin = _M_mode & ios_base::in;
43400 if (__testin && this->is_open())
43401 {
43402
43403
43404 __ret = this->egptr() - this->gptr();
43405
43406
43407
43408
43409
43410
43411
43412 if (__check_facet(_M_codecvt).encoding() >= 0)
43413
43414 __ret += _M_file.showmanyc() / _M_codecvt->max_length();
43415 }
43416 return __ret;
43417 }
43418
43419 template<typename _CharT, typename _Traits>
43420 typename basic_filebuf<_CharT, _Traits>::int_type
43421 basic_filebuf<_CharT, _Traits>::
43422 underflow()
43423 {
43424 int_type __ret = traits_type::eof();
43425 const bool __testin = _M_mode & ios_base::in;
43426 if (__testin && !_M_writing)
43427 {
43428
43429
43430
43431 _M_destroy_pback();
43432
43433 if (this->gptr() < this->egptr())
43434 return traits_type::to_int_type(*this->gptr());
43435
43436
43437 const size_t __buflen = _M_buf_size > 1 ? _M_buf_size - 1 : 1;
43438
43439
43440 bool __got_eof = false;
43441
43442 streamsize __ilen = 0;
43443 codecvt_base::result __r = codecvt_base::ok;
43444 if (__check_facet(_M_codecvt).always_noconv())
43445 {
43446 __ilen = _M_file.xsgetn(reinterpret_cast<char*>(this->eback()),
43447 __buflen);
43448 if (__ilen == 0)
43449 __got_eof = true;
43450 }
43451 else
43452 {
43453
43454
43455 const int __enc = _M_codecvt->encoding();
43456 streamsize __blen;
43457 streamsize __rlen;
43458 if (__enc > 0)
43459 __blen = __rlen = __buflen * __enc;
43460 else
43461 {
43462 __blen = __buflen + _M_codecvt->max_length() - 1;
43463 __rlen = __buflen;
43464 }
43465 const streamsize __remainder = _M_ext_end - _M_ext_next;
43466 __rlen = __rlen > __remainder ? __rlen - __remainder : 0;
43467
43468
43469
43470 if (_M_reading && this->egptr() == this->eback() && __remainder)
43471 __rlen = 0;
43472
43473
43474
43475 if (_M_ext_buf_size < __blen)
43476 {
43477 char* __buf = new char[__blen];
43478 if (__remainder)
43479 __builtin_memcpy(__buf, _M_ext_next, __remainder);
43480
43481 delete [] _M_ext_buf;
43482 _M_ext_buf = __buf;
43483 _M_ext_buf_size = __blen;
43484 }
43485 else if (__remainder)
43486 __builtin_memmove(_M_ext_buf, _M_ext_next, __remainder);
43487
43488 _M_ext_next = _M_ext_buf;
43489 _M_ext_end = _M_ext_buf + __remainder;
43490 _M_state_last = _M_state_cur;
43491
43492 do
43493 {
43494 if (__rlen > 0)
43495 {
43496
43497
43498
43499 if (_M_ext_end - _M_ext_buf + __rlen > _M_ext_buf_size)
43500 {
43501 __throw_ios_failure(("basic_filebuf::underflow " "codecvt::max_length() " "is not valid")
43502
43503 );
43504 }
43505 streamsize __elen = _M_file.xsgetn(_M_ext_end, __rlen);
43506 if (__elen == 0)
43507 __got_eof = true;
43508 else if (__elen == -1)
43509 break;
43510 _M_ext_end += __elen;
43511 }
43512
43513 char_type* __iend = this->eback();
43514 if (_M_ext_next < _M_ext_end)
43515 __r = _M_codecvt->in(_M_state_cur, _M_ext_next,
43516 _M_ext_end, _M_ext_next,
43517 this->eback(),
43518 this->eback() + __buflen, __iend);
43519 if (__r == codecvt_base::noconv)
43520 {
43521 size_t __avail = _M_ext_end - _M_ext_buf;
43522 __ilen = std::min(__avail, __buflen);
43523 traits_type::copy(this->eback(),
43524 reinterpret_cast<char_type*>
43525 (_M_ext_buf), __ilen);
43526 _M_ext_next = _M_ext_buf + __ilen;
43527 }
43528 else
43529 __ilen = __iend - this->eback();
43530
43531
43532
43533
43534 if (__r == codecvt_base::error)
43535 break;
43536
43537 __rlen = 1;
43538 }
43539 while (__ilen == 0 && !__got_eof);
43540 }
43541
43542 if (__ilen > 0)
43543 {
43544 _M_set_buffer(__ilen);
43545 _M_reading = true;
43546 __ret = traits_type::to_int_type(*this->gptr());
43547 }
43548 else if (__got_eof)
43549 {
43550
43551
43552
43553 _M_set_buffer(-1);
43554 _M_reading = false;
43555
43556
43557 if (__r == codecvt_base::partial)
43558 __throw_ios_failure(("basic_filebuf::underflow " "incomplete character in file")
43559 );
43560 }
43561 else if (__r == codecvt_base::error)
43562 __throw_ios_failure(("basic_filebuf::underflow " "invalid byte sequence in file")
43563 );
43564 else
43565 __throw_ios_failure(("basic_filebuf::underflow " "error reading the file")
43566 );
43567 }
43568 return __ret;
43569 }
43570
43571 template<typename _CharT, typename _Traits>
43572 typename basic_filebuf<_CharT, _Traits>::int_type
43573 basic_filebuf<_CharT, _Traits>::
43574 pbackfail(int_type __i)
43575 {
43576 int_type __ret = traits_type::eof();
43577 const bool __testin = _M_mode & ios_base::in;
43578 if (__testin && !_M_writing)
43579 {
43580
43581
43582 const bool __testpb = _M_pback_init;
43583 const bool __testeof = traits_type::eq_int_type(__i, __ret);
43584 int_type __tmp;
43585 if (this->eback() < this->gptr())
43586 {
43587 this->gbump(-1);
43588 __tmp = traits_type::to_int_type(*this->gptr());
43589 }
43590 else if (this->seekoff(-1, ios_base::cur) != pos_type(off_type(-1)))
43591 {
43592 __tmp = this->underflow();
43593 if (traits_type::eq_int_type(__tmp, __ret))
43594 return __ret;
43595 }
43596 else
43597 {
43598
43599
43600
43601
43602
43603 return __ret;
43604 }
43605
43606
43607
43608 if (!__testeof && traits_type::eq_int_type(__i, __tmp))
43609 __ret = __i;
43610 else if (__testeof)
43611 __ret = traits_type::not_eof(__i);
43612 else if (!__testpb)
43613 {
43614 _M_create_pback();
43615 _M_reading = true;
43616 *this->gptr() = traits_type::to_char_type(__i);
43617 __ret = __i;
43618 }
43619 }
43620 return __ret;
43621 }
43622
43623 template<typename _CharT, typename _Traits>
43624 typename basic_filebuf<_CharT, _Traits>::int_type
43625 basic_filebuf<_CharT, _Traits>::
43626 overflow(int_type __c)
43627 {
43628 int_type __ret = traits_type::eof();
43629 const bool __testeof = traits_type::eq_int_type(__c, __ret);
43630 const bool __testout = _M_mode & ios_base::out;
43631 if (__testout && !_M_reading)
43632 {
43633 if (this->pbase() < this->pptr())
43634 {
43635
43636 if (!__testeof)
43637 {
43638 *this->pptr() = traits_type::to_char_type(__c);
43639 this->pbump(1);
43640 }
43641
43642
43643
43644 if (_M_convert_to_external(this->pbase(),
43645 this->pptr() - this->pbase()))
43646 {
43647 _M_set_buffer(0);
43648 __ret = traits_type::not_eof(__c);
43649 }
43650 }
43651 else if (_M_buf_size > 1)
43652 {
43653
43654
43655
43656 _M_set_buffer(0);
43657 _M_writing = true;
43658 if (!__testeof)
43659 {
43660 *this->pptr() = traits_type::to_char_type(__c);
43661 this->pbump(1);
43662 }
43663 __ret = traits_type::not_eof(__c);
43664 }
43665 else
43666 {
43667
43668 char_type __conv = traits_type::to_char_type(__c);
43669 if (__testeof || _M_convert_to_external(&__conv, 1))
43670 {
43671 _M_writing = true;
43672 __ret = traits_type::not_eof(__c);
43673 }
43674 }
43675 }
43676 return __ret;
43677 }
43678
43679 template<typename _CharT, typename _Traits>
43680 bool
43681 basic_filebuf<_CharT, _Traits>::
43682 _M_convert_to_external(_CharT* __ibuf, streamsize __ilen)
43683 {
43684
43685 streamsize __elen;
43686 streamsize __plen;
43687 if (__check_facet(_M_codecvt).always_noconv())
43688 {
43689 __elen = _M_file.xsputn(reinterpret_cast<char*>(__ibuf), __ilen);
43690 __plen = __ilen;
43691 }
43692 else
43693 {
43694
43695
43696 streamsize __blen = __ilen * _M_codecvt->max_length();
43697 char* __buf = static_cast<char*>(__builtin_alloca(__blen));
43698
43699 char* __bend;
43700 const char_type* __iend;
43701 codecvt_base::result __r;
43702 __r = _M_codecvt->out(_M_state_cur, __ibuf, __ibuf + __ilen,
43703 __iend, __buf, __buf + __blen, __bend);
43704
43705 if (__r == codecvt_base::ok || __r == codecvt_base::partial)
43706 __blen = __bend - __buf;
43707 else if (__r == codecvt_base::noconv)
43708 {
43709
43710 __buf = reinterpret_cast<char*>(__ibuf);
43711 __blen = __ilen;
43712 }
43713 else
43714 __throw_ios_failure(("basic_filebuf::_M_convert_to_external " "conversion error")
43715 );
43716
43717 __elen = _M_file.xsputn(__buf, __blen);
43718 __plen = __blen;
43719
43720
43721 if (__r == codecvt_base::partial && __elen == __plen)
43722 {
43723 const char_type* __iresume = __iend;
43724 streamsize __rlen = this->pptr() - __iend;
43725 __r = _M_codecvt->out(_M_state_cur, __iresume,
43726 __iresume + __rlen, __iend, __buf,
43727 __buf + __blen, __bend);
43728 if (__r != codecvt_base::error)
43729 {
43730 __rlen = __bend - __buf;
43731 __elen = _M_file.xsputn(__buf, __rlen);
43732 __plen = __rlen;
43733 }
43734 else
43735 __throw_ios_failure(("basic_filebuf::_M_convert_to_external " "conversion error")
43736 );
43737 }
43738 }
43739 return __elen == __plen;
43740 }
43741
43742 template<typename _CharT, typename _Traits>
43743 streamsize
43744 basic_filebuf<_CharT, _Traits>::
43745 xsgetn(_CharT* __s, streamsize __n)
43746 {
43747
43748 streamsize __ret = 0;
43749 if (_M_pback_init)
43750 {
43751 if (__n > 0 && this->gptr() == this->eback())
43752 {
43753 *__s++ = *this->gptr();
43754 this->gbump(1);
43755 __ret = 1;
43756 --__n;
43757 }
43758 _M_destroy_pback();
43759 }
43760
43761
43762
43763
43764 const bool __testin = _M_mode & ios_base::in;
43765 const streamsize __buflen = _M_buf_size > 1 ? _M_buf_size - 1 : 1;
43766
43767 if (__n > __buflen && __check_facet(_M_codecvt).always_noconv()
43768 && __testin && !_M_writing)
43769 {
43770
43771 const streamsize __avail = this->egptr() - this->gptr();
43772 if (__avail != 0)
43773 {
43774 if (__avail == 1)
43775 *__s = *this->gptr();
43776 else
43777 traits_type::copy(__s, this->gptr(), __avail);
43778 __s += __avail;
43779 this->gbump(__avail);
43780 __ret += __avail;
43781 __n -= __avail;
43782 }
43783
43784
43785
43786 streamsize __len;
43787 for (;;)
43788 {
43789 __len = _M_file.xsgetn(reinterpret_cast<char*>(__s),
43790 __n);
43791 if (__len == -1)
43792 __throw_ios_failure(("basic_filebuf::xsgetn " "error reading the file")
43793 );
43794 if (__len == 0)
43795 break;
43796
43797 __n -= __len;
43798 __ret += __len;
43799 if (__n == 0)
43800 break;
43801
43802 __s += __len;
43803 }
43804
43805 if (__n == 0)
43806 {
43807 _M_set_buffer(0);
43808 _M_reading = true;
43809 }
43810 else if (__len == 0)
43811 {
43812
43813
43814
43815 _M_set_buffer(-1);
43816 _M_reading = false;
43817 }
43818 }
43819 else
43820 __ret += __streambuf_type::xsgetn(__s, __n);
43821
43822 return __ret;
43823 }
43824
43825 template<typename _CharT, typename _Traits>
43826 streamsize
43827 basic_filebuf<_CharT, _Traits>::
43828 xsputn(const _CharT* __s, streamsize __n)
43829 {
43830
43831
43832
43833 streamsize __ret = 0;
43834 const bool __testout = _M_mode & ios_base::out;
43835 if (__check_facet(_M_codecvt).always_noconv()
43836 && __testout && !_M_reading)
43837 {
43838
43839 const streamsize __chunk = 1ul << 10;
43840 streamsize __bufavail = this->epptr() - this->pptr();
43841
43842
43843 if (!_M_writing && _M_buf_size > 1)
43844 __bufavail = _M_buf_size - 1;
43845
43846 const streamsize __limit = std::min(__chunk, __bufavail);
43847 if (__n >= __limit)
43848 {
43849 const streamsize __buffill = this->pptr() - this->pbase();
43850 const char* __buf = reinterpret_cast<const char*>(this->pbase());
43851 __ret = _M_file.xsputn_2(__buf, __buffill,
43852 reinterpret_cast<const char*>(__s),
43853 __n);
43854 if (__ret == __buffill + __n)
43855 {
43856 _M_set_buffer(0);
43857 _M_writing = true;
43858 }
43859 if (__ret > __buffill)
43860 __ret -= __buffill;
43861 else
43862 __ret = 0;
43863 }
43864 else
43865 __ret = __streambuf_type::xsputn(__s, __n);
43866 }
43867 else
43868 __ret = __streambuf_type::xsputn(__s, __n);
43869 return __ret;
43870 }
43871
43872 template<typename _CharT, typename _Traits>
43873 typename basic_filebuf<_CharT, _Traits>::__streambuf_type*
43874 basic_filebuf<_CharT, _Traits>::
43875 setbuf(char_type* __s, streamsize __n)
43876 {
43877 if (!this->is_open())
43878 {
43879 if (__s == 0 && __n == 0)
43880 _M_buf_size = 1;
43881 else if (__s && __n > 0)
43882 {
43883 # 673 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/fstream.tcc" 3
43884 _M_buf = __s;
43885 _M_buf_size = __n;
43886 }
43887 }
43888 return this;
43889 }
43890
43891
43892
43893
43894 template<typename _CharT, typename _Traits>
43895 typename basic_filebuf<_CharT, _Traits>::pos_type
43896 basic_filebuf<_CharT, _Traits>::
43897 seekoff(off_type __off, ios_base::seekdir __way, ios_base::openmode)
43898 {
43899 int __width = 0;
43900 if (_M_codecvt)
43901 __width = _M_codecvt->encoding();
43902 if (__width < 0)
43903 __width = 0;
43904
43905 pos_type __ret = pos_type(off_type(-1));
43906 const bool __testfail = __off != 0 && __width <= 0;
43907 if (this->is_open() && !__testfail)
43908 {
43909
43910 _M_destroy_pback();
43911
43912
43913
43914
43915
43916
43917 __state_type __state = _M_state_beg;
43918 off_type __computed_off = __off * __width;
43919 if (_M_reading && __way == ios_base::cur)
43920 {
43921 if (_M_codecvt->always_noconv())
43922 __computed_off += this->gptr() - this->egptr();
43923 else
43924 {
43925
43926
43927
43928 const int __gptr_off =
43929 _M_codecvt->length(_M_state_last, _M_ext_buf, _M_ext_next,
43930 this->gptr() - this->eback());
43931 __computed_off += _M_ext_buf + __gptr_off - _M_ext_end;
43932
43933
43934
43935 __state = _M_state_last;
43936 }
43937 }
43938 __ret = _M_seek(__computed_off, __way, __state);
43939 }
43940 return __ret;
43941 }
43942
43943
43944
43945
43946
43947 template<typename _CharT, typename _Traits>
43948 typename basic_filebuf<_CharT, _Traits>::pos_type
43949 basic_filebuf<_CharT, _Traits>::
43950 seekpos(pos_type __pos, ios_base::openmode)
43951 {
43952 pos_type __ret = pos_type(off_type(-1));
43953 if (this->is_open())
43954 {
43955
43956 _M_destroy_pback();
43957 __ret = _M_seek(off_type(__pos), ios_base::beg, __pos.state());
43958 }
43959 return __ret;
43960 }
43961
43962 template<typename _CharT, typename _Traits>
43963 typename basic_filebuf<_CharT, _Traits>::pos_type
43964 basic_filebuf<_CharT, _Traits>::
43965 _M_seek(off_type __off, ios_base::seekdir __way, __state_type __state)
43966 {
43967 pos_type __ret = pos_type(off_type(-1));
43968 if (_M_terminate_output())
43969 {
43970
43971 __ret = pos_type(_M_file.seekoff(__off, __way));
43972 if (__ret != pos_type(off_type(-1)))
43973 {
43974 _M_reading = false;
43975 _M_writing = false;
43976 _M_ext_next = _M_ext_end = _M_ext_buf;
43977 _M_set_buffer(-1);
43978 _M_state_cur = __state;
43979 __ret.state(_M_state_cur);
43980 }
43981 }
43982 return __ret;
43983 }
43984
43985 template<typename _CharT, typename _Traits>
43986 bool
43987 basic_filebuf<_CharT, _Traits>::
43988 _M_terminate_output()
43989 {
43990
43991 bool __testvalid = true;
43992 if (this->pbase() < this->pptr())
43993 {
43994 const int_type __tmp = this->overflow();
43995 if (traits_type::eq_int_type(__tmp, traits_type::eof()))
43996 __testvalid = false;
43997 }
43998
43999
44000 if (_M_writing && !__check_facet(_M_codecvt).always_noconv()
44001 && __testvalid)
44002 {
44003
44004
44005
44006 const size_t __blen = 128;
44007 char __buf[__blen];
44008 codecvt_base::result __r;
44009 streamsize __ilen = 0;
44010
44011 do
44012 {
44013 char* __next;
44014 __r = _M_codecvt->unshift(_M_state_cur, __buf,
44015 __buf + __blen, __next);
44016 if (__r == codecvt_base::error)
44017 __testvalid = false;
44018 else if (__r == codecvt_base::ok ||
44019 __r == codecvt_base::partial)
44020 {
44021 __ilen = __next - __buf;
44022 if (__ilen > 0)
44023 {
44024 const streamsize __elen = _M_file.xsputn(__buf, __ilen);
44025 if (__elen != __ilen)
44026 __testvalid = false;
44027 }
44028 }
44029 }
44030 while (__r == codecvt_base::partial && __ilen > 0 && __testvalid);
44031
44032 if (__testvalid)
44033 {
44034
44035
44036
44037
44038 const int_type __tmp = this->overflow();
44039 if (traits_type::eq_int_type(__tmp, traits_type::eof()))
44040 __testvalid = false;
44041 }
44042 }
44043 return __testvalid;
44044 }
44045
44046 template<typename _CharT, typename _Traits>
44047 int
44048 basic_filebuf<_CharT, _Traits>::
44049 sync()
44050 {
44051
44052
44053 int __ret = 0;
44054 if (this->pbase() < this->pptr())
44055 {
44056 const int_type __tmp = this->overflow();
44057 if (traits_type::eq_int_type(__tmp, traits_type::eof()))
44058 __ret = -1;
44059 }
44060 return __ret;
44061 }
44062
44063 template<typename _CharT, typename _Traits>
44064 void
44065 basic_filebuf<_CharT, _Traits>::
44066 imbue(const locale& __loc)
44067 {
44068 bool __testvalid = true;
44069
44070 const __codecvt_type* _M_codecvt_tmp = 0;
44071 if (__builtin_expect(has_facet<__codecvt_type>(__loc), true))
44072 _M_codecvt_tmp = &use_facet<__codecvt_type>(__loc);
44073
44074 if (this->is_open())
44075 {
44076
44077 if ((_M_reading || _M_writing)
44078 && __check_facet(_M_codecvt).encoding() == -1)
44079 __testvalid = false;
44080 else
44081 {
44082 if (_M_reading)
44083 {
44084 if (__check_facet(_M_codecvt).always_noconv())
44085 {
44086 if (_M_codecvt_tmp
44087 && !__check_facet(_M_codecvt_tmp).always_noconv())
44088 __testvalid = this->seekoff(0, ios_base::cur, _M_mode)
44089 != pos_type(off_type(-1));
44090 }
44091 else
44092 {
44093
44094 _M_ext_next = _M_ext_buf
44095 + _M_codecvt->length(_M_state_last, _M_ext_buf, _M_ext_next,
44096 this->gptr() - this->eback());
44097 const streamsize __remainder = _M_ext_end - _M_ext_next;
44098 if (__remainder)
44099 __builtin_memmove(_M_ext_buf, _M_ext_next, __remainder);
44100
44101 _M_ext_next = _M_ext_buf;
44102 _M_ext_end = _M_ext_buf + __remainder;
44103 _M_set_buffer(-1);
44104 _M_state_last = _M_state_cur = _M_state_beg;
44105 }
44106 }
44107 else if (_M_writing && (__testvalid = _M_terminate_output()))
44108 _M_set_buffer(-1);
44109 }
44110 }
44111
44112 if (__testvalid)
44113 _M_codecvt = _M_codecvt_tmp;
44114 else
44115 _M_codecvt = 0;
44116 }
44117
44118
44119
44120
44121
44122 extern template class basic_filebuf<char>;
44123 extern template class basic_ifstream<char>;
44124 extern template class basic_ofstream<char>;
44125 extern template class basic_fstream<char>;
44126
44127
44128 extern template class basic_filebuf<wchar_t>;
44129 extern template class basic_ifstream<wchar_t>;
44130 extern template class basic_ofstream<wchar_t>;
44131 extern template class basic_fstream<wchar_t>;
44132
44133
44134
44135 }
44136 # 917 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/fstream" 2 3
44137 # 41 "../fwbuilder/FWObject.h" 2
44138 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/cstdlib" 1 3
44139 # 41 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/cstdlib" 3
44140
44141 # 42 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/cstdlib" 3
44142
44143
44144 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/cstddef" 1 3
44145 # 41 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/cstddef" 3
44146
44147 # 42 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/cstddef" 3
44148
44149
44150 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 1 3 4
44151 # 45 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/cstddef" 2 3
44152 # 45 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/cstdlib" 2 3
44153
44154
44155 #define _GLIBCXX_CSTDLIB 1
44156 # 71 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/cstdlib" 3
44157 #undef abort
44158 #undef abs
44159 #undef atexit
44160 #undef atof
44161 #undef atoi
44162 #undef atol
44163 #undef bsearch
44164 #undef calloc
44165 #undef div
44166 #undef exit
44167 #undef free
44168 #undef getenv
44169 #undef labs
44170 #undef ldiv
44171 #undef malloc
44172 #undef mblen
44173 #undef mbstowcs
44174 #undef mbtowc
44175 #undef qsort
44176 #undef rand
44177 #undef realloc
44178 #undef srand
44179 #undef strtod
44180 #undef strtol
44181 #undef strtoul
44182 #undef system
44183 #undef wcstombs
44184 #undef wctomb
44185
44186 namespace std __attribute__ ((__visibility__ ("default"))) {
44187
44188 using ::div_t;
44189 using ::ldiv_t;
44190
44191 using ::abort;
44192 using ::abs;
44193 using ::atexit;
44194 using ::atof;
44195 using ::atoi;
44196 using ::atol;
44197 using ::bsearch;
44198 using ::calloc;
44199 using ::div;
44200 using ::exit;
44201 using ::free;
44202 using ::getenv;
44203 using ::labs;
44204 using ::ldiv;
44205 using ::malloc;
44206
44207 using ::mblen;
44208 using ::mbstowcs;
44209 using ::mbtowc;
44210
44211 using ::qsort;
44212 using ::rand;
44213 using ::realloc;
44214 using ::srand;
44215 using ::strtod;
44216 using ::strtol;
44217 using ::strtoul;
44218 using ::system;
44219
44220 using ::wcstombs;
44221 using ::wctomb;
44222
44223
44224 inline long
44225 abs(long __i) { return labs(__i); }
44226
44227 inline ldiv_t
44228 div(long __i, long __j) { return ldiv(__i, __j); }
44229
44230 }
44231
44232
44233
44234 #undef _Exit
44235 #undef llabs
44236 #undef lldiv
44237 #undef atoll
44238 #undef strtoll
44239 #undef strtoull
44240 #undef strtof
44241 #undef strtold
44242
44243 namespace __gnu_cxx __attribute__ ((__visibility__ ("default"))) {
44244
44245
44246 using ::lldiv_t;
44247
44248
44249
44250
44251
44252 using ::_Exit;
44253
44254
44255 inline long long
44256 abs(long long __x) { return __x >= 0 ? __x : -__x; }
44257
44258
44259 using ::llabs;
44260
44261 inline lldiv_t
44262 div(long long __n, long long __d)
44263 { lldiv_t __q; __q.quot = __n / __d; __q.rem = __n % __d; return __q; }
44264
44265 using ::lldiv;
44266 # 190 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/cstdlib" 3
44267 using ::atoll;
44268 using ::strtoll;
44269 using ::strtoull;
44270
44271 using ::strtof;
44272 using ::strtold;
44273
44274 }
44275
44276 namespace std __attribute__ ((__visibility__ ("default"))) {
44277
44278
44279 using ::__gnu_cxx::lldiv_t;
44280
44281 using ::__gnu_cxx::_Exit;
44282 using ::__gnu_cxx::abs;
44283
44284 using ::__gnu_cxx::llabs;
44285 using ::__gnu_cxx::div;
44286 using ::__gnu_cxx::lldiv;
44287
44288 using ::__gnu_cxx::atoll;
44289 using ::__gnu_cxx::strtof;
44290 using ::__gnu_cxx::strtoll;
44291 using ::__gnu_cxx::strtoull;
44292 using ::__gnu_cxx::strtold;
44293
44294 }
44295 # 42 "../fwbuilder/FWObject.h" 2
44296
44297 # 1 "../fwbuilder/libfwbuilder-config.h" 1
44298
44299
44300
44301
44302
44303
44304 #define FWBUILDER_XML_VERSION "22"
44305
44306
44307
44308
44309
44310 #define RES_DIR "/usr/share/fwbuilder-5.0.1.3592"
44311 # 27 "../fwbuilder/libfwbuilder-config.h"
44312 #define HAVE_GETOPT_H 1
44313 # 44 "../fwbuilder/libfwbuilder-config.h"
44314 #define HAVE_XMLSAVEFORMATFILEENC 1
44315
44316 #define HAVE_LIBXSLT_XSLTCONFIG_H 1
44317
44318
44319 #define HAVE_STRTOK_R 1
44320
44321 #define WORDS_LITTLEENDIAN 1
44322 # 61 "../fwbuilder/libfwbuilder-config.h"
44323 #define SNPRINTF snprintf
44324 #define VSNPRINTF vsnprintf
44325 #define FS_SEPARATOR "/"
44326
44327
44328
44329
44330
44331
44332 #define FREEXMLBUFF(x) xmlFree((void*)(x))
44333 # 44 "../fwbuilder/FWObject.h" 2
44334 # 1 "../fwbuilder/FWException.h" 1
44335 # 29 "../fwbuilder/FWException.h"
44336 #define __FW_EXCEPTION_HH_FLAG__
44337
44338
44339
44340
44341 namespace libfwbuilder
44342 {
44343
44344
44345
44346
44347 class FWException
44348 {
44349 private:
44350
44351 protected:
44352 std::string reason;
44353 std::map<std::string, std::string> properties;
44354
44355 public:
44356
44357
44358
44359
44360 FWException(const std::string &reason);
44361 virtual ~FWException() {};
44362
44363
44364
44365
44366 virtual const std::string &toString() const;
44367
44368 std::map<std::string, std::string>& getProperties();
44369
44370 };
44371
44372 class FWNotSupportedException: public FWException
44373 {
44374 public:
44375
44376 FWNotSupportedException(const std::string &reason):FWException(reason) {};
44377 };
44378
44379 }
44380 # 45 "../fwbuilder/FWObject.h" 2
44381 # 1 "../fwbuilder/ObjectMatcher.h" 1
44382 # 28 "../fwbuilder/ObjectMatcher.h"
44383 #define __OBJECTMATCHER_HH_FLAG__
44384
44385
44386
44387
44388 # 1 "../fwbuilder/libfwbuilder-config.h" 1
44389
44390
44391
44392
44393
44394
44395 #define FWBUILDER_XML_VERSION "22"
44396
44397
44398
44399
44400
44401 #define RES_DIR "/usr/share/fwbuilder-5.0.1.3592"
44402 # 27 "../fwbuilder/libfwbuilder-config.h"
44403 #define HAVE_GETOPT_H 1
44404 # 44 "../fwbuilder/libfwbuilder-config.h"
44405 #define HAVE_XMLSAVEFORMATFILEENC 1
44406
44407 #define HAVE_LIBXSLT_XSLTCONFIG_H 1
44408
44409
44410 #define HAVE_STRTOK_R 1
44411
44412 #define WORDS_LITTLEENDIAN 1
44413 # 61 "../fwbuilder/libfwbuilder-config.h"
44414 #define SNPRINTF snprintf
44415 #define VSNPRINTF vsnprintf
44416 #define FS_SEPARATOR "/"
44417
44418
44419
44420
44421
44422
44423 #define FREEXMLBUFF(x) xmlFree((void*)(x))
44424 # 34 "../fwbuilder/ObjectMatcher.h" 2
44425 # 1 "../fwbuilder/Dispatch.h" 1
44426 # 28 "../fwbuilder/Dispatch.h"
44427 #define __DISPATCH_HH_FLAG__
44428
44429
44430
44431 # 1 "/usr/include/assert.h" 1 3 4
44432 # 26 "/usr/include/assert.h" 3 4
44433 #undef _ASSERT_H
44434 #undef assert
44435 #undef __ASSERT_VOID_CAST
44436
44437
44438 #undef assert_perror
44439
44440
44441
44442
44443 #define _ASSERT_H 1
44444
44445
44446
44447 #define __ASSERT_VOID_CAST static_cast<void>
44448 # 66 "/usr/include/assert.h" 3 4
44449 extern "C" {
44450
44451
44452 extern void __assert_fail (__const char *__assertion, __const char *__file,
44453 unsigned int __line, __const char *__function)
44454 throw () __attribute__ ((__noreturn__));
44455
44456
44457 extern void __assert_perror_fail (int __errnum, __const char *__file,
44458 unsigned int __line,
44459 __const char *__function)
44460 throw () __attribute__ ((__noreturn__));
44461
44462
44463
44464
44465 extern void __assert (const char *__assertion, const char *__file, int __line)
44466 throw () __attribute__ ((__noreturn__));
44467
44468
44469 }
44470
44471 #define assert(expr) ((expr) ? __ASSERT_VOID_CAST (0) : __assert_fail (__STRING(expr), __FILE__, __LINE__, __ASSERT_FUNCTION))
44472
44473
44474
44475
44476
44477 #define assert_perror(errnum) (!(errnum) ? __ASSERT_VOID_CAST (0) : __assert_perror_fail ((errnum), __FILE__, __LINE__, __ASSERT_FUNCTION))
44478 # 106 "/usr/include/assert.h" 3 4
44479 #define __ASSERT_FUNCTION __PRETTY_FUNCTION__
44480 # 33 "../fwbuilder/Dispatch.h" 2
44481
44482 # 1 "../fwbuilder/libfwbuilder-config.h" 1
44483
44484
44485
44486
44487
44488
44489 #define FWBUILDER_XML_VERSION "22"
44490
44491
44492
44493
44494
44495 #define RES_DIR "/usr/share/fwbuilder-5.0.1.3592"
44496 # 27 "../fwbuilder/libfwbuilder-config.h"
44497 #define HAVE_GETOPT_H 1
44498 # 44 "../fwbuilder/libfwbuilder-config.h"
44499 #define HAVE_XMLSAVEFORMATFILEENC 1
44500
44501 #define HAVE_LIBXSLT_XSLTCONFIG_H 1
44502
44503
44504 #define HAVE_STRTOK_R 1
44505
44506 #define WORDS_LITTLEENDIAN 1
44507 # 61 "../fwbuilder/libfwbuilder-config.h"
44508 #define SNPRINTF snprintf
44509 #define VSNPRINTF vsnprintf
44510 #define FS_SEPARATOR "/"
44511
44512
44513
44514
44515
44516
44517 #define FREEXMLBUFF(x) xmlFree((void*)(x))
44518 # 35 "../fwbuilder/Dispatch.h" 2
44519
44520 namespace libfwbuilder {
44521 class InetAddr;
44522 class InetAddrMask;
44523
44524 class Address;
44525 class AddressRange;
44526 class AddressTable;
44527 class Cluster;
44528 class ClusterGroup;
44529 class ClusterGroupOptions;
44530 class CustomService;
44531 class DNSName;
44532 class FWBDManagement;
44533 class FWIntervalReference;
44534 class FWObject;
44535 class FWObjectDatabase;
44536 class FWObjectReference;
44537 class FWOptions;
44538 class FWReference;
44539 class FWServiceReference;
44540 class FailoverClusterGroup;
44541 class Firewall;
44542 class FirewallOptions;
44543 class Group;
44544 class Host;
44545 class HostOptions;
44546 class ICMP6Service;
44547 class ICMPService;
44548 class IPService;
44549 class IPv4;
44550 class IPv6;
44551 class Interface;
44552 class InterfaceOptions;
44553 class Interval;
44554 class IntervalGroup;
44555 class Library;
44556 class Management;
44557 class MultiAddress;
44558 class MultiAddressRunTime;
44559 class NAT;
44560 class NATRule;
44561 class NATRuleOptions;
44562 class Network;
44563 class NetworkIPv6;
44564 class ObjectGroup;
44565 class Policy;
44566 class PolicyInstallScript;
44567 class PolicyRule;
44568 class PolicyRuleOptions;
44569 class Routing;
44570 class RoutingRule;
44571 class RoutingRuleOptions;
44572 class Rule;
44573 class RuleElement;
44574 class RuleElementDst;
44575 class RuleElementInterval;
44576 class RuleElementItf;
44577 class RuleElementODst;
44578 class RuleElementOSrc;
44579 class RuleElementOSrv;
44580 class RuleElementRDst;
44581 class RuleElementRGtw;
44582 class RuleElementRItf;
44583 class RuleElementSrc;
44584 class RuleElementSrv;
44585 class RuleElementTDst;
44586 class RuleElementTSrc;
44587 class RuleElementTSrv;
44588 class RuleSet;
44589 class RuleSetOptions;
44590 class SNMPManagement;
44591 class Service;
44592 class ServiceGroup;
44593 class StateSyncClusterGroup;
44594 class TCPService;
44595 class TCPUDPService;
44596 class TagService;
44597 class UDPService;
44598 class UserService;
44599 class physAddress;
44600 class DynamicGroup;
44601 };
44602
44603
44604
44605
44606
44607
44608 #define __DECLARE_DISPATCH_METHODS(classname) virtual void* dispatch(classname*, void*) { assert("Call to unimplemented virtual void* Dispatch::dispatch("#classname"*, void*)"==NULL); return NULL; } virtual void* dispatch(classname*, const void*) { assert("Call to unimplemented virtual void* Dispatch::dispatch("#classname"*, const void*)"==NULL); return NULL; } virtual void* dispatch(const classname*, void*) { assert("Call to unimplemented virtual void* Dispatch::dispatch(const "#classname"*, void*)"==NULL); return NULL; } virtual void* dispatch(const classname*, const void*) { assert("Call to unimplemented virtual void* Dispatch::dispatch(const "#classname"*, const void*)"==NULL); return NULL; } virtual const void* const_dispatch(const classname*, void*) { assert("Call to unimplemented virtual const void* Dispatch::const_dispatch(const "#classname"*, void*)"==NULL); return NULL; } virtual const void* const_dispatch(const classname*, const void*) { assert("Call to unimplemented virtual const void* Dispatch::const_dispatch(const "#classname"*, const void*)"==NULL); return NULL; }
44609 # 144 "../fwbuilder/Dispatch.h"
44610 namespace libfwbuilder
44611 {
44612
44613 class Dispatch {
44614
44615 public:
44616 Dispatch() {}
44617 virtual ~Dispatch() {}
44618
44619 virtual void* dispatch(Address*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""Address""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"Address\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 153, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(Address*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""Address""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"Address\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 153, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const Address*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""Address""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"Address\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 153, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const Address*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""Address""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"Address\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 153, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const Address*, void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""Address""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"Address\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 153, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const Address*, const void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""Address""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"Address\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 153, __PRETTY_FUNCTION__)); return __null; };
44620 virtual void* dispatch(AddressRange*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""AddressRange""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"AddressRange\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 154, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(AddressRange*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""AddressRange""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"AddressRange\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 154, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const AddressRange*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""AddressRange""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"AddressRange\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 154, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const AddressRange*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""AddressRange""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"AddressRange\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 154, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const AddressRange*, void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""AddressRange""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"AddressRange\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 154, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const AddressRange*, const void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""AddressRange""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"AddressRange\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 154, __PRETTY_FUNCTION__)); return __null; };
44621 virtual void* dispatch(AddressTable*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""AddressTable""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"AddressTable\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 155, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(AddressTable*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""AddressTable""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"AddressTable\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 155, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const AddressTable*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""AddressTable""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"AddressTable\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 155, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const AddressTable*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""AddressTable""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"AddressTable\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 155, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const AddressTable*, void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""AddressTable""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"AddressTable\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 155, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const AddressTable*, const void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""AddressTable""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"AddressTable\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 155, __PRETTY_FUNCTION__)); return __null; };
44622 virtual void* dispatch(Cluster*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""Cluster""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"Cluster\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 156, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(Cluster*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""Cluster""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"Cluster\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 156, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const Cluster*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""Cluster""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"Cluster\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 156, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const Cluster*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""Cluster""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"Cluster\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 156, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const Cluster*, void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""Cluster""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"Cluster\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 156, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const Cluster*, const void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""Cluster""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"Cluster\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 156, __PRETTY_FUNCTION__)); return __null; };
44623 virtual void* dispatch(ClusterGroup*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""ClusterGroup""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"ClusterGroup\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 157, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(ClusterGroup*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""ClusterGroup""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"ClusterGroup\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 157, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const ClusterGroup*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""ClusterGroup""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"ClusterGroup\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 157, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const ClusterGroup*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""ClusterGroup""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"ClusterGroup\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 157, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const ClusterGroup*, void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""ClusterGroup""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"ClusterGroup\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 157, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const ClusterGroup*, const void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""ClusterGroup""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"ClusterGroup\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 157, __PRETTY_FUNCTION__)); return __null; };
44624 virtual void* dispatch(ClusterGroupOptions*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""ClusterGroupOptions""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"ClusterGroupOptions\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 158, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(ClusterGroupOptions*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""ClusterGroupOptions""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"ClusterGroupOptions\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 158, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const ClusterGroupOptions*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""ClusterGroupOptions""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"ClusterGroupOptions\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 158, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const ClusterGroupOptions*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""ClusterGroupOptions""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"ClusterGroupOptions\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 158, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const ClusterGroupOptions*, void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""ClusterGroupOptions""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"ClusterGroupOptions\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 158, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const ClusterGroupOptions*, const void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""ClusterGroupOptions""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"ClusterGroupOptions\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 158, __PRETTY_FUNCTION__)); return __null; };
44625 virtual void* dispatch(CustomService*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""CustomService""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"CustomService\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 159, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(CustomService*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""CustomService""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"CustomService\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 159, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const CustomService*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""CustomService""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"CustomService\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 159, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const CustomService*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""CustomService""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"CustomService\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 159, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const CustomService*, void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""CustomService""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"CustomService\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 159, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const CustomService*, const void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""CustomService""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"CustomService\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 159, __PRETTY_FUNCTION__)); return __null; };
44626 virtual void* dispatch(DNSName*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""DNSName""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"DNSName\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 160, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(DNSName*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""DNSName""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"DNSName\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 160, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const DNSName*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""DNSName""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"DNSName\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 160, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const DNSName*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""DNSName""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"DNSName\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 160, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const DNSName*, void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""DNSName""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"DNSName\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 160, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const DNSName*, const void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""DNSName""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"DNSName\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 160, __PRETTY_FUNCTION__)); return __null; };
44627 virtual void* dispatch(FWBDManagement*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""FWBDManagement""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"FWBDManagement\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 161, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(FWBDManagement*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""FWBDManagement""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"FWBDManagement\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 161, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const FWBDManagement*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""FWBDManagement""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"FWBDManagement\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 161, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const FWBDManagement*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""FWBDManagement""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"FWBDManagement\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 161, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const FWBDManagement*, void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""FWBDManagement""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"FWBDManagement\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 161, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const FWBDManagement*, const void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""FWBDManagement""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"FWBDManagement\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 161, __PRETTY_FUNCTION__)); return __null; };
44628 virtual void* dispatch(FWIntervalReference*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""FWIntervalReference""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"FWIntervalReference\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 162, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(FWIntervalReference*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""FWIntervalReference""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"FWIntervalReference\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 162, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const FWIntervalReference*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""FWIntervalReference""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"FWIntervalReference\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 162, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const FWIntervalReference*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""FWIntervalReference""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"FWIntervalReference\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 162, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const FWIntervalReference*, void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""FWIntervalReference""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"FWIntervalReference\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 162, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const FWIntervalReference*, const void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""FWIntervalReference""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"FWIntervalReference\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 162, __PRETTY_FUNCTION__)); return __null; };
44629 virtual void* dispatch(FWObject*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""FWObject""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"FWObject\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 163, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(FWObject*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""FWObject""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"FWObject\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 163, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const FWObject*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""FWObject""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"FWObject\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 163, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const FWObject*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""FWObject""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"FWObject\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 163, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const FWObject*, void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""FWObject""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"FWObject\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 163, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const FWObject*, const void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""FWObject""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"FWObject\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 163, __PRETTY_FUNCTION__)); return __null; };
44630 virtual void* dispatch(FWObjectDatabase*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""FWObjectDatabase""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"FWObjectDatabase\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 164, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(FWObjectDatabase*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""FWObjectDatabase""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"FWObjectDatabase\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 164, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const FWObjectDatabase*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""FWObjectDatabase""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"FWObjectDatabase\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 164, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const FWObjectDatabase*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""FWObjectDatabase""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"FWObjectDatabase\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 164, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const FWObjectDatabase*, void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""FWObjectDatabase""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"FWObjectDatabase\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 164, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const FWObjectDatabase*, const void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""FWObjectDatabase""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"FWObjectDatabase\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 164, __PRETTY_FUNCTION__)); return __null; };
44631 virtual void* dispatch(FWObjectReference*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""FWObjectReference""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"FWObjectReference\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 165, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(FWObjectReference*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""FWObjectReference""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"FWObjectReference\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 165, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const FWObjectReference*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""FWObjectReference""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"FWObjectReference\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 165, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const FWObjectReference*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""FWObjectReference""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"FWObjectReference\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 165, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const FWObjectReference*, void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""FWObjectReference""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"FWObjectReference\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 165, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const FWObjectReference*, const void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""FWObjectReference""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"FWObjectReference\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 165, __PRETTY_FUNCTION__)); return __null; };
44632 virtual void* dispatch(FWOptions*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""FWOptions""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"FWOptions\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 166, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(FWOptions*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""FWOptions""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"FWOptions\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 166, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const FWOptions*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""FWOptions""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"FWOptions\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 166, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const FWOptions*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""FWOptions""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"FWOptions\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 166, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const FWOptions*, void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""FWOptions""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"FWOptions\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 166, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const FWOptions*, const void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""FWOptions""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"FWOptions\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 166, __PRETTY_FUNCTION__)); return __null; };
44633 virtual void* dispatch(FWReference*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""FWReference""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"FWReference\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 167, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(FWReference*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""FWReference""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"FWReference\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 167, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const FWReference*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""FWReference""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"FWReference\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 167, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const FWReference*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""FWReference""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"FWReference\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 167, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const FWReference*, void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""FWReference""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"FWReference\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 167, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const FWReference*, const void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""FWReference""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"FWReference\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 167, __PRETTY_FUNCTION__)); return __null; };
44634 virtual void* dispatch(FWServiceReference*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""FWServiceReference""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"FWServiceReference\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 168, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(FWServiceReference*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""FWServiceReference""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"FWServiceReference\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 168, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const FWServiceReference*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""FWServiceReference""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"FWServiceReference\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 168, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const FWServiceReference*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""FWServiceReference""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"FWServiceReference\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 168, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const FWServiceReference*, void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""FWServiceReference""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"FWServiceReference\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 168, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const FWServiceReference*, const void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""FWServiceReference""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"FWServiceReference\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 168, __PRETTY_FUNCTION__)); return __null; };
44635 virtual void* dispatch(FailoverClusterGroup*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""FailoverClusterGroup""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"FailoverClusterGroup\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 169, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(FailoverClusterGroup*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""FailoverClusterGroup""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"FailoverClusterGroup\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 169, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const FailoverClusterGroup*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""FailoverClusterGroup""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"FailoverClusterGroup\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 169, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const FailoverClusterGroup*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""FailoverClusterGroup""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"FailoverClusterGroup\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 169, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const FailoverClusterGroup*, void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""FailoverClusterGroup""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"FailoverClusterGroup\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 169, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const FailoverClusterGroup*, const void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""FailoverClusterGroup""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"FailoverClusterGroup\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 169, __PRETTY_FUNCTION__)); return __null; };
44636 virtual void* dispatch(Firewall*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""Firewall""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"Firewall\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 170, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(Firewall*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""Firewall""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"Firewall\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 170, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const Firewall*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""Firewall""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"Firewall\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 170, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const Firewall*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""Firewall""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"Firewall\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 170, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const Firewall*, void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""Firewall""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"Firewall\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 170, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const Firewall*, const void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""Firewall""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"Firewall\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 170, __PRETTY_FUNCTION__)); return __null; };
44637 virtual void* dispatch(FirewallOptions*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""FirewallOptions""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"FirewallOptions\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 171, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(FirewallOptions*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""FirewallOptions""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"FirewallOptions\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 171, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const FirewallOptions*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""FirewallOptions""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"FirewallOptions\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 171, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const FirewallOptions*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""FirewallOptions""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"FirewallOptions\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 171, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const FirewallOptions*, void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""FirewallOptions""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"FirewallOptions\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 171, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const FirewallOptions*, const void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""FirewallOptions""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"FirewallOptions\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 171, __PRETTY_FUNCTION__)); return __null; };
44638 virtual void* dispatch(Group*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""Group""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"Group\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 172, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(Group*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""Group""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"Group\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 172, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const Group*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""Group""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"Group\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 172, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const Group*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""Group""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"Group\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 172, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const Group*, void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""Group""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"Group\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 172, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const Group*, const void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""Group""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"Group\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 172, __PRETTY_FUNCTION__)); return __null; };
44639 virtual void* dispatch(Host*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""Host""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"Host\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 173, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(Host*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""Host""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"Host\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 173, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const Host*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""Host""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"Host\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 173, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const Host*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""Host""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"Host\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 173, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const Host*, void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""Host""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"Host\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 173, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const Host*, const void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""Host""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"Host\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 173, __PRETTY_FUNCTION__)); return __null; };
44640 virtual void* dispatch(HostOptions*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""HostOptions""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"HostOptions\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 174, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(HostOptions*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""HostOptions""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"HostOptions\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 174, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const HostOptions*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""HostOptions""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"HostOptions\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 174, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const HostOptions*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""HostOptions""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"HostOptions\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 174, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const HostOptions*, void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""HostOptions""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"HostOptions\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 174, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const HostOptions*, const void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""HostOptions""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"HostOptions\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 174, __PRETTY_FUNCTION__)); return __null; };
44641 virtual void* dispatch(ICMP6Service*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""ICMP6Service""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"ICMP6Service\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 175, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(ICMP6Service*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""ICMP6Service""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"ICMP6Service\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 175, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const ICMP6Service*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""ICMP6Service""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"ICMP6Service\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 175, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const ICMP6Service*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""ICMP6Service""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"ICMP6Service\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 175, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const ICMP6Service*, void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""ICMP6Service""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"ICMP6Service\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 175, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const ICMP6Service*, const void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""ICMP6Service""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"ICMP6Service\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 175, __PRETTY_FUNCTION__)); return __null; };
44642 virtual void* dispatch(ICMPService*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""ICMPService""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"ICMPService\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 176, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(ICMPService*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""ICMPService""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"ICMPService\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 176, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const ICMPService*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""ICMPService""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"ICMPService\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 176, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const ICMPService*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""ICMPService""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"ICMPService\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 176, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const ICMPService*, void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""ICMPService""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"ICMPService\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 176, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const ICMPService*, const void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""ICMPService""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"ICMPService\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 176, __PRETTY_FUNCTION__)); return __null; };
44643 virtual void* dispatch(IPService*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""IPService""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"IPService\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 177, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(IPService*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""IPService""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"IPService\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 177, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const IPService*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""IPService""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"IPService\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 177, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const IPService*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""IPService""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"IPService\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 177, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const IPService*, void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""IPService""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"IPService\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 177, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const IPService*, const void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""IPService""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"IPService\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 177, __PRETTY_FUNCTION__)); return __null; };
44644 virtual void* dispatch(IPv4*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""IPv4""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"IPv4\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 178, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(IPv4*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""IPv4""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"IPv4\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 178, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const IPv4*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""IPv4""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"IPv4\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 178, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const IPv4*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""IPv4""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"IPv4\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 178, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const IPv4*, void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""IPv4""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"IPv4\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 178, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const IPv4*, const void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""IPv4""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"IPv4\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 178, __PRETTY_FUNCTION__)); return __null; };
44645 virtual void* dispatch(IPv6*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""IPv6""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"IPv6\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 179, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(IPv6*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""IPv6""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"IPv6\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 179, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const IPv6*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""IPv6""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"IPv6\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 179, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const IPv6*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""IPv6""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"IPv6\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 179, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const IPv6*, void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""IPv6""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"IPv6\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 179, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const IPv6*, const void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""IPv6""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"IPv6\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 179, __PRETTY_FUNCTION__)); return __null; };
44646 virtual void* dispatch(Interface*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""Interface""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"Interface\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 180, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(Interface*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""Interface""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"Interface\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 180, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const Interface*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""Interface""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"Interface\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 180, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const Interface*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""Interface""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"Interface\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 180, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const Interface*, void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""Interface""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"Interface\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 180, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const Interface*, const void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""Interface""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"Interface\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 180, __PRETTY_FUNCTION__)); return __null; };
44647 virtual void* dispatch(InterfaceOptions*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""InterfaceOptions""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"InterfaceOptions\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 181, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(InterfaceOptions*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""InterfaceOptions""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"InterfaceOptions\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 181, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const InterfaceOptions*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""InterfaceOptions""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"InterfaceOptions\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 181, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const InterfaceOptions*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""InterfaceOptions""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"InterfaceOptions\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 181, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const InterfaceOptions*, void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""InterfaceOptions""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"InterfaceOptions\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 181, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const InterfaceOptions*, const void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""InterfaceOptions""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"InterfaceOptions\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 181, __PRETTY_FUNCTION__)); return __null; };
44648 virtual void* dispatch(Interval*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""Interval""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"Interval\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 182, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(Interval*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""Interval""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"Interval\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 182, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const Interval*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""Interval""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"Interval\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 182, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const Interval*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""Interval""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"Interval\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 182, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const Interval*, void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""Interval""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"Interval\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 182, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const Interval*, const void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""Interval""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"Interval\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 182, __PRETTY_FUNCTION__)); return __null; };
44649 virtual void* dispatch(IntervalGroup*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""IntervalGroup""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"IntervalGroup\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 183, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(IntervalGroup*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""IntervalGroup""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"IntervalGroup\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 183, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const IntervalGroup*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""IntervalGroup""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"IntervalGroup\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 183, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const IntervalGroup*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""IntervalGroup""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"IntervalGroup\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 183, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const IntervalGroup*, void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""IntervalGroup""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"IntervalGroup\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 183, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const IntervalGroup*, const void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""IntervalGroup""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"IntervalGroup\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 183, __PRETTY_FUNCTION__)); return __null; };
44650 virtual void* dispatch(Library*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""Library""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"Library\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 184, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(Library*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""Library""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"Library\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 184, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const Library*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""Library""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"Library\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 184, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const Library*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""Library""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"Library\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 184, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const Library*, void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""Library""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"Library\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 184, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const Library*, const void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""Library""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"Library\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 184, __PRETTY_FUNCTION__)); return __null; };
44651 virtual void* dispatch(Management*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""Management""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"Management\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 185, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(Management*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""Management""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"Management\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 185, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const Management*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""Management""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"Management\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 185, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const Management*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""Management""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"Management\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 185, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const Management*, void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""Management""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"Management\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 185, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const Management*, const void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""Management""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"Management\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 185, __PRETTY_FUNCTION__)); return __null; };
44652 virtual void* dispatch(MultiAddress*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""MultiAddress""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"MultiAddress\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 186, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(MultiAddress*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""MultiAddress""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"MultiAddress\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 186, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const MultiAddress*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""MultiAddress""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"MultiAddress\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 186, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const MultiAddress*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""MultiAddress""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"MultiAddress\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 186, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const MultiAddress*, void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""MultiAddress""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"MultiAddress\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 186, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const MultiAddress*, const void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""MultiAddress""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"MultiAddress\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 186, __PRETTY_FUNCTION__)); return __null; };
44653 virtual void* dispatch(MultiAddressRunTime*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""MultiAddressRunTime""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"MultiAddressRunTime\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 187, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(MultiAddressRunTime*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""MultiAddressRunTime""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"MultiAddressRunTime\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 187, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const MultiAddressRunTime*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""MultiAddressRunTime""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"MultiAddressRunTime\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 187, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const MultiAddressRunTime*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""MultiAddressRunTime""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"MultiAddressRunTime\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 187, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const MultiAddressRunTime*, void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""MultiAddressRunTime""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"MultiAddressRunTime\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 187, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const MultiAddressRunTime*, const void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""MultiAddressRunTime""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"MultiAddressRunTime\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 187, __PRETTY_FUNCTION__)); return __null; };
44654 virtual void* dispatch(NAT*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""NAT""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"NAT\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 188, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(NAT*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""NAT""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"NAT\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 188, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const NAT*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""NAT""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"NAT\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 188, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const NAT*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""NAT""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"NAT\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 188, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const NAT*, void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""NAT""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"NAT\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 188, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const NAT*, const void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""NAT""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"NAT\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 188, __PRETTY_FUNCTION__)); return __null; };
44655 virtual void* dispatch(NATRule*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""NATRule""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"NATRule\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 189, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(NATRule*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""NATRule""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"NATRule\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 189, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const NATRule*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""NATRule""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"NATRule\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 189, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const NATRule*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""NATRule""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"NATRule\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 189, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const NATRule*, void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""NATRule""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"NATRule\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 189, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const NATRule*, const void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""NATRule""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"NATRule\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 189, __PRETTY_FUNCTION__)); return __null; };
44656 virtual void* dispatch(NATRuleOptions*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""NATRuleOptions""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"NATRuleOptions\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 190, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(NATRuleOptions*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""NATRuleOptions""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"NATRuleOptions\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 190, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const NATRuleOptions*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""NATRuleOptions""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"NATRuleOptions\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 190, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const NATRuleOptions*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""NATRuleOptions""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"NATRuleOptions\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 190, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const NATRuleOptions*, void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""NATRuleOptions""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"NATRuleOptions\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 190, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const NATRuleOptions*, const void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""NATRuleOptions""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"NATRuleOptions\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 190, __PRETTY_FUNCTION__)); return __null; };
44657 virtual void* dispatch(Network*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""Network""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"Network\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 191, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(Network*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""Network""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"Network\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 191, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const Network*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""Network""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"Network\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 191, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const Network*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""Network""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"Network\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 191, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const Network*, void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""Network""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"Network\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 191, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const Network*, const void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""Network""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"Network\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 191, __PRETTY_FUNCTION__)); return __null; };
44658 virtual void* dispatch(NetworkIPv6*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""NetworkIPv6""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"NetworkIPv6\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 192, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(NetworkIPv6*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""NetworkIPv6""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"NetworkIPv6\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 192, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const NetworkIPv6*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""NetworkIPv6""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"NetworkIPv6\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 192, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const NetworkIPv6*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""NetworkIPv6""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"NetworkIPv6\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 192, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const NetworkIPv6*, void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""NetworkIPv6""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"NetworkIPv6\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 192, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const NetworkIPv6*, const void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""NetworkIPv6""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"NetworkIPv6\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 192, __PRETTY_FUNCTION__)); return __null; };
44659 virtual void* dispatch(ObjectGroup*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""ObjectGroup""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"ObjectGroup\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 193, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(ObjectGroup*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""ObjectGroup""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"ObjectGroup\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 193, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const ObjectGroup*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""ObjectGroup""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"ObjectGroup\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 193, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const ObjectGroup*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""ObjectGroup""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"ObjectGroup\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 193, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const ObjectGroup*, void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""ObjectGroup""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"ObjectGroup\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 193, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const ObjectGroup*, const void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""ObjectGroup""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"ObjectGroup\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 193, __PRETTY_FUNCTION__)); return __null; };
44660 virtual void* dispatch(Policy*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""Policy""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"Policy\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 194, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(Policy*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""Policy""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"Policy\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 194, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const Policy*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""Policy""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"Policy\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 194, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const Policy*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""Policy""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"Policy\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 194, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const Policy*, void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""Policy""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"Policy\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 194, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const Policy*, const void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""Policy""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"Policy\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 194, __PRETTY_FUNCTION__)); return __null; };
44661 virtual void* dispatch(PolicyInstallScript*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""PolicyInstallScript""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"PolicyInstallScript\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 195, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(PolicyInstallScript*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""PolicyInstallScript""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"PolicyInstallScript\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 195, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const PolicyInstallScript*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""PolicyInstallScript""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"PolicyInstallScript\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 195, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const PolicyInstallScript*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""PolicyInstallScript""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"PolicyInstallScript\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 195, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const PolicyInstallScript*, void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""PolicyInstallScript""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"PolicyInstallScript\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 195, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const PolicyInstallScript*, const void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""PolicyInstallScript""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"PolicyInstallScript\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 195, __PRETTY_FUNCTION__)); return __null; };
44662 virtual void* dispatch(PolicyRule*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""PolicyRule""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"PolicyRule\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 196, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(PolicyRule*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""PolicyRule""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"PolicyRule\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 196, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const PolicyRule*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""PolicyRule""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"PolicyRule\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 196, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const PolicyRule*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""PolicyRule""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"PolicyRule\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 196, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const PolicyRule*, void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""PolicyRule""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"PolicyRule\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 196, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const PolicyRule*, const void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""PolicyRule""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"PolicyRule\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 196, __PRETTY_FUNCTION__)); return __null; };
44663 virtual void* dispatch(PolicyRuleOptions*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""PolicyRuleOptions""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"PolicyRuleOptions\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 197, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(PolicyRuleOptions*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""PolicyRuleOptions""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"PolicyRuleOptions\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 197, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const PolicyRuleOptions*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""PolicyRuleOptions""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"PolicyRuleOptions\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 197, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const PolicyRuleOptions*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""PolicyRuleOptions""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"PolicyRuleOptions\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 197, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const PolicyRuleOptions*, void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""PolicyRuleOptions""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"PolicyRuleOptions\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 197, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const PolicyRuleOptions*, const void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""PolicyRuleOptions""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"PolicyRuleOptions\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 197, __PRETTY_FUNCTION__)); return __null; };
44664 virtual void* dispatch(Routing*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""Routing""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"Routing\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 198, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(Routing*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""Routing""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"Routing\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 198, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const Routing*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""Routing""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"Routing\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 198, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const Routing*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""Routing""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"Routing\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 198, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const Routing*, void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""Routing""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"Routing\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 198, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const Routing*, const void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""Routing""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"Routing\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 198, __PRETTY_FUNCTION__)); return __null; };
44665 virtual void* dispatch(RoutingRule*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""RoutingRule""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"RoutingRule\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 199, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(RoutingRule*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""RoutingRule""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"RoutingRule\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 199, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const RoutingRule*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""RoutingRule""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"RoutingRule\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 199, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const RoutingRule*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""RoutingRule""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"RoutingRule\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 199, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const RoutingRule*, void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""RoutingRule""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"RoutingRule\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 199, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const RoutingRule*, const void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""RoutingRule""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"RoutingRule\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 199, __PRETTY_FUNCTION__)); return __null; };
44666 virtual void* dispatch(RoutingRuleOptions*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""RoutingRuleOptions""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"RoutingRuleOptions\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 200, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(RoutingRuleOptions*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""RoutingRuleOptions""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"RoutingRuleOptions\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 200, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const RoutingRuleOptions*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""RoutingRuleOptions""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"RoutingRuleOptions\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 200, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const RoutingRuleOptions*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""RoutingRuleOptions""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"RoutingRuleOptions\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 200, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const RoutingRuleOptions*, void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""RoutingRuleOptions""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"RoutingRuleOptions\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 200, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const RoutingRuleOptions*, const void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""RoutingRuleOptions""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"RoutingRuleOptions\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 200, __PRETTY_FUNCTION__)); return __null; };
44667 virtual void* dispatch(Rule*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""Rule""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"Rule\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 201, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(Rule*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""Rule""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"Rule\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 201, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const Rule*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""Rule""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"Rule\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 201, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const Rule*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""Rule""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"Rule\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 201, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const Rule*, void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""Rule""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"Rule\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 201, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const Rule*, const void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""Rule""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"Rule\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 201, __PRETTY_FUNCTION__)); return __null; };
44668 virtual void* dispatch(RuleElement*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""RuleElement""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"RuleElement\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 202, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(RuleElement*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""RuleElement""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"RuleElement\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 202, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const RuleElement*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""RuleElement""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"RuleElement\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 202, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const RuleElement*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""RuleElement""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"RuleElement\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 202, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const RuleElement*, void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""RuleElement""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"RuleElement\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 202, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const RuleElement*, const void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""RuleElement""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"RuleElement\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 202, __PRETTY_FUNCTION__)); return __null; };
44669 virtual void* dispatch(RuleElementDst*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""RuleElementDst""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"RuleElementDst\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 203, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(RuleElementDst*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""RuleElementDst""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"RuleElementDst\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 203, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const RuleElementDst*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""RuleElementDst""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"RuleElementDst\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 203, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const RuleElementDst*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""RuleElementDst""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"RuleElementDst\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 203, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const RuleElementDst*, void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""RuleElementDst""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"RuleElementDst\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 203, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const RuleElementDst*, const void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""RuleElementDst""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"RuleElementDst\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 203, __PRETTY_FUNCTION__)); return __null; };
44670 virtual void* dispatch(RuleElementInterval*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""RuleElementInterval""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"RuleElementInterval\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 204, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(RuleElementInterval*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""RuleElementInterval""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"RuleElementInterval\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 204, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const RuleElementInterval*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""RuleElementInterval""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"RuleElementInterval\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 204, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const RuleElementInterval*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""RuleElementInterval""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"RuleElementInterval\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 204, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const RuleElementInterval*, void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""RuleElementInterval""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"RuleElementInterval\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 204, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const RuleElementInterval*, const void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""RuleElementInterval""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"RuleElementInterval\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 204, __PRETTY_FUNCTION__)); return __null; };
44671 virtual void* dispatch(RuleElementItf*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""RuleElementItf""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"RuleElementItf\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 205, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(RuleElementItf*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""RuleElementItf""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"RuleElementItf\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 205, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const RuleElementItf*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""RuleElementItf""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"RuleElementItf\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 205, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const RuleElementItf*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""RuleElementItf""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"RuleElementItf\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 205, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const RuleElementItf*, void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""RuleElementItf""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"RuleElementItf\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 205, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const RuleElementItf*, const void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""RuleElementItf""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"RuleElementItf\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 205, __PRETTY_FUNCTION__)); return __null; };
44672 virtual void* dispatch(RuleElementODst*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""RuleElementODst""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"RuleElementODst\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 206, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(RuleElementODst*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""RuleElementODst""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"RuleElementODst\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 206, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const RuleElementODst*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""RuleElementODst""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"RuleElementODst\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 206, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const RuleElementODst*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""RuleElementODst""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"RuleElementODst\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 206, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const RuleElementODst*, void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""RuleElementODst""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"RuleElementODst\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 206, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const RuleElementODst*, const void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""RuleElementODst""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"RuleElementODst\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 206, __PRETTY_FUNCTION__)); return __null; };
44673 virtual void* dispatch(RuleElementOSrc*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""RuleElementOSrc""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"RuleElementOSrc\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 207, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(RuleElementOSrc*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""RuleElementOSrc""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"RuleElementOSrc\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 207, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const RuleElementOSrc*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""RuleElementOSrc""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"RuleElementOSrc\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 207, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const RuleElementOSrc*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""RuleElementOSrc""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"RuleElementOSrc\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 207, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const RuleElementOSrc*, void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""RuleElementOSrc""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"RuleElementOSrc\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 207, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const RuleElementOSrc*, const void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""RuleElementOSrc""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"RuleElementOSrc\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 207, __PRETTY_FUNCTION__)); return __null; };
44674 virtual void* dispatch(RuleElementOSrv*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""RuleElementOSrv""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"RuleElementOSrv\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 208, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(RuleElementOSrv*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""RuleElementOSrv""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"RuleElementOSrv\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 208, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const RuleElementOSrv*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""RuleElementOSrv""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"RuleElementOSrv\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 208, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const RuleElementOSrv*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""RuleElementOSrv""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"RuleElementOSrv\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 208, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const RuleElementOSrv*, void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""RuleElementOSrv""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"RuleElementOSrv\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 208, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const RuleElementOSrv*, const void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""RuleElementOSrv""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"RuleElementOSrv\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 208, __PRETTY_FUNCTION__)); return __null; };
44675 virtual void* dispatch(RuleElementRDst*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""RuleElementRDst""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"RuleElementRDst\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 209, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(RuleElementRDst*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""RuleElementRDst""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"RuleElementRDst\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 209, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const RuleElementRDst*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""RuleElementRDst""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"RuleElementRDst\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 209, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const RuleElementRDst*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""RuleElementRDst""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"RuleElementRDst\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 209, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const RuleElementRDst*, void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""RuleElementRDst""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"RuleElementRDst\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 209, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const RuleElementRDst*, const void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""RuleElementRDst""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"RuleElementRDst\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 209, __PRETTY_FUNCTION__)); return __null; };
44676 virtual void* dispatch(RuleElementRGtw*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""RuleElementRGtw""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"RuleElementRGtw\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 210, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(RuleElementRGtw*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""RuleElementRGtw""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"RuleElementRGtw\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 210, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const RuleElementRGtw*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""RuleElementRGtw""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"RuleElementRGtw\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 210, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const RuleElementRGtw*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""RuleElementRGtw""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"RuleElementRGtw\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 210, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const RuleElementRGtw*, void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""RuleElementRGtw""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"RuleElementRGtw\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 210, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const RuleElementRGtw*, const void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""RuleElementRGtw""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"RuleElementRGtw\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 210, __PRETTY_FUNCTION__)); return __null; };
44677 virtual void* dispatch(RuleElementRItf*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""RuleElementRItf""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"RuleElementRItf\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 211, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(RuleElementRItf*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""RuleElementRItf""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"RuleElementRItf\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 211, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const RuleElementRItf*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""RuleElementRItf""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"RuleElementRItf\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 211, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const RuleElementRItf*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""RuleElementRItf""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"RuleElementRItf\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 211, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const RuleElementRItf*, void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""RuleElementRItf""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"RuleElementRItf\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 211, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const RuleElementRItf*, const void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""RuleElementRItf""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"RuleElementRItf\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 211, __PRETTY_FUNCTION__)); return __null; };
44678 virtual void* dispatch(RuleElementSrc*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""RuleElementSrc""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"RuleElementSrc\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 212, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(RuleElementSrc*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""RuleElementSrc""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"RuleElementSrc\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 212, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const RuleElementSrc*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""RuleElementSrc""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"RuleElementSrc\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 212, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const RuleElementSrc*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""RuleElementSrc""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"RuleElementSrc\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 212, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const RuleElementSrc*, void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""RuleElementSrc""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"RuleElementSrc\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 212, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const RuleElementSrc*, const void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""RuleElementSrc""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"RuleElementSrc\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 212, __PRETTY_FUNCTION__)); return __null; };
44679 virtual void* dispatch(RuleElementSrv*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""RuleElementSrv""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"RuleElementSrv\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 213, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(RuleElementSrv*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""RuleElementSrv""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"RuleElementSrv\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 213, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const RuleElementSrv*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""RuleElementSrv""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"RuleElementSrv\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 213, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const RuleElementSrv*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""RuleElementSrv""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"RuleElementSrv\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 213, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const RuleElementSrv*, void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""RuleElementSrv""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"RuleElementSrv\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 213, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const RuleElementSrv*, const void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""RuleElementSrv""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"RuleElementSrv\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 213, __PRETTY_FUNCTION__)); return __null; };
44680 virtual void* dispatch(RuleElementTDst*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""RuleElementTDst""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"RuleElementTDst\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 214, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(RuleElementTDst*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""RuleElementTDst""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"RuleElementTDst\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 214, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const RuleElementTDst*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""RuleElementTDst""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"RuleElementTDst\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 214, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const RuleElementTDst*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""RuleElementTDst""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"RuleElementTDst\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 214, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const RuleElementTDst*, void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""RuleElementTDst""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"RuleElementTDst\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 214, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const RuleElementTDst*, const void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""RuleElementTDst""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"RuleElementTDst\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 214, __PRETTY_FUNCTION__)); return __null; };
44681 virtual void* dispatch(RuleElementTSrc*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""RuleElementTSrc""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"RuleElementTSrc\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 215, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(RuleElementTSrc*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""RuleElementTSrc""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"RuleElementTSrc\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 215, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const RuleElementTSrc*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""RuleElementTSrc""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"RuleElementTSrc\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 215, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const RuleElementTSrc*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""RuleElementTSrc""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"RuleElementTSrc\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 215, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const RuleElementTSrc*, void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""RuleElementTSrc""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"RuleElementTSrc\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 215, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const RuleElementTSrc*, const void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""RuleElementTSrc""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"RuleElementTSrc\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 215, __PRETTY_FUNCTION__)); return __null; };
44682 virtual void* dispatch(RuleElementTSrv*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""RuleElementTSrv""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"RuleElementTSrv\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 216, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(RuleElementTSrv*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""RuleElementTSrv""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"RuleElementTSrv\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 216, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const RuleElementTSrv*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""RuleElementTSrv""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"RuleElementTSrv\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 216, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const RuleElementTSrv*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""RuleElementTSrv""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"RuleElementTSrv\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 216, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const RuleElementTSrv*, void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""RuleElementTSrv""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"RuleElementTSrv\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 216, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const RuleElementTSrv*, const void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""RuleElementTSrv""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"RuleElementTSrv\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 216, __PRETTY_FUNCTION__)); return __null; };
44683 virtual void* dispatch(RuleSet*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""RuleSet""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"RuleSet\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 217, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(RuleSet*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""RuleSet""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"RuleSet\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 217, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const RuleSet*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""RuleSet""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"RuleSet\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 217, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const RuleSet*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""RuleSet""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"RuleSet\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 217, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const RuleSet*, void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""RuleSet""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"RuleSet\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 217, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const RuleSet*, const void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""RuleSet""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"RuleSet\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 217, __PRETTY_FUNCTION__)); return __null; };
44684 virtual void* dispatch(RuleSetOptions*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""RuleSetOptions""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"RuleSetOptions\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 218, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(RuleSetOptions*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""RuleSetOptions""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"RuleSetOptions\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 218, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const RuleSetOptions*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""RuleSetOptions""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"RuleSetOptions\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 218, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const RuleSetOptions*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""RuleSetOptions""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"RuleSetOptions\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 218, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const RuleSetOptions*, void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""RuleSetOptions""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"RuleSetOptions\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 218, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const RuleSetOptions*, const void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""RuleSetOptions""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"RuleSetOptions\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 218, __PRETTY_FUNCTION__)); return __null; };
44685 virtual void* dispatch(SNMPManagement*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""SNMPManagement""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"SNMPManagement\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 219, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(SNMPManagement*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""SNMPManagement""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"SNMPManagement\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 219, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const SNMPManagement*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""SNMPManagement""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"SNMPManagement\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 219, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const SNMPManagement*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""SNMPManagement""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"SNMPManagement\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 219, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const SNMPManagement*, void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""SNMPManagement""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"SNMPManagement\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 219, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const SNMPManagement*, const void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""SNMPManagement""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"SNMPManagement\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 219, __PRETTY_FUNCTION__)); return __null; };
44686 virtual void* dispatch(Service*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""Service""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"Service\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 220, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(Service*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""Service""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"Service\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 220, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const Service*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""Service""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"Service\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 220, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const Service*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""Service""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"Service\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 220, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const Service*, void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""Service""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"Service\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 220, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const Service*, const void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""Service""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"Service\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 220, __PRETTY_FUNCTION__)); return __null; };
44687 virtual void* dispatch(ServiceGroup*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""ServiceGroup""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"ServiceGroup\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 221, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(ServiceGroup*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""ServiceGroup""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"ServiceGroup\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 221, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const ServiceGroup*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""ServiceGroup""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"ServiceGroup\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 221, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const ServiceGroup*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""ServiceGroup""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"ServiceGroup\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 221, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const ServiceGroup*, void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""ServiceGroup""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"ServiceGroup\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 221, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const ServiceGroup*, const void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""ServiceGroup""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"ServiceGroup\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 221, __PRETTY_FUNCTION__)); return __null; };
44688 virtual void* dispatch(StateSyncClusterGroup*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""StateSyncClusterGroup""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"StateSyncClusterGroup\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 222, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(StateSyncClusterGroup*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""StateSyncClusterGroup""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"StateSyncClusterGroup\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 222, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const StateSyncClusterGroup*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""StateSyncClusterGroup""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"StateSyncClusterGroup\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 222, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const StateSyncClusterGroup*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""StateSyncClusterGroup""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"StateSyncClusterGroup\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 222, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const StateSyncClusterGroup*, void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""StateSyncClusterGroup""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"StateSyncClusterGroup\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 222, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const StateSyncClusterGroup*, const void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""StateSyncClusterGroup""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"StateSyncClusterGroup\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 222, __PRETTY_FUNCTION__)); return __null; };
44689 virtual void* dispatch(TCPService*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""TCPService""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"TCPService\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 223, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(TCPService*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""TCPService""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"TCPService\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 223, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const TCPService*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""TCPService""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"TCPService\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 223, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const TCPService*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""TCPService""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"TCPService\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 223, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const TCPService*, void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""TCPService""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"TCPService\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 223, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const TCPService*, const void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""TCPService""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"TCPService\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 223, __PRETTY_FUNCTION__)); return __null; };
44690 virtual void* dispatch(TCPUDPService*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""TCPUDPService""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"TCPUDPService\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 224, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(TCPUDPService*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""TCPUDPService""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"TCPUDPService\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 224, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const TCPUDPService*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""TCPUDPService""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"TCPUDPService\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 224, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const TCPUDPService*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""TCPUDPService""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"TCPUDPService\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 224, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const TCPUDPService*, void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""TCPUDPService""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"TCPUDPService\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 224, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const TCPUDPService*, const void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""TCPUDPService""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"TCPUDPService\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 224, __PRETTY_FUNCTION__)); return __null; };
44691 virtual void* dispatch(TagService*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""TagService""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"TagService\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 225, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(TagService*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""TagService""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"TagService\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 225, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const TagService*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""TagService""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"TagService\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 225, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const TagService*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""TagService""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"TagService\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 225, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const TagService*, void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""TagService""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"TagService\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 225, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const TagService*, const void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""TagService""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"TagService\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 225, __PRETTY_FUNCTION__)); return __null; };
44692 virtual void* dispatch(UDPService*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""UDPService""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"UDPService\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 226, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(UDPService*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""UDPService""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"UDPService\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 226, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const UDPService*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""UDPService""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"UDPService\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 226, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const UDPService*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""UDPService""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"UDPService\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 226, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const UDPService*, void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""UDPService""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"UDPService\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 226, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const UDPService*, const void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""UDPService""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"UDPService\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 226, __PRETTY_FUNCTION__)); return __null; };
44693 virtual void* dispatch(UserService*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""UserService""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"UserService\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 227, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(UserService*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""UserService""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"UserService\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 227, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const UserService*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""UserService""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"UserService\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 227, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const UserService*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""UserService""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"UserService\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 227, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const UserService*, void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""UserService""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"UserService\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 227, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const UserService*, const void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""UserService""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"UserService\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 227, __PRETTY_FUNCTION__)); return __null; };
44694 virtual void* dispatch(physAddress*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""physAddress""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"physAddress\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 228, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(physAddress*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""physAddress""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"physAddress\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 228, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const physAddress*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""physAddress""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"physAddress\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 228, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const physAddress*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""physAddress""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"physAddress\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 228, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const physAddress*, void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""physAddress""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"physAddress\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 228, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const physAddress*, const void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""physAddress""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"physAddress\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 228, __PRETTY_FUNCTION__)); return __null; };
44695 virtual void* dispatch(DynamicGroup*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""DynamicGroup""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"DynamicGroup\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 229, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(DynamicGroup*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(""DynamicGroup""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(\"\"DynamicGroup\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 229, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const DynamicGroup*, void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""DynamicGroup""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"DynamicGroup\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 229, __PRETTY_FUNCTION__)); return __null; } virtual void* dispatch(const DynamicGroup*, const void*) { (("Call to unimplemented virtual void* Dispatch::dispatch(const ""DynamicGroup""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual void* Dispatch::dispatch(const \"\"DynamicGroup\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 229, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const DynamicGroup*, void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""DynamicGroup""*, void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"DynamicGroup\"\"*, void*)\"==__null", "../fwbuilder/Dispatch.h", 229, __PRETTY_FUNCTION__)); return __null; } virtual const void* const_dispatch(const DynamicGroup*, const void*) { (("Call to unimplemented virtual const void* Dispatch::const_dispatch(const ""DynamicGroup""*, const void*)"==__null) ? static_cast<void> (0) : __assert_fail ("\"Call to unimplemented virtual const void* Dispatch::const_dispatch(const \"\"DynamicGroup\"\"*, const void*)\"==__null", "../fwbuilder/Dispatch.h", 229, __PRETTY_FUNCTION__)); return __null; };
44696 };
44697 };
44698 # 35 "../fwbuilder/ObjectMatcher.h" 2
44699
44700
44701 namespace libfwbuilder
44702 {
44703
44704 class ObjectMatcher : public Dispatch
44705 {
44706
44707 public:
44708 typedef enum {EXACT, PARTIAL} address_range_match;
44709
44710 private:
44711 bool recognize_broadcasts;
44712 bool recognize_multicasts;
44713 bool ipv6;
44714 bool match_subnets;
44715 address_range_match address_range_match_mode;
44716
44717 bool checkComplexMatchForSingleAddress(const InetAddr *addr1,
44718 FWObject *obj2);
44719 int matchRHS(const InetAddr *addr1, Address *obj2);
44720 int matchInetAddrRHS(const InetAddr *addr1,
44721 const InetAddr *rhs_obj_addr);
44722 int matchSubnetRHS(const InetAddr *addr1,
44723 const InetAddr *rhs_obj_addr,
44724 const InetAddr *rhs_obj_netm);
44725
44726 public:
44727 ObjectMatcher() : Dispatch()
44728 {
44729 recognize_broadcasts = false;
44730 recognize_multicasts = false;
44731 ipv6 = false;
44732 match_subnets = false;
44733 address_range_match_mode = PARTIAL;
44734 }
44735
44736 virtual ~ObjectMatcher() {}
44737
44738 void setMatchSubnets(bool f) { match_subnets = f; }
44739 void setAddressRangeMatchMode(address_range_match f) { address_range_match_mode = f; }
44740 void setRecognizeBroadcasts(bool f) { recognize_broadcasts = f; }
44741 void setRecognizeMulticasts(bool f) { recognize_multicasts = f; }
44742 void setIPV6(bool f) { ipv6 = f; }
44743
44744
44745
44746
44747
44748 bool checkComplexMatchForSingleAddress(Address *obj1, FWObject *obj2);
44749
44750
44751
44752
44753 bool checkComplexMatchForSubnet(Address *obj1, FWObject *obj2);
44754 # 101 "../fwbuilder/ObjectMatcher.h"
44755 bool complexMatch(Address *obj1, Address *obj2);
44756
44757
44758 virtual void* dispatch(Interface*, void*);
44759 virtual void* dispatch(Network*, void*);
44760 virtual void* dispatch(NetworkIPv6*, void*);
44761 virtual void* dispatch(IPv4*, void*);
44762 virtual void* dispatch(IPv6*, void*);
44763 virtual void* dispatch(Host*, void*);
44764 virtual void* dispatch(Firewall*, void*);
44765 virtual void* dispatch(Cluster*, void*);
44766 virtual void* dispatch(AddressRange*, void*);
44767 virtual void* dispatch(physAddress*, void*);
44768 virtual void* dispatch(MultiAddressRunTime*, void*);
44769
44770 };
44771 };
44772 # 46 "../fwbuilder/FWObject.h" 2
44773
44774
44775
44776 namespace libfwbuilder
44777 {
44778
44779 class FWObject;
44780 class FWObjectDatabase;
44781 class FWReference;
44782 class FWObjectTypedChildIterator;
44783 class FWObjectFindPredicate;
44784
44785 #define DECLARE_FWOBJECT_SUBTYPE(name) static const char *TYPENAME; virtual std::string getTypeName() const { return TYPENAME; } static bool isA(const FWObject *o) { return o && o->getTypeName()==TYPENAME; } static name* cast(FWObject *o) { return dynamic_cast<name*>(o); } static const name* constcast(const FWObject *o) { return dynamic_cast<const name*>(o); }
44786
44787
44788
44789
44790
44791
44792 #define DECLARE_DISPATCH_METHODS(classname) virtual void* dispatch(Dispatch* _d, void* _a1) {return _d->dispatch(this, _a1); } virtual void* dispatch(Dispatch* _d, const void* _a1) {return _d->dispatch(this, _a1); } virtual void* dispatch(Dispatch* _d, void* _a1) const {return _d->dispatch(this, _a1); } virtual void* dispatch(Dispatch* _d, const void* _a1) const {return _d->dispatch(this, _a1); } virtual const void* const_dispatch(Dispatch* _d, void* _a1) const {return _d->const_dispatch(this, _a1); } virtual const void* const_dispatch(Dispatch* _d, const void* _a1) const {return _d->const_dispatch(this, _a1); }
44793 # 87 "../fwbuilder/FWObject.h"
44794 class FWObject : public std::list<FWObject*>
44795 {
44796 friend class libfwbuilder::FWObjectDatabase;
44797
44798 private:
44799
44800 int ref_counter;
44801
44802 FWObject *parent;
44803 # 113 "../fwbuilder/FWObject.h"
44804 FWObjectDatabase *dbroot;
44805 int id;
44806 bool ro;
44807 std::string name;
44808 std::string comment;
44809
44810 static std::string NOT_FOUND;
44811
44812 time_t creation_time;
44813 std::set<std::string> keywords;
44814
44815 static std::string dataDir;
44816
44817 protected:
44818
44819 std::string xml_name;
44820 bool busy;
44821 bool dirty;
44822
44823 std::map<std::string, std::string> data;
44824 std::map<std::string, void*> private_data;
44825
44826 void clearRefCounter() { ref_counter=0; }
44827
44828 void _removeAll(FWObject *rm);
44829 void _removeAllRef(FWObject *rm);
44830 void _adopt(FWObject *obj);
44831 void _findDependencies_internal(FWObject *obj,
44832 std::list<FWObject*> &deps,
44833 int anti_loop_id);
44834
44835 void setRO(bool f) { ro = f; }
44836
44837 virtual void replaceReferenceInternal(int oldfw_id, int newfw_id, int &counter);
44838
44839
44840
44841
44842 FWObject* _find(const std::string& name) const;
44843
44844
44845
44846
44847
44848
44849 virtual void findAllReferences(const FWObject *obj, std::set<FWReference*> &res);
44850 # 170 "../fwbuilder/FWObject.h"
44851 virtual void updateNonStandardObjectReferences();
44852
44853 FWObject();
44854
44855
44856 FWObject(bool new_id);
44857
44858 public:
44859
44860 static const char *TYPENAME; virtual std::string getTypeName() const { return TYPENAME; } static bool isA(const FWObject *o) { return o && o->getTypeName()==TYPENAME; } static FWObject* cast(FWObject *o) { return dynamic_cast<FWObject*>(o); } static const FWObject* constcast(const FWObject *o) { return dynamic_cast<const FWObject*>(o); };
44861
44862 virtual void* dispatch(Dispatch* _d, void* _a1) {return _d->dispatch(this, _a1); } virtual void* dispatch(Dispatch* _d, const void* _a1) {return _d->dispatch(this, _a1); } virtual void* dispatch(Dispatch* _d, void* _a1) const {return _d->dispatch(this, _a1); } virtual void* dispatch(Dispatch* _d, const void* _a1) const {return _d->dispatch(this, _a1); } virtual const void* const_dispatch(Dispatch* _d, void* _a1) const {return _d->const_dispatch(this, _a1); } virtual const void* const_dispatch(Dispatch* _d, const void* _a1) const {return _d->const_dispatch(this, _a1); };
44863
44864 class tree_iterator
44865 {
44866 friend class libfwbuilder::FWObject;
44867
44868 FWObject *node;
44869
44870 public:
44871 tree_iterator() { node=__null; }
44872 tree_iterator(FWObject *_n) { node=_n; }
44873 tree_iterator(const tree_iterator &ti) { node=ti.node; }
44874 FWObject* operator*() { return node; }
44875 tree_iterator& operator++();
44876 tree_iterator operator++(int);
44877 tree_iterator& operator=(const tree_iterator &ti)
44878 { node=ti.node; return *this; }
44879 bool operator==(const tree_iterator& i) const;
44880 bool operator!=(const tree_iterator& i) const;
44881 };
44882
44883
44884 tree_iterator tree_begin();
44885 tree_iterator tree_end();
44886
44887
44888 FWObject(const FWObject &copy);
44889 # 216 "../fwbuilder/FWObject.h"
44890 virtual void init(FWObjectDatabase *root);
44891
44892 int getId() const;
44893 void setId(int i);
44894 bool haveId() { return (id != -1); }
44895
44896
44897
44898
44899
44900
44901
44902 bool getRO() const { return ro; }
44903
44904 virtual void fromXML(xmlNodePtr xml_parent_node) throw(FWException);
44905 virtual xmlNodePtr toXML(xmlNodePtr xml_parent_node) throw(FWException);
44906 xmlNodePtr toXML(xmlNodePtr xml_parent_node, bool process_children)
44907 throw(FWException);
44908 # 242 "../fwbuilder/FWObject.h"
44909 void setXMLName (const std::string &);
44910
44911 virtual ~FWObject();
44912
44913 int ref() { ++ref_counter; return(ref_counter); }
44914 int unref() { --ref_counter; return(ref_counter); }
44915 int getRefCounter() { return(ref_counter); }
44916
44917
44918
44919
44920 virtual FWObject& operator=(const FWObject &) throw(FWException);
44921
44922
44923
44924
44925
44926
44927
44928 virtual FWObject& duplicate(const FWObject *obj,
44929 bool preserve_id = true) throw(FWException);
44930
44931
44932
44933
44934
44935 virtual FWObject& shallowDuplicate(const FWObject *obj, bool preserve_id = true)
44936 throw(FWException);
44937 # 280 "../fwbuilder/FWObject.h"
44938 virtual FWObject& duplicateForUndo(const FWObject *obj) throw(FWException);
44939
44940
44941
44942
44943
44944
44945 virtual FWObject* addCopyOf(const FWObject *obj, bool preserve_id = true)
44946 throw(FWException);
44947
44948
44949
44950
44951
44952 virtual bool cmp(const FWObject *obj, bool recursive=false) throw(FWException);
44953
44954 void Show();
44955 void Hide();
44956
44957 FWObject* getParent() const;
44958 void setParent(FWObject *p);
44959
44960 bool exists(const std::string &name) const;
44961
44962 void remStr(const std::string &name);
44963
44964 const std::string &getStr(const std::string& name) const;
44965 void setStr(const std::string &name, const std::string &val);
44966
44967 int getInt(const std::string &name) const;
44968 void setInt(const std::string &name, int val);
44969
44970 bool getBool(const std::string &name) const;
44971 void setBool(const std::string &name, bool val);
44972 void setBool(const std::string &name, const std::string &val);
44973
44974 const std::string &getName() const;
44975 void setName(const std::string& n);
44976
44977 const std::string &getComment() const;
44978 void setComment(const std::string& c);
44979
44980 void storeCreationTime() { creation_time = time(__null); }
44981 time_t getCreationTime() { return creation_time; }
44982
44983 void setPrivateData(const std::string &key, void *data);
44984 void* getPrivateData(const std::string &key) const;
44985 std::map<std::string, void*> &getAllPrivateData();
44986
44987
44988
44989
44990
44991
44992
44993 const std::string &getLibraryName() const;
44994
44995
44996
44997
44998 FWObject* getLibrary() const;
44999
45000
45001
45002
45003 FWObjectDatabase* getRoot() const;
45004 int getDistanceFromRoot() const;
45005
45006
45007
45008
45009 void setRoot(const FWObjectDatabase *_dbroot)
45010 { dbroot = (FWObjectDatabase*)_dbroot; }
45011 # 361 "../fwbuilder/FWObject.h"
45012 std::string getPath(bool relative=false, bool detailed=false) const;
45013
45014 void addAt(int where_id, FWObject *obj);
45015 virtual void add(FWObject *obj,bool validate=true);
45016 virtual void insert_before(FWObject *o1,FWObject *obj);
45017 virtual void insert_after(FWObject *o1,FWObject *obj);
45018
45019
45020
45021
45022 virtual void reparent(FWObject *obj,bool validate=true);
45023
45024
45025
45026
45027
45028 virtual void swapObjects(FWObject *o1,FWObject *o2);
45029
45030
45031
45032
45033
45034
45035 virtual void remove(FWObject *obj, bool delete_if_last=true);
45036
45037
45038
45039
45040
45041 virtual void removeAllInstances(FWObject *obj);
45042
45043
45044
45045
45046 virtual void addRef(FWObject *obj);
45047
45048
45049
45050
45051
45052 virtual void removeRef(FWObject *obj);
45053
45054
45055
45056
45057 virtual bool hasRef(FWObject *obj);
45058
45059
45060
45061
45062
45063 virtual void removeAllReferences(FWObject *obj);
45064
45065
45066
45067
45068
45069 virtual std::set<FWReference*> findAllReferences(const FWObject *obj);
45070
45071
45072
45073
45074
45075
45076
45077 virtual FWReference* createRef();
45078
45079
45080
45081
45082 virtual bool validateChild(FWObject *o);
45083
45084
45085
45086
45087
45088
45089 void destroyChildren();
45090
45091 void clearChildren(bool recursive=true);
45092
45093 void sortChildrenByName(bool follow_references=false);
45094
45095
45096
45097
45098
45099
45100 bool verifyTree();
45101 # 459 "../fwbuilder/FWObject.h"
45102 void fixTree();
45103
45104 int getChildrenCount() const;
45105
45106 virtual void dump(bool recursive,bool brief,int offset=0) const;
45107 virtual void dump(std::ostream &f,bool recursive,bool brief,int offset=0) const;
45108
45109
45110
45111
45112
45113 bool isChildOf(FWObject *obj);
45114
45115 bool hasChild(FWObject *obj);
45116
45117
45118
45119
45120
45121
45122
45123 virtual FWObject* getById(int id, bool recursive=false);
45124
45125
45126
45127
45128
45129
45130
45131 virtual std::list<FWObject*> getByType(const std::string &type_name) const;
45132
45133
45134
45135
45136
45137
45138 virtual std::list<FWObject*> getByTypeDeep(const std::string &type_name) const;
45139
45140
45141
45142
45143
45144
45145 virtual FWObjectTypedChildIterator findByType(
45146 const std::string &type_name) const;
45147
45148
45149
45150
45151
45152 virtual FWObject* getFirstByType(const std::string &type_name) const;
45153
45154
45155
45156
45157 FWObject* findObjectByName(const std::string &type,
45158 const std::string &name) throw(FWException);
45159
45160
45161
45162
45163 FWObject* findObjectByAttribute(const std::string &attr,
45164 const std::string &val) throw(FWException);
45165
45166
45167
45168
45169
45170
45171 std::list<FWObject*> findIf(FWObjectFindPredicate *pred);
45172
45173
45174
45175
45176
45177 virtual int replaceRef(int oldfw_id, int newfw_id);
45178
45179
45180
45181
45182
45183
45184 void findDependencies(std::list<FWObject*> &deps);
45185
45186
45187 virtual void setDirty(bool f);
45188 virtual bool isDirty();
45189
45190
45191
45192
45193
45194
45195
45196 virtual void setReadOnly(bool f);
45197 virtual bool isReadOnly();
45198 virtual void checkReadOnly() throw(FWException);
45199 # 564 "../fwbuilder/FWObject.h"
45200 virtual bool isPrimaryObject() const;
45201
45202
45203 std::map<std::string, std::string>::const_iterator dataBegin()
45204 { return data.begin(); }
45205 std::map<std::string, std::string>::const_iterator dataEnd()
45206 { return data.end(); }
45207
45208 const std::set<std::string> &getKeywords() { return keywords; }
45209 const std::set<std::string> &getAllKeywords();
45210 void addKeyword(const std::string &keyword);
45211 void removeKeyword(const std::string &keyword);
45212 void clearKeywords();
45213
45214 static std::string getDataDir() { return dataDir; }
45215 static void setDataDir(const std::string &dir) { dataDir = dir; }
45216 };
45217
45218 class FWObjectTypedChildIterator
45219 {
45220 public:
45221
45222 FWObjectTypedChildIterator();
45223 FWObjectTypedChildIterator(const FWObjectTypedChildIterator &o);
45224 FWObjectTypedChildIterator(const FWObject *o, const std::string &_type_name);
45225
45226 bool operator==(const FWObject::const_iterator& __x) const;
45227 bool operator!=(const FWObject::const_iterator& __x) const;
45228 FWObject *operator*() const;
45229 FWObjectTypedChildIterator& operator++();
45230 FWObjectTypedChildIterator& operator--();
45231
45232 const FWObject::const_iterator &begin() { return _begin; }
45233 const FWObject::const_iterator & end() { return _end ; }
45234
45235 protected:
45236
45237 std::string type_name;
45238 FWObject::const_iterator real_iterator;
45239 FWObject::const_iterator _begin;
45240 FWObject::const_iterator _end;
45241
45242 void init(const FWObject *o, const std::string &_type_name);
45243 };
45244
45245
45246
45247
45248
45249
45250 class FWObjectNameEQPredicate: public std::unary_function<FWObject*, bool>
45251 {
45252 std::string n;
45253
45254 public:
45255
45256 FWObjectNameEQPredicate(const std::string &name):n(name) {}
45257
45258 bool operator()(const FWObject *o) const
45259 {
45260 return o->getName()==n;
45261 }
45262 };
45263
45264 struct FWObjectNameCmpPredicate :
45265 public std::binary_function<FWObject*, FWObject*, bool>
45266 {
45267 bool follow_references;
45268 FWObjectNameCmpPredicate(bool follow_refs=false);
45269 bool operator()(FWObject *a,FWObject *b);
45270 };
45271
45272 class findFWObjectIDPredicate : public std::unary_function<FWObject*, bool>
45273 {
45274 int _id;
45275 public:
45276 findFWObjectIDPredicate(int id):_id(id) {}
45277 bool operator()(const FWObject *o) const
45278 {return o->getId()==_id;}
45279 };
45280
45281
45282
45283
45284
45285
45286 class FWObjectTypeNameEQPredicate: public std::unary_function<FWObject*, bool>
45287 {
45288 std::string n;
45289
45290 public:
45291
45292 FWObjectTypeNameEQPredicate(const std::string &name):n(name) {}
45293
45294 bool operator()(const FWObject *o) const
45295 {
45296 return o->getTypeName()==n;
45297 }
45298 };
45299
45300
45301
45302
45303
45304 class FWObjectFindPredicate
45305 {
45306 public:
45307 FWObjectFindPredicate() {}
45308 virtual ~FWObjectFindPredicate() {}
45309 virtual bool operator()(FWObject*) const { std::cerr << "#"; return false; }
45310 };
45311
45312
45313
45314 }
45315 # 31 "../fwbuilder/Address.h" 2
45316 # 1 "../fwbuilder/InetAddr.h" 1
45317 # 28 "../fwbuilder/InetAddr.h"
45318 #define __INETADDR_HH_FLAG__
45319
45320
45321 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/vector" 1 3
45322 # 57 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/vector" 3
45323 #define _GLIBCXX_VECTOR 1
45324
45325
45326 # 60 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/vector" 3
45327
45328
45329
45330 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_construct.h" 1 3
45331 # 58 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_construct.h" 3
45332 #define _STL_CONSTRUCT_H 1
45333
45334
45335
45336
45337 namespace std __attribute__ ((__visibility__ ("default"))) {
45338
45339
45340
45341
45342
45343 template<typename _T1, typename _T2>
45344 inline void
45345
45346
45347
45348
45349 _Construct(_T1* __p, const _T2& __value)
45350
45351 {
45352
45353
45354 ::new(static_cast<void*>(__p)) _T1((__value));
45355 }
45356
45357
45358
45359
45360 template<typename _Tp>
45361 inline void
45362 _Destroy(_Tp* __pointer)
45363 { __pointer->~_Tp(); }
45364
45365 template<bool>
45366 struct _Destroy_aux
45367 {
45368 template<typename _ForwardIterator>
45369 static void
45370 __destroy(_ForwardIterator __first, _ForwardIterator __last)
45371 {
45372 for (; __first != __last; ++__first)
45373 std::_Destroy(&*__first);
45374 }
45375 };
45376
45377 template<>
45378 struct _Destroy_aux<true>
45379 {
45380 template<typename _ForwardIterator>
45381 static void
45382 __destroy(_ForwardIterator, _ForwardIterator) { }
45383 };
45384
45385
45386
45387
45388
45389
45390 template<typename _ForwardIterator>
45391 inline void
45392 _Destroy(_ForwardIterator __first, _ForwardIterator __last)
45393 {
45394 typedef typename iterator_traits<_ForwardIterator>::value_type
45395 _Value_type;
45396 std::_Destroy_aux<__has_trivial_destructor(_Value_type)>::
45397 __destroy(__first, __last);
45398 }
45399
45400
45401
45402
45403
45404
45405
45406 template <typename _Tp> class allocator;
45407
45408 template<typename _ForwardIterator, typename _Allocator>
45409 void
45410 _Destroy(_ForwardIterator __first, _ForwardIterator __last,
45411 _Allocator& __alloc)
45412 {
45413 for (; __first != __last; ++__first)
45414 __alloc.destroy(&*__first);
45415 }
45416
45417 template<typename _ForwardIterator, typename _Tp>
45418 inline void
45419 _Destroy(_ForwardIterator __first, _ForwardIterator __last,
45420 allocator<_Tp>&)
45421 {
45422 _Destroy(__first, __last);
45423 }
45424
45425 }
45426 # 64 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/vector" 2 3
45427 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_uninitialized.h" 1 3
45428 # 58 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_uninitialized.h" 3
45429 #define _STL_UNINITIALIZED_H 1
45430
45431 namespace std __attribute__ ((__visibility__ ("default"))) {
45432
45433 template<bool>
45434 struct __uninitialized_copy
45435 {
45436 template<typename _InputIterator, typename _ForwardIterator>
45437 static _ForwardIterator
45438 uninitialized_copy(_InputIterator __first, _InputIterator __last,
45439 _ForwardIterator __result)
45440 {
45441 _ForwardIterator __cur = __result;
45442 try
45443 {
45444 for (; __first != __last; ++__first, ++__cur)
45445 std::_Construct(&*__cur, *__first);
45446 return __cur;
45447 }
45448 catch(...)
45449 {
45450 std::_Destroy(__result, __cur);
45451 throw;
45452 }
45453 }
45454 };
45455
45456 template<>
45457 struct __uninitialized_copy<true>
45458 {
45459 template<typename _InputIterator, typename _ForwardIterator>
45460 static _ForwardIterator
45461 uninitialized_copy(_InputIterator __first, _InputIterator __last,
45462 _ForwardIterator __result)
45463 { return std::copy(__first, __last, __result); }
45464 };
45465 # 104 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_uninitialized.h" 3
45466 template<typename _InputIterator, typename _ForwardIterator>
45467 inline _ForwardIterator
45468 uninitialized_copy(_InputIterator __first, _InputIterator __last,
45469 _ForwardIterator __result)
45470 {
45471 typedef typename iterator_traits<_InputIterator>::value_type
45472 _ValueType1;
45473 typedef typename iterator_traits<_ForwardIterator>::value_type
45474 _ValueType2;
45475
45476 return std::__uninitialized_copy<(__is_pod(_ValueType1)
45477 && __is_pod(_ValueType2))>::
45478 uninitialized_copy(__first, __last, __result);
45479 }
45480
45481
45482 template<bool>
45483 struct __uninitialized_fill
45484 {
45485 template<typename _ForwardIterator, typename _Tp>
45486 static void
45487 uninitialized_fill(_ForwardIterator __first,
45488 _ForwardIterator __last, const _Tp& __x)
45489 {
45490 _ForwardIterator __cur = __first;
45491 try
45492 {
45493 for (; __cur != __last; ++__cur)
45494 std::_Construct(&*__cur, __x);
45495 }
45496 catch(...)
45497 {
45498 std::_Destroy(__first, __cur);
45499 throw;
45500 }
45501 }
45502 };
45503
45504 template<>
45505 struct __uninitialized_fill<true>
45506 {
45507 template<typename _ForwardIterator, typename _Tp>
45508 static void
45509 uninitialized_fill(_ForwardIterator __first,
45510 _ForwardIterator __last, const _Tp& __x)
45511 { std::fill(__first, __last, __x); }
45512 };
45513 # 161 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_uninitialized.h" 3
45514 template<typename _ForwardIterator, typename _Tp>
45515 inline void
45516 uninitialized_fill(_ForwardIterator __first, _ForwardIterator __last,
45517 const _Tp& __x)
45518 {
45519 typedef typename iterator_traits<_ForwardIterator>::value_type
45520 _ValueType;
45521
45522 std::__uninitialized_fill<__is_pod(_ValueType)>::
45523 uninitialized_fill(__first, __last, __x);
45524 }
45525
45526
45527 template<bool>
45528 struct __uninitialized_construct_range_dispatch
45529 {
45530 template<typename _ForwardIterator, typename _Tp>
45531 static void
45532 __ucr(_ForwardIterator __first, _ForwardIterator __last,
45533 _Tp& __value)
45534 {
45535 if(__first == __last)
45536 return;
45537
45538 _ForwardIterator __cur = __first;
45539 try
45540 {
45541 std::_Construct(&*__first, (__value));
45542 _ForwardIterator __prev = __cur;
45543 ++__cur;
45544 for(; __cur != __last; ++__cur, ++__prev)
45545 std::_Construct(&*__cur, (*__prev));
45546 __value = (*__prev);
45547 }
45548 catch(...)
45549 {
45550 std::_Destroy(__first, __cur);
45551 throw;
45552 }
45553 }
45554 };
45555
45556 template<>
45557 struct __uninitialized_construct_range_dispatch<true>
45558 {
45559 template<typename _ForwardIterator, typename _Tp>
45560 static void
45561 __ucr(_ForwardIterator, _ForwardIterator, _Tp&) { }
45562 };
45563 # 221 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_uninitialized.h" 3
45564 template<typename _ForwardIterator, typename _Tp>
45565 inline void
45566 __uninitialized_construct_range(_ForwardIterator __first,
45567 _ForwardIterator __last,
45568 _Tp& __value)
45569 {
45570 typedef typename std::iterator_traits<_ForwardIterator>::value_type
45571 _ValueType;
45572
45573 std::__uninitialized_construct_range_dispatch<
45574 __has_trivial_constructor(_ValueType)>::
45575 __ucr(__first, __last, __value);
45576 }
45577
45578
45579 template<bool>
45580 struct __uninitialized_fill_n
45581 {
45582 template<typename _ForwardIterator, typename _Size, typename _Tp>
45583 static void
45584 uninitialized_fill_n(_ForwardIterator __first, _Size __n,
45585 const _Tp& __x)
45586 {
45587 _ForwardIterator __cur = __first;
45588 try
45589 {
45590 for (; __n > 0; --__n, ++__cur)
45591 std::_Construct(&*__cur, __x);
45592 }
45593 catch(...)
45594 {
45595 std::_Destroy(__first, __cur);
45596 throw;
45597 }
45598 }
45599 };
45600
45601 template<>
45602 struct __uninitialized_fill_n<true>
45603 {
45604 template<typename _ForwardIterator, typename _Size, typename _Tp>
45605 static void
45606 uninitialized_fill_n(_ForwardIterator __first, _Size __n,
45607 const _Tp& __x)
45608 { std::fill_n(__first, __n, __x); }
45609 };
45610 # 277 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_uninitialized.h" 3
45611 template<typename _ForwardIterator, typename _Size, typename _Tp>
45612 inline void
45613 uninitialized_fill_n(_ForwardIterator __first, _Size __n, const _Tp& __x)
45614 {
45615 typedef typename iterator_traits<_ForwardIterator>::value_type
45616 _ValueType;
45617
45618 std::__uninitialized_fill_n<__is_pod(_ValueType)>::
45619 uninitialized_fill_n(__first, __n, __x);
45620 }
45621
45622
45623
45624
45625
45626
45627
45628 template<typename _InputIterator, typename _ForwardIterator,
45629 typename _Allocator>
45630 _ForwardIterator
45631 __uninitialized_copy_a(_InputIterator __first, _InputIterator __last,
45632 _ForwardIterator __result, _Allocator& __alloc)
45633 {
45634 _ForwardIterator __cur = __result;
45635 try
45636 {
45637 for (; __first != __last; ++__first, ++__cur)
45638 __alloc.construct(&*__cur, *__first);
45639 return __cur;
45640 }
45641 catch(...)
45642 {
45643 std::_Destroy(__result, __cur, __alloc);
45644 throw;
45645 }
45646 }
45647
45648 template<typename _InputIterator, typename _ForwardIterator, typename _Tp>
45649 inline _ForwardIterator
45650 __uninitialized_copy_a(_InputIterator __first, _InputIterator __last,
45651 _ForwardIterator __result, allocator<_Tp>&)
45652 { return std::uninitialized_copy(__first, __last, __result); }
45653
45654 template<typename _InputIterator, typename _ForwardIterator,
45655 typename _Allocator>
45656 inline _ForwardIterator
45657 __uninitialized_move_a(_InputIterator __first, _InputIterator __last,
45658 _ForwardIterator __result, _Allocator& __alloc)
45659 {
45660 return std::__uninitialized_copy_a((__first),
45661 (__last),
45662 __result, __alloc);
45663 }
45664
45665 template<typename _ForwardIterator, typename _Tp, typename _Allocator>
45666 void
45667 __uninitialized_fill_a(_ForwardIterator __first, _ForwardIterator __last,
45668 const _Tp& __x, _Allocator& __alloc)
45669 {
45670 _ForwardIterator __cur = __first;
45671 try
45672 {
45673 for (; __cur != __last; ++__cur)
45674 __alloc.construct(&*__cur, __x);
45675 }
45676 catch(...)
45677 {
45678 std::_Destroy(__first, __cur, __alloc);
45679 throw;
45680 }
45681 }
45682
45683 template<typename _ForwardIterator, typename _Tp, typename _Tp2>
45684 inline void
45685 __uninitialized_fill_a(_ForwardIterator __first, _ForwardIterator __last,
45686 const _Tp& __x, allocator<_Tp2>&)
45687 { std::uninitialized_fill(__first, __last, __x); }
45688
45689 template<typename _ForwardIterator, typename _Size, typename _Tp,
45690 typename _Allocator>
45691 void
45692 __uninitialized_fill_n_a(_ForwardIterator __first, _Size __n,
45693 const _Tp& __x, _Allocator& __alloc)
45694 {
45695 _ForwardIterator __cur = __first;
45696 try
45697 {
45698 for (; __n > 0; --__n, ++__cur)
45699 __alloc.construct(&*__cur, __x);
45700 }
45701 catch(...)
45702 {
45703 std::_Destroy(__first, __cur, __alloc);
45704 throw;
45705 }
45706 }
45707
45708 template<typename _ForwardIterator, typename _Size, typename _Tp,
45709 typename _Tp2>
45710 inline void
45711 __uninitialized_fill_n_a(_ForwardIterator __first, _Size __n,
45712 const _Tp& __x, allocator<_Tp2>&)
45713 { std::uninitialized_fill_n(__first, __n, __x); }
45714 # 391 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_uninitialized.h" 3
45715 template<typename _InputIterator1, typename _InputIterator2,
45716 typename _ForwardIterator, typename _Allocator>
45717 inline _ForwardIterator
45718 __uninitialized_copy_move(_InputIterator1 __first1,
45719 _InputIterator1 __last1,
45720 _InputIterator2 __first2,
45721 _InputIterator2 __last2,
45722 _ForwardIterator __result,
45723 _Allocator& __alloc)
45724 {
45725 _ForwardIterator __mid = std::__uninitialized_copy_a(__first1, __last1,
45726 __result,
45727 __alloc);
45728 try
45729 {
45730 return std::__uninitialized_move_a(__first2, __last2, __mid, __alloc);
45731 }
45732 catch(...)
45733 {
45734 std::_Destroy(__result, __mid, __alloc);
45735 throw;
45736 }
45737 }
45738
45739
45740
45741
45742
45743 template<typename _InputIterator1, typename _InputIterator2,
45744 typename _ForwardIterator, typename _Allocator>
45745 inline _ForwardIterator
45746 __uninitialized_move_copy(_InputIterator1 __first1,
45747 _InputIterator1 __last1,
45748 _InputIterator2 __first2,
45749 _InputIterator2 __last2,
45750 _ForwardIterator __result,
45751 _Allocator& __alloc)
45752 {
45753 _ForwardIterator __mid = std::__uninitialized_move_a(__first1, __last1,
45754 __result,
45755 __alloc);
45756 try
45757 {
45758 return std::__uninitialized_copy_a(__first2, __last2, __mid, __alloc);
45759 }
45760 catch(...)
45761 {
45762 std::_Destroy(__result, __mid, __alloc);
45763 throw;
45764 }
45765 }
45766
45767
45768
45769
45770 template<typename _ForwardIterator, typename _Tp, typename _InputIterator,
45771 typename _Allocator>
45772 inline _ForwardIterator
45773 __uninitialized_fill_move(_ForwardIterator __result, _ForwardIterator __mid,
45774 const _Tp& __x, _InputIterator __first,
45775 _InputIterator __last, _Allocator& __alloc)
45776 {
45777 std::__uninitialized_fill_a(__result, __mid, __x, __alloc);
45778 try
45779 {
45780 return std::__uninitialized_move_a(__first, __last, __mid, __alloc);
45781 }
45782 catch(...)
45783 {
45784 std::_Destroy(__result, __mid, __alloc);
45785 throw;
45786 }
45787 }
45788
45789
45790
45791
45792 template<typename _InputIterator, typename _ForwardIterator, typename _Tp,
45793 typename _Allocator>
45794 inline void
45795 __uninitialized_move_fill(_InputIterator __first1, _InputIterator __last1,
45796 _ForwardIterator __first2,
45797 _ForwardIterator __last2, const _Tp& __x,
45798 _Allocator& __alloc)
45799 {
45800 _ForwardIterator __mid2 = std::__uninitialized_move_a(__first1, __last1,
45801 __first2,
45802 __alloc);
45803 try
45804 {
45805 std::__uninitialized_fill_a(__mid2, __last2, __x, __alloc);
45806 }
45807 catch(...)
45808 {
45809 std::_Destroy(__first2, __mid2, __alloc);
45810 throw;
45811 }
45812 }
45813 # 537 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_uninitialized.h" 3
45814 }
45815 # 65 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/vector" 2 3
45816 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_vector.h" 1 3
45817 # 58 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_vector.h" 3
45818 #define _STL_VECTOR_H 1
45819
45820
45821
45822
45823
45824
45825 namespace std __attribute__ ((__visibility__ ("default"))) {
45826
45827
45828 template<typename _Tp, typename _Alloc>
45829 struct _Vector_base
45830 {
45831 typedef typename _Alloc::template rebind<_Tp>::other _Tp_alloc_type;
45832
45833 struct _Vector_impl
45834 : public _Tp_alloc_type
45835 {
45836 typename _Tp_alloc_type::pointer _M_start;
45837 typename _Tp_alloc_type::pointer _M_finish;
45838 typename _Tp_alloc_type::pointer _M_end_of_storage;
45839
45840 _Vector_impl()
45841 : _Tp_alloc_type(), _M_start(0), _M_finish(0), _M_end_of_storage(0)
45842 { }
45843
45844 _Vector_impl(_Tp_alloc_type const& __a)
45845 : _Tp_alloc_type(__a), _M_start(0), _M_finish(0), _M_end_of_storage(0)
45846 { }
45847 };
45848
45849 public:
45850 typedef _Alloc allocator_type;
45851
45852 _Tp_alloc_type&
45853 _M_get_Tp_allocator()
45854 { return *static_cast<_Tp_alloc_type*>(&this->_M_impl); }
45855
45856 const _Tp_alloc_type&
45857 _M_get_Tp_allocator() const
45858 { return *static_cast<const _Tp_alloc_type*>(&this->_M_impl); }
45859
45860 allocator_type
45861 get_allocator() const
45862 { return allocator_type(_M_get_Tp_allocator()); }
45863
45864 _Vector_base()
45865 : _M_impl() { }
45866
45867 _Vector_base(const allocator_type& __a)
45868 : _M_impl(__a) { }
45869
45870 _Vector_base(size_t __n, const allocator_type& __a)
45871 : _M_impl(__a)
45872 {
45873 this->_M_impl._M_start = this->_M_allocate(__n);
45874 this->_M_impl._M_finish = this->_M_impl._M_start;
45875 this->_M_impl._M_end_of_storage = this->_M_impl._M_start + __n;
45876 }
45877 # 131 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_vector.h" 3
45878 ~_Vector_base()
45879 { _M_deallocate(this->_M_impl._M_start, this->_M_impl._M_end_of_storage
45880 - this->_M_impl._M_start); }
45881
45882 public:
45883 _Vector_impl _M_impl;
45884
45885 typename _Tp_alloc_type::pointer
45886 _M_allocate(size_t __n)
45887 { return __n != 0 ? _M_impl.allocate(__n) : 0; }
45888
45889 void
45890 _M_deallocate(typename _Tp_alloc_type::pointer __p, size_t __n)
45891 {
45892 if (__p)
45893 _M_impl.deallocate(__p, __n);
45894 }
45895 };
45896 # 169 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_vector.h" 3
45897 template<typename _Tp, typename _Alloc = std::allocator<_Tp> >
45898 class vector : protected _Vector_base<_Tp, _Alloc>
45899 {
45900
45901 typedef typename _Alloc::value_type _Alloc_value_type;
45902
45903
45904
45905 typedef _Vector_base<_Tp, _Alloc> _Base;
45906 typedef typename _Base::_Tp_alloc_type _Tp_alloc_type;
45907
45908 public:
45909 typedef _Tp value_type;
45910 typedef typename _Tp_alloc_type::pointer pointer;
45911 typedef typename _Tp_alloc_type::const_pointer const_pointer;
45912 typedef typename _Tp_alloc_type::reference reference;
45913 typedef typename _Tp_alloc_type::const_reference const_reference;
45914 typedef __gnu_cxx::__normal_iterator<pointer, vector> iterator;
45915 typedef __gnu_cxx::__normal_iterator<const_pointer, vector>
45916 const_iterator;
45917 typedef std::reverse_iterator<const_iterator> const_reverse_iterator;
45918 typedef std::reverse_iterator<iterator> reverse_iterator;
45919 typedef size_t size_type;
45920 typedef ptrdiff_t difference_type;
45921 typedef _Alloc allocator_type;
45922
45923 protected:
45924 using _Base::_M_allocate;
45925 using _Base::_M_deallocate;
45926 using _Base::_M_impl;
45927 using _Base::_M_get_Tp_allocator;
45928
45929 public:
45930
45931
45932
45933
45934
45935 vector()
45936 : _Base() { }
45937
45938
45939
45940
45941
45942 explicit
45943 vector(const allocator_type& __a)
45944 : _Base(__a) { }
45945 # 226 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_vector.h" 3
45946 explicit
45947 vector(size_type __n, const value_type& __value = value_type(),
45948 const allocator_type& __a = allocator_type())
45949 : _Base(__n, __a)
45950 { _M_fill_initialize(__n, __value); }
45951 # 241 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_vector.h" 3
45952 vector(const vector& __x)
45953 : _Base(__x.size(), __x._M_get_Tp_allocator())
45954 { this->_M_impl._M_finish =
45955 std::__uninitialized_copy_a(__x.begin(), __x.end(),
45956 this->_M_impl._M_start,
45957 _M_get_Tp_allocator());
45958 }
45959 # 296 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_vector.h" 3
45960 template<typename _InputIterator>
45961 vector(_InputIterator __first, _InputIterator __last,
45962 const allocator_type& __a = allocator_type())
45963 : _Base(__a)
45964 {
45965
45966 typedef typename std::__is_integer<_InputIterator>::__type _Integral;
45967 _M_initialize_dispatch(__first, __last, _Integral());
45968 }
45969
45970
45971
45972
45973
45974
45975
45976 ~vector()
45977 { std::_Destroy(this->_M_impl._M_start, this->_M_impl._M_finish,
45978 _M_get_Tp_allocator()); }
45979 # 324 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_vector.h" 3
45980 vector&
45981 operator=(const vector& __x);
45982 # 374 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_vector.h" 3
45983 void
45984 assign(size_type __n, const value_type& __val)
45985 { _M_fill_assign(__n, __val); }
45986 # 390 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_vector.h" 3
45987 template<typename _InputIterator>
45988 void
45989 assign(_InputIterator __first, _InputIterator __last)
45990 {
45991
45992 typedef typename std::__is_integer<_InputIterator>::__type _Integral;
45993 _M_assign_dispatch(__first, __last, _Integral());
45994 }
45995 # 417 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_vector.h" 3
45996 using _Base::get_allocator;
45997
45998
45999
46000
46001
46002
46003
46004 iterator
46005 begin()
46006 { return iterator(this->_M_impl._M_start); }
46007
46008
46009
46010
46011
46012
46013 const_iterator
46014 begin() const
46015 { return const_iterator(this->_M_impl._M_start); }
46016
46017
46018
46019
46020
46021
46022 iterator
46023 end()
46024 { return iterator(this->_M_impl._M_finish); }
46025
46026
46027
46028
46029
46030
46031 const_iterator
46032 end() const
46033 { return const_iterator(this->_M_impl._M_finish); }
46034
46035
46036
46037
46038
46039
46040 reverse_iterator
46041 rbegin()
46042 { return reverse_iterator(end()); }
46043
46044
46045
46046
46047
46048
46049 const_reverse_iterator
46050 rbegin() const
46051 { return const_reverse_iterator(end()); }
46052
46053
46054
46055
46056
46057
46058 reverse_iterator
46059 rend()
46060 { return reverse_iterator(begin()); }
46061
46062
46063
46064
46065
46066
46067 const_reverse_iterator
46068 rend() const
46069 { return const_reverse_iterator(begin()); }
46070 # 532 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_vector.h" 3
46071 size_type
46072 size() const
46073 { return size_type(this->_M_impl._M_finish - this->_M_impl._M_start); }
46074
46075
46076 size_type
46077 max_size() const
46078 { return _M_get_Tp_allocator().max_size(); }
46079 # 552 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_vector.h" 3
46080 void
46081 resize(size_type __new_size, value_type __x = value_type())
46082 {
46083 if (__new_size < size())
46084 _M_erase_at_end(this->_M_impl._M_start + __new_size);
46085 else
46086 insert(end(), __new_size - size(), __x);
46087 }
46088 # 572 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_vector.h" 3
46089 size_type
46090 capacity() const
46091 { return size_type(this->_M_impl._M_end_of_storage
46092 - this->_M_impl._M_start); }
46093
46094
46095
46096
46097
46098 bool
46099 empty() const
46100 { return begin() == end(); }
46101 # 602 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_vector.h" 3
46102 void
46103 reserve(size_type __n);
46104 # 617 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_vector.h" 3
46105 reference
46106 operator[](size_type __n)
46107 { return *(this->_M_impl._M_start + __n); }
46108 # 632 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_vector.h" 3
46109 const_reference
46110 operator[](size_type __n) const
46111 { return *(this->_M_impl._M_start + __n); }
46112
46113 protected:
46114
46115 void
46116 _M_range_check(size_type __n) const
46117 {
46118 if (__n >= this->size())
46119 __throw_out_of_range(("vector::_M_range_check"));
46120 }
46121
46122 public:
46123 # 657 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_vector.h" 3
46124 reference
46125 at(size_type __n)
46126 {
46127 _M_range_check(__n);
46128 return (*this)[__n];
46129 }
46130 # 675 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_vector.h" 3
46131 const_reference
46132 at(size_type __n) const
46133 {
46134 _M_range_check(__n);
46135 return (*this)[__n];
46136 }
46137
46138
46139
46140
46141
46142 reference
46143 front()
46144 { return *begin(); }
46145
46146
46147
46148
46149
46150 const_reference
46151 front() const
46152 { return *begin(); }
46153
46154
46155
46156
46157
46158 reference
46159 back()
46160 { return *(end() - 1); }
46161
46162
46163
46164
46165
46166 const_reference
46167 back() const
46168 { return *(end() - 1); }
46169 # 721 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_vector.h" 3
46170 pointer
46171 data()
46172 { return pointer(this->_M_impl._M_start); }
46173
46174 const_pointer
46175 data() const
46176 { return const_pointer(this->_M_impl._M_start); }
46177 # 740 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_vector.h" 3
46178 void
46179 push_back(const value_type& __x)
46180 {
46181 if (this->_M_impl._M_finish != this->_M_impl._M_end_of_storage)
46182 {
46183 this->_M_impl.construct(this->_M_impl._M_finish, __x);
46184 ++this->_M_impl._M_finish;
46185 }
46186 else
46187 _M_insert_aux(end(), __x);
46188 }
46189 # 771 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_vector.h" 3
46190 void
46191 pop_back()
46192 {
46193 --this->_M_impl._M_finish;
46194 this->_M_impl.destroy(this->_M_impl._M_finish);
46195 }
46196 # 807 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_vector.h" 3
46197 iterator
46198 insert(iterator __position, const value_type& __x);
46199 # 857 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_vector.h" 3
46200 void
46201 insert(iterator __position, size_type __n, const value_type& __x)
46202 { _M_fill_insert(__position, __n, __x); }
46203 # 875 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_vector.h" 3
46204 template<typename _InputIterator>
46205 void
46206 insert(iterator __position, _InputIterator __first,
46207 _InputIterator __last)
46208 {
46209
46210 typedef typename std::__is_integer<_InputIterator>::__type _Integral;
46211 _M_insert_dispatch(__position, __first, __last, _Integral());
46212 }
46213 # 900 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_vector.h" 3
46214 iterator
46215 erase(iterator __position);
46216 # 921 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_vector.h" 3
46217 iterator
46218 erase(iterator __first, iterator __last);
46219 # 933 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_vector.h" 3
46220 void
46221 swap(vector& __x)
46222 {
46223 std::swap(this->_M_impl._M_start, __x._M_impl._M_start);
46224 std::swap(this->_M_impl._M_finish, __x._M_impl._M_finish);
46225 std::swap(this->_M_impl._M_end_of_storage,
46226 __x._M_impl._M_end_of_storage);
46227
46228
46229
46230 std::__alloc_swap<_Tp_alloc_type>::_S_do_it(_M_get_Tp_allocator(),
46231 __x._M_get_Tp_allocator());
46232 }
46233
46234
46235
46236
46237
46238
46239
46240 void
46241 clear()
46242 { _M_erase_at_end(this->_M_impl._M_start); }
46243
46244 protected:
46245
46246
46247
46248
46249 template<typename _ForwardIterator>
46250 pointer
46251 _M_allocate_and_copy(size_type __n,
46252 _ForwardIterator __first, _ForwardIterator __last)
46253 {
46254 pointer __result = this->_M_allocate(__n);
46255 try
46256 {
46257 std::__uninitialized_copy_a(__first, __last, __result,
46258 _M_get_Tp_allocator());
46259 return __result;
46260 }
46261 catch(...)
46262 {
46263 _M_deallocate(__result, __n);
46264 throw;
46265 }
46266 }
46267 # 988 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_vector.h" 3
46268 template<typename _Integer>
46269 void
46270 _M_initialize_dispatch(_Integer __n, _Integer __value, __true_type)
46271 {
46272 this->_M_impl._M_start = _M_allocate(static_cast<size_type>(__n));
46273 this->_M_impl._M_end_of_storage =
46274 this->_M_impl._M_start + static_cast<size_type>(__n);
46275 _M_fill_initialize(static_cast<size_type>(__n), __value);
46276 }
46277
46278
46279 template<typename _InputIterator>
46280 void
46281 _M_initialize_dispatch(_InputIterator __first, _InputIterator __last,
46282 __false_type)
46283 {
46284 typedef typename std::iterator_traits<_InputIterator>::
46285 iterator_category _IterCategory;
46286 _M_range_initialize(__first, __last, _IterCategory());
46287 }
46288
46289
46290 template<typename _InputIterator>
46291 void
46292 _M_range_initialize(_InputIterator __first,
46293 _InputIterator __last, std::input_iterator_tag)
46294 {
46295 for (; __first != __last; ++__first)
46296 push_back(*__first);
46297 }
46298
46299
46300 template<typename _ForwardIterator>
46301 void
46302 _M_range_initialize(_ForwardIterator __first,
46303 _ForwardIterator __last, std::forward_iterator_tag)
46304 {
46305 const size_type __n = std::distance(__first, __last);
46306 this->_M_impl._M_start = this->_M_allocate(__n);
46307 this->_M_impl._M_end_of_storage = this->_M_impl._M_start + __n;
46308 this->_M_impl._M_finish =
46309 std::__uninitialized_copy_a(__first, __last,
46310 this->_M_impl._M_start,
46311 _M_get_Tp_allocator());
46312 }
46313
46314
46315
46316 void
46317 _M_fill_initialize(size_type __n, const value_type& __value)
46318 {
46319 std::__uninitialized_fill_n_a(this->_M_impl._M_start, __n, __value,
46320 _M_get_Tp_allocator());
46321 this->_M_impl._M_finish = this->_M_impl._M_end_of_storage;
46322 }
46323 # 1052 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_vector.h" 3
46324 template<typename _Integer>
46325 void
46326 _M_assign_dispatch(_Integer __n, _Integer __val, __true_type)
46327 { _M_fill_assign(__n, __val); }
46328
46329
46330 template<typename _InputIterator>
46331 void
46332 _M_assign_dispatch(_InputIterator __first, _InputIterator __last,
46333 __false_type)
46334 {
46335 typedef typename std::iterator_traits<_InputIterator>::
46336 iterator_category _IterCategory;
46337 _M_assign_aux(__first, __last, _IterCategory());
46338 }
46339
46340
46341 template<typename _InputIterator>
46342 void
46343 _M_assign_aux(_InputIterator __first, _InputIterator __last,
46344 std::input_iterator_tag);
46345
46346
46347 template<typename _ForwardIterator>
46348 void
46349 _M_assign_aux(_ForwardIterator __first, _ForwardIterator __last,
46350 std::forward_iterator_tag);
46351
46352
46353
46354 void
46355 _M_fill_assign(size_type __n, const value_type& __val);
46356 # 1092 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_vector.h" 3
46357 template<typename _Integer>
46358 void
46359 _M_insert_dispatch(iterator __pos, _Integer __n, _Integer __val,
46360 __true_type)
46361 { _M_fill_insert(__pos, __n, __val); }
46362
46363
46364 template<typename _InputIterator>
46365 void
46366 _M_insert_dispatch(iterator __pos, _InputIterator __first,
46367 _InputIterator __last, __false_type)
46368 {
46369 typedef typename std::iterator_traits<_InputIterator>::
46370 iterator_category _IterCategory;
46371 _M_range_insert(__pos, __first, __last, _IterCategory());
46372 }
46373
46374
46375 template<typename _InputIterator>
46376 void
46377 _M_range_insert(iterator __pos, _InputIterator __first,
46378 _InputIterator __last, std::input_iterator_tag);
46379
46380
46381 template<typename _ForwardIterator>
46382 void
46383 _M_range_insert(iterator __pos, _ForwardIterator __first,
46384 _ForwardIterator __last, std::forward_iterator_tag);
46385
46386
46387
46388 void
46389 _M_fill_insert(iterator __pos, size_type __n, const value_type& __x);
46390
46391
46392
46393 void
46394 _M_insert_aux(iterator __position, const value_type& __x);
46395
46396
46397
46398
46399
46400
46401
46402 size_type
46403 _M_check_len(size_type __n, const char* __s) const
46404 {
46405 if (max_size() - size() < __n)
46406 __throw_length_error((__s));
46407
46408 const size_type __len = size() + std::max(size(), __n);
46409 return (__len < size() || __len > max_size()) ? max_size() : __len;
46410 }
46411
46412
46413
46414
46415
46416 void
46417 _M_erase_at_end(pointer __pos)
46418 {
46419 std::_Destroy(__pos, this->_M_impl._M_finish, _M_get_Tp_allocator());
46420 this->_M_impl._M_finish = __pos;
46421 }
46422 };
46423 # 1170 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_vector.h" 3
46424 template<typename _Tp, typename _Alloc>
46425 inline bool
46426 operator==(const vector<_Tp, _Alloc>& __x, const vector<_Tp, _Alloc>& __y)
46427 { return (__x.size() == __y.size()
46428 && std::equal(__x.begin(), __x.end(), __y.begin())); }
46429 # 1187 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_vector.h" 3
46430 template<typename _Tp, typename _Alloc>
46431 inline bool
46432 operator<(const vector<_Tp, _Alloc>& __x, const vector<_Tp, _Alloc>& __y)
46433 { return std::lexicographical_compare(__x.begin(), __x.end(),
46434 __y.begin(), __y.end()); }
46435
46436
46437 template<typename _Tp, typename _Alloc>
46438 inline bool
46439 operator!=(const vector<_Tp, _Alloc>& __x, const vector<_Tp, _Alloc>& __y)
46440 { return !(__x == __y); }
46441
46442
46443 template<typename _Tp, typename _Alloc>
46444 inline bool
46445 operator>(const vector<_Tp, _Alloc>& __x, const vector<_Tp, _Alloc>& __y)
46446 { return __y < __x; }
46447
46448
46449 template<typename _Tp, typename _Alloc>
46450 inline bool
46451 operator<=(const vector<_Tp, _Alloc>& __x, const vector<_Tp, _Alloc>& __y)
46452 { return !(__y < __x); }
46453
46454
46455 template<typename _Tp, typename _Alloc>
46456 inline bool
46457 operator>=(const vector<_Tp, _Alloc>& __x, const vector<_Tp, _Alloc>& __y)
46458 { return !(__x < __y); }
46459
46460
46461 template<typename _Tp, typename _Alloc>
46462 inline void
46463 swap(vector<_Tp, _Alloc>& __x, vector<_Tp, _Alloc>& __y)
46464 { __x.swap(__y); }
46465
46466 }
46467 # 66 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/vector" 2 3
46468 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_bvector.h" 1 3
46469 # 58 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_bvector.h" 3
46470 #define _STL_BVECTOR_H 1
46471
46472
46473
46474 namespace std __attribute__ ((__visibility__ ("default"))) {
46475
46476 typedef unsigned long _Bit_type;
46477 enum { _S_word_bit = int(8 * sizeof(_Bit_type)) };
46478
46479 struct _Bit_reference
46480 {
46481 _Bit_type * _M_p;
46482 _Bit_type _M_mask;
46483
46484 _Bit_reference(_Bit_type * __x, _Bit_type __y)
46485 : _M_p(__x), _M_mask(__y) { }
46486
46487 _Bit_reference() : _M_p(0), _M_mask(0) { }
46488
46489 operator bool() const
46490 { return !!(*_M_p & _M_mask); }
46491
46492 _Bit_reference&
46493 operator=(bool __x)
46494 {
46495 if (__x)
46496 *_M_p |= _M_mask;
46497 else
46498 *_M_p &= ~_M_mask;
46499 return *this;
46500 }
46501
46502 _Bit_reference&
46503 operator=(const _Bit_reference& __x)
46504 { return *this = bool(__x); }
46505
46506 bool
46507 operator==(const _Bit_reference& __x) const
46508 { return bool(*this) == bool(__x); }
46509
46510 bool
46511 operator<(const _Bit_reference& __x) const
46512 { return !bool(*this) && bool(__x); }
46513
46514 void
46515 flip()
46516 { *_M_p ^= _M_mask; }
46517 };
46518
46519 struct _Bit_iterator_base
46520 : public std::iterator<std::random_access_iterator_tag, bool>
46521 {
46522 _Bit_type * _M_p;
46523 unsigned int _M_offset;
46524
46525 _Bit_iterator_base(_Bit_type * __x, unsigned int __y)
46526 : _M_p(__x), _M_offset(__y) { }
46527
46528 void
46529 _M_bump_up()
46530 {
46531 if (_M_offset++ == int(_S_word_bit) - 1)
46532 {
46533 _M_offset = 0;
46534 ++_M_p;
46535 }
46536 }
46537
46538 void
46539 _M_bump_down()
46540 {
46541 if (_M_offset-- == 0)
46542 {
46543 _M_offset = int(_S_word_bit) - 1;
46544 --_M_p;
46545 }
46546 }
46547
46548 void
46549 _M_incr(ptrdiff_t __i)
46550 {
46551 difference_type __n = __i + _M_offset;
46552 _M_p += __n / int(_S_word_bit);
46553 __n = __n % int(_S_word_bit);
46554 if (__n < 0)
46555 {
46556 __n += int(_S_word_bit);
46557 --_M_p;
46558 }
46559 _M_offset = static_cast<unsigned int>(__n);
46560 }
46561
46562 bool
46563 operator==(const _Bit_iterator_base& __i) const
46564 { return _M_p == __i._M_p && _M_offset == __i._M_offset; }
46565
46566 bool
46567 operator<(const _Bit_iterator_base& __i) const
46568 {
46569 return _M_p < __i._M_p
46570 || (_M_p == __i._M_p && _M_offset < __i._M_offset);
46571 }
46572
46573 bool
46574 operator!=(const _Bit_iterator_base& __i) const
46575 { return !(*this == __i); }
46576
46577 bool
46578 operator>(const _Bit_iterator_base& __i) const
46579 { return __i < *this; }
46580
46581 bool
46582 operator<=(const _Bit_iterator_base& __i) const
46583 { return !(__i < *this); }
46584
46585 bool
46586 operator>=(const _Bit_iterator_base& __i) const
46587 { return !(*this < __i); }
46588 };
46589
46590 inline ptrdiff_t
46591 operator-(const _Bit_iterator_base& __x, const _Bit_iterator_base& __y)
46592 {
46593 return (int(_S_word_bit) * (__x._M_p - __y._M_p)
46594 + __x._M_offset - __y._M_offset);
46595 }
46596
46597 struct _Bit_iterator : public _Bit_iterator_base
46598 {
46599 typedef _Bit_reference reference;
46600 typedef _Bit_reference* pointer;
46601 typedef _Bit_iterator iterator;
46602
46603 _Bit_iterator() : _Bit_iterator_base(0, 0) { }
46604
46605 _Bit_iterator(_Bit_type * __x, unsigned int __y)
46606 : _Bit_iterator_base(__x, __y) { }
46607
46608 reference
46609 operator*() const
46610 { return reference(_M_p, 1UL << _M_offset); }
46611
46612 iterator&
46613 operator++()
46614 {
46615 _M_bump_up();
46616 return *this;
46617 }
46618
46619 iterator
46620 operator++(int)
46621 {
46622 iterator __tmp = *this;
46623 _M_bump_up();
46624 return __tmp;
46625 }
46626
46627 iterator&
46628 operator--()
46629 {
46630 _M_bump_down();
46631 return *this;
46632 }
46633
46634 iterator
46635 operator--(int)
46636 {
46637 iterator __tmp = *this;
46638 _M_bump_down();
46639 return __tmp;
46640 }
46641
46642 iterator&
46643 operator+=(difference_type __i)
46644 {
46645 _M_incr(__i);
46646 return *this;
46647 }
46648
46649 iterator&
46650 operator-=(difference_type __i)
46651 {
46652 *this += -__i;
46653 return *this;
46654 }
46655
46656 iterator
46657 operator+(difference_type __i) const
46658 {
46659 iterator __tmp = *this;
46660 return __tmp += __i;
46661 }
46662
46663 iterator
46664 operator-(difference_type __i) const
46665 {
46666 iterator __tmp = *this;
46667 return __tmp -= __i;
46668 }
46669
46670 reference
46671 operator[](difference_type __i) const
46672 { return *(*this + __i); }
46673 };
46674
46675 inline _Bit_iterator
46676 operator+(ptrdiff_t __n, const _Bit_iterator& __x)
46677 { return __x + __n; }
46678
46679 struct _Bit_const_iterator : public _Bit_iterator_base
46680 {
46681 typedef bool reference;
46682 typedef bool const_reference;
46683 typedef const bool* pointer;
46684 typedef _Bit_const_iterator const_iterator;
46685
46686 _Bit_const_iterator() : _Bit_iterator_base(0, 0) { }
46687
46688 _Bit_const_iterator(_Bit_type * __x, unsigned int __y)
46689 : _Bit_iterator_base(__x, __y) { }
46690
46691 _Bit_const_iterator(const _Bit_iterator& __x)
46692 : _Bit_iterator_base(__x._M_p, __x._M_offset) { }
46693
46694 const_reference
46695 operator*() const
46696 { return _Bit_reference(_M_p, 1UL << _M_offset); }
46697
46698 const_iterator&
46699 operator++()
46700 {
46701 _M_bump_up();
46702 return *this;
46703 }
46704
46705 const_iterator
46706 operator++(int)
46707 {
46708 const_iterator __tmp = *this;
46709 _M_bump_up();
46710 return __tmp;
46711 }
46712
46713 const_iterator&
46714 operator--()
46715 {
46716 _M_bump_down();
46717 return *this;
46718 }
46719
46720 const_iterator
46721 operator--(int)
46722 {
46723 const_iterator __tmp = *this;
46724 _M_bump_down();
46725 return __tmp;
46726 }
46727
46728 const_iterator&
46729 operator+=(difference_type __i)
46730 {
46731 _M_incr(__i);
46732 return *this;
46733 }
46734
46735 const_iterator&
46736 operator-=(difference_type __i)
46737 {
46738 *this += -__i;
46739 return *this;
46740 }
46741
46742 const_iterator
46743 operator+(difference_type __i) const
46744 {
46745 const_iterator __tmp = *this;
46746 return __tmp += __i;
46747 }
46748
46749 const_iterator
46750 operator-(difference_type __i) const
46751 {
46752 const_iterator __tmp = *this;
46753 return __tmp -= __i;
46754 }
46755
46756 const_reference
46757 operator[](difference_type __i) const
46758 { return *(*this + __i); }
46759 };
46760
46761 inline _Bit_const_iterator
46762 operator+(ptrdiff_t __n, const _Bit_const_iterator& __x)
46763 { return __x + __n; }
46764
46765 inline void
46766 __fill_bvector(_Bit_iterator __first, _Bit_iterator __last, bool __x)
46767 {
46768 for (; __first != __last; ++__first)
46769 *__first = __x;
46770 }
46771
46772 inline void
46773 fill(_Bit_iterator __first, _Bit_iterator __last, const bool& __x)
46774 {
46775 if (__first._M_p != __last._M_p)
46776 {
46777 std::fill(__first._M_p + 1, __last._M_p, __x ? ~0 : 0);
46778 __fill_bvector(__first, _Bit_iterator(__first._M_p + 1, 0), __x);
46779 __fill_bvector(_Bit_iterator(__last._M_p, 0), __last, __x);
46780 }
46781 else
46782 __fill_bvector(__first, __last, __x);
46783 }
46784
46785 template<typename _Alloc>
46786 struct _Bvector_base
46787 {
46788 typedef typename _Alloc::template rebind<_Bit_type>::other
46789 _Bit_alloc_type;
46790
46791 struct _Bvector_impl
46792 : public _Bit_alloc_type
46793 {
46794 _Bit_iterator _M_start;
46795 _Bit_iterator _M_finish;
46796 _Bit_type* _M_end_of_storage;
46797
46798 _Bvector_impl()
46799 : _Bit_alloc_type(), _M_start(), _M_finish(), _M_end_of_storage(0)
46800 { }
46801
46802 _Bvector_impl(const _Bit_alloc_type& __a)
46803 : _Bit_alloc_type(__a), _M_start(), _M_finish(), _M_end_of_storage(0)
46804 { }
46805 };
46806
46807 public:
46808 typedef _Alloc allocator_type;
46809
46810 _Bit_alloc_type&
46811 _M_get_Bit_allocator()
46812 { return *static_cast<_Bit_alloc_type*>(&this->_M_impl); }
46813
46814 const _Bit_alloc_type&
46815 _M_get_Bit_allocator() const
46816 { return *static_cast<const _Bit_alloc_type*>(&this->_M_impl); }
46817
46818 allocator_type
46819 get_allocator() const
46820 { return allocator_type(_M_get_Bit_allocator()); }
46821
46822 _Bvector_base()
46823 : _M_impl() { }
46824
46825 _Bvector_base(const allocator_type& __a)
46826 : _M_impl(__a) { }
46827 # 429 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_bvector.h" 3
46828 ~_Bvector_base()
46829 { this->_M_deallocate(); }
46830
46831 protected:
46832 _Bvector_impl _M_impl;
46833
46834 _Bit_type*
46835 _M_allocate(size_t __n)
46836 { return _M_impl.allocate((__n + int(_S_word_bit) - 1)
46837 / int(_S_word_bit)); }
46838
46839 void
46840 _M_deallocate()
46841 {
46842 if (_M_impl._M_start._M_p)
46843 _M_impl.deallocate(_M_impl._M_start._M_p,
46844 _M_impl._M_end_of_storage - _M_impl._M_start._M_p);
46845 }
46846 };
46847
46848 }
46849
46850
46851
46852
46853 namespace std __attribute__ ((__visibility__ ("default"))) {
46854 # 473 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_bvector.h" 3
46855 template<typename _Alloc>
46856 class vector<bool, _Alloc> : protected _Bvector_base<_Alloc>
46857 {
46858 typedef _Bvector_base<_Alloc> _Base;
46859
46860
46861
46862
46863
46864 public:
46865 typedef bool value_type;
46866 typedef size_t size_type;
46867 typedef ptrdiff_t difference_type;
46868 typedef _Bit_reference reference;
46869 typedef bool const_reference;
46870 typedef _Bit_reference* pointer;
46871 typedef const bool* const_pointer;
46872 typedef _Bit_iterator iterator;
46873 typedef _Bit_const_iterator const_iterator;
46874 typedef std::reverse_iterator<const_iterator> const_reverse_iterator;
46875 typedef std::reverse_iterator<iterator> reverse_iterator;
46876 typedef _Alloc allocator_type;
46877
46878 allocator_type get_allocator() const
46879 { return _Base::get_allocator(); }
46880
46881 protected:
46882 using _Base::_M_allocate;
46883 using _Base::_M_deallocate;
46884 using _Base::_M_get_Bit_allocator;
46885
46886 public:
46887 vector()
46888 : _Base() { }
46889
46890 explicit
46891 vector(const allocator_type& __a)
46892 : _Base(__a) { }
46893
46894 explicit
46895 vector(size_type __n, const bool& __value = bool(),
46896 const allocator_type& __a = allocator_type())
46897 : _Base(__a)
46898 {
46899 _M_initialize(__n);
46900 std::fill(this->_M_impl._M_start._M_p, this->_M_impl._M_end_of_storage,
46901 __value ? ~0 : 0);
46902 }
46903
46904 vector(const vector& __x)
46905 : _Base(__x._M_get_Bit_allocator())
46906 {
46907 _M_initialize(__x.size());
46908 _M_copy_aligned(__x.begin(), __x.end(), this->_M_impl._M_start);
46909 }
46910 # 542 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_bvector.h" 3
46911 template<typename _InputIterator>
46912 vector(_InputIterator __first, _InputIterator __last,
46913 const allocator_type& __a = allocator_type())
46914 : _Base(__a)
46915 {
46916 typedef typename std::__is_integer<_InputIterator>::__type _Integral;
46917 _M_initialize_dispatch(__first, __last, _Integral());
46918 }
46919
46920 ~vector() { }
46921
46922 vector&
46923 operator=(const vector& __x)
46924 {
46925 if (&__x == this)
46926 return *this;
46927 if (__x.size() > capacity())
46928 {
46929 this->_M_deallocate();
46930 _M_initialize(__x.size());
46931 }
46932 this->_M_impl._M_finish = _M_copy_aligned(__x.begin(), __x.end(),
46933 begin());
46934 return *this;
46935 }
46936 # 591 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_bvector.h" 3
46937 void
46938 assign(size_type __n, const bool& __x)
46939 { _M_fill_assign(__n, __x); }
46940
46941 template<typename _InputIterator>
46942 void
46943 assign(_InputIterator __first, _InputIterator __last)
46944 {
46945 typedef typename std::__is_integer<_InputIterator>::__type _Integral;
46946 _M_assign_dispatch(__first, __last, _Integral());
46947 }
46948
46949
46950
46951
46952
46953
46954
46955 iterator
46956 begin()
46957 { return this->_M_impl._M_start; }
46958
46959 const_iterator
46960 begin() const
46961 { return this->_M_impl._M_start; }
46962
46963 iterator
46964 end()
46965 { return this->_M_impl._M_finish; }
46966
46967 const_iterator
46968 end() const
46969 { return this->_M_impl._M_finish; }
46970
46971 reverse_iterator
46972 rbegin()
46973 { return reverse_iterator(end()); }
46974
46975 const_reverse_iterator
46976 rbegin() const
46977 { return const_reverse_iterator(end()); }
46978
46979 reverse_iterator
46980 rend()
46981 { return reverse_iterator(begin()); }
46982
46983 const_reverse_iterator
46984 rend() const
46985 { return const_reverse_iterator(begin()); }
46986 # 659 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_bvector.h" 3
46987 size_type
46988 size() const
46989 { return size_type(end() - begin()); }
46990
46991 size_type
46992 max_size() const
46993 {
46994 const size_type __isize =
46995 __gnu_cxx::__numeric_traits<difference_type>::__max
46996 - int(_S_word_bit) + 1;
46997 const size_type __asize = _M_get_Bit_allocator().max_size();
46998 return (__asize <= __isize / int(_S_word_bit)
46999 ? __asize * int(_S_word_bit) : __isize);
47000 }
47001
47002 size_type
47003 capacity() const
47004 { return size_type(const_iterator(this->_M_impl._M_end_of_storage, 0)
47005 - begin()); }
47006
47007 bool
47008 empty() const
47009 { return begin() == end(); }
47010
47011 reference
47012 operator[](size_type __n)
47013 {
47014 return *iterator(this->_M_impl._M_start._M_p
47015 + __n / int(_S_word_bit), __n % int(_S_word_bit));
47016 }
47017
47018 const_reference
47019 operator[](size_type __n) const
47020 {
47021 return *const_iterator(this->_M_impl._M_start._M_p
47022 + __n / int(_S_word_bit), __n % int(_S_word_bit));
47023 }
47024
47025 protected:
47026 void
47027 _M_range_check(size_type __n) const
47028 {
47029 if (__n >= this->size())
47030 __throw_out_of_range(("vector<bool>::_M_range_check"));
47031 }
47032
47033 public:
47034 reference
47035 at(size_type __n)
47036 { _M_range_check(__n); return (*this)[__n]; }
47037
47038 const_reference
47039 at(size_type __n) const
47040 { _M_range_check(__n); return (*this)[__n]; }
47041
47042 void
47043 reserve(size_type __n);
47044
47045 reference
47046 front()
47047 { return *begin(); }
47048
47049 const_reference
47050 front() const
47051 { return *begin(); }
47052
47053 reference
47054 back()
47055 { return *(end() - 1); }
47056
47057 const_reference
47058 back() const
47059 { return *(end() - 1); }
47060
47061
47062
47063
47064
47065
47066 void
47067 data() { }
47068
47069 void
47070 push_back(bool __x)
47071 {
47072 if (this->_M_impl._M_finish._M_p != this->_M_impl._M_end_of_storage)
47073 *this->_M_impl._M_finish++ = __x;
47074 else
47075 _M_insert_aux(end(), __x);
47076 }
47077
47078 void
47079 swap(vector& __x)
47080 {
47081 std::swap(this->_M_impl._M_start, __x._M_impl._M_start);
47082 std::swap(this->_M_impl._M_finish, __x._M_impl._M_finish);
47083 std::swap(this->_M_impl._M_end_of_storage,
47084 __x._M_impl._M_end_of_storage);
47085
47086
47087
47088 std::__alloc_swap<typename _Base::_Bit_alloc_type>::
47089 _S_do_it(_M_get_Bit_allocator(), __x._M_get_Bit_allocator());
47090 }
47091
47092
47093 static void
47094 swap(reference __x, reference __y)
47095 {
47096 bool __tmp = __x;
47097 __x = __y;
47098 __y = __tmp;
47099 }
47100
47101 iterator
47102 insert(iterator __position, const bool& __x = bool())
47103 {
47104 const difference_type __n = __position - begin();
47105 if (this->_M_impl._M_finish._M_p != this->_M_impl._M_end_of_storage
47106 && __position == end())
47107 *this->_M_impl._M_finish++ = __x;
47108 else
47109 _M_insert_aux(__position, __x);
47110 return begin() + __n;
47111 }
47112
47113 template<typename _InputIterator>
47114 void
47115 insert(iterator __position,
47116 _InputIterator __first, _InputIterator __last)
47117 {
47118 typedef typename std::__is_integer<_InputIterator>::__type _Integral;
47119 _M_insert_dispatch(__position, __first, __last, _Integral());
47120 }
47121
47122 void
47123 insert(iterator __position, size_type __n, const bool& __x)
47124 { _M_fill_insert(__position, __n, __x); }
47125
47126
47127
47128
47129
47130
47131 void
47132 pop_back()
47133 { --this->_M_impl._M_finish; }
47134
47135 iterator
47136 erase(iterator __position)
47137 {
47138 if (__position + 1 != end())
47139 std::copy(__position + 1, end(), __position);
47140 --this->_M_impl._M_finish;
47141 return __position;
47142 }
47143
47144 iterator
47145 erase(iterator __first, iterator __last)
47146 {
47147 _M_erase_at_end(std::copy(__last, end(), __first));
47148 return __first;
47149 }
47150
47151 void
47152 resize(size_type __new_size, bool __x = bool())
47153 {
47154 if (__new_size < size())
47155 _M_erase_at_end(begin() + difference_type(__new_size));
47156 else
47157 insert(end(), __new_size - size(), __x);
47158 }
47159
47160
47161
47162
47163
47164
47165
47166 void
47167 flip()
47168 {
47169 for (_Bit_type * __p = this->_M_impl._M_start._M_p;
47170 __p != this->_M_impl._M_end_of_storage; ++__p)
47171 *__p = ~*__p;
47172 }
47173
47174 void
47175 clear()
47176 { _M_erase_at_end(begin()); }
47177
47178
47179 protected:
47180
47181 iterator
47182 _M_copy_aligned(const_iterator __first, const_iterator __last,
47183 iterator __result)
47184 {
47185 _Bit_type* __q = std::copy(__first._M_p, __last._M_p, __result._M_p);
47186 return std::copy(const_iterator(__last._M_p, 0), __last,
47187 iterator(__q, 0));
47188 }
47189
47190 void
47191 _M_initialize(size_type __n)
47192 {
47193 _Bit_type* __q = this->_M_allocate(__n);
47194 this->_M_impl._M_end_of_storage = (__q
47195 + ((__n + int(_S_word_bit) - 1)
47196 / int(_S_word_bit)));
47197 this->_M_impl._M_start = iterator(__q, 0);
47198 this->_M_impl._M_finish = this->_M_impl._M_start + difference_type(__n);
47199 }
47200
47201
47202
47203
47204
47205 template<typename _Integer>
47206 void
47207 _M_initialize_dispatch(_Integer __n, _Integer __x, __true_type)
47208 {
47209 _M_initialize(static_cast<size_type>(__n));
47210 std::fill(this->_M_impl._M_start._M_p,
47211 this->_M_impl._M_end_of_storage, __x ? ~0 : 0);
47212 }
47213
47214 template<typename _InputIterator>
47215 void
47216 _M_initialize_dispatch(_InputIterator __first, _InputIterator __last,
47217 __false_type)
47218 { _M_initialize_range(__first, __last,
47219 std::__iterator_category(__first)); }
47220
47221 template<typename _InputIterator>
47222 void
47223 _M_initialize_range(_InputIterator __first, _InputIterator __last,
47224 std::input_iterator_tag)
47225 {
47226 for (; __first != __last; ++__first)
47227 push_back(*__first);
47228 }
47229
47230 template<typename _ForwardIterator>
47231 void
47232 _M_initialize_range(_ForwardIterator __first, _ForwardIterator __last,
47233 std::forward_iterator_tag)
47234 {
47235 const size_type __n = std::distance(__first, __last);
47236 _M_initialize(__n);
47237 std::copy(__first, __last, this->_M_impl._M_start);
47238 }
47239
47240
47241
47242 template<typename _Integer>
47243 void
47244 _M_assign_dispatch(_Integer __n, _Integer __val, __true_type)
47245 { _M_fill_assign(__n, __val); }
47246
47247 template<class _InputIterator>
47248 void
47249 _M_assign_dispatch(_InputIterator __first, _InputIterator __last,
47250 __false_type)
47251 { _M_assign_aux(__first, __last, std::__iterator_category(__first)); }
47252
47253 void
47254 _M_fill_assign(size_t __n, bool __x)
47255 {
47256 if (__n > size())
47257 {
47258 std::fill(this->_M_impl._M_start._M_p,
47259 this->_M_impl._M_end_of_storage, __x ? ~0 : 0);
47260 insert(end(), __n - size(), __x);
47261 }
47262 else
47263 {
47264 _M_erase_at_end(begin() + __n);
47265 std::fill(this->_M_impl._M_start._M_p,
47266 this->_M_impl._M_end_of_storage, __x ? ~0 : 0);
47267 }
47268 }
47269
47270 template<typename _InputIterator>
47271 void
47272 _M_assign_aux(_InputIterator __first, _InputIterator __last,
47273 std::input_iterator_tag)
47274 {
47275 iterator __cur = begin();
47276 for (; __first != __last && __cur != end(); ++__cur, ++__first)
47277 *__cur = *__first;
47278 if (__first == __last)
47279 _M_erase_at_end(__cur);
47280 else
47281 insert(end(), __first, __last);
47282 }
47283
47284 template<typename _ForwardIterator>
47285 void
47286 _M_assign_aux(_ForwardIterator __first, _ForwardIterator __last,
47287 std::forward_iterator_tag)
47288 {
47289 const size_type __len = std::distance(__first, __last);
47290 if (__len < size())
47291 _M_erase_at_end(std::copy(__first, __last, begin()));
47292 else
47293 {
47294 _ForwardIterator __mid = __first;
47295 std::advance(__mid, size());
47296 std::copy(__first, __mid, begin());
47297 insert(end(), __mid, __last);
47298 }
47299 }
47300
47301
47302
47303
47304
47305 template<typename _Integer>
47306 void
47307 _M_insert_dispatch(iterator __pos, _Integer __n, _Integer __x,
47308 __true_type)
47309 { _M_fill_insert(__pos, __n, __x); }
47310
47311 template<typename _InputIterator>
47312 void
47313 _M_insert_dispatch(iterator __pos,
47314 _InputIterator __first, _InputIterator __last,
47315 __false_type)
47316 { _M_insert_range(__pos, __first, __last,
47317 std::__iterator_category(__first)); }
47318
47319 void
47320 _M_fill_insert(iterator __position, size_type __n, bool __x);
47321
47322 template<typename _InputIterator>
47323 void
47324 _M_insert_range(iterator __pos, _InputIterator __first,
47325 _InputIterator __last, std::input_iterator_tag)
47326 {
47327 for (; __first != __last; ++__first)
47328 {
47329 __pos = insert(__pos, *__first);
47330 ++__pos;
47331 }
47332 }
47333
47334 template<typename _ForwardIterator>
47335 void
47336 _M_insert_range(iterator __position, _ForwardIterator __first,
47337 _ForwardIterator __last, std::forward_iterator_tag);
47338
47339 void
47340 _M_insert_aux(iterator __position, bool __x);
47341
47342 size_type
47343 _M_check_len(size_type __n, const char* __s) const
47344 {
47345 if (max_size() - size() < __n)
47346 __throw_length_error((__s));
47347
47348 const size_type __len = size() + std::max(size(), __n);
47349 return (__len < size() || __len > max_size()) ? max_size() : __len;
47350 }
47351
47352 void
47353 _M_erase_at_end(iterator __pos)
47354 { this->_M_impl._M_finish = __pos; }
47355 };
47356
47357 }
47358 # 67 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/vector" 2 3
47359
47360
47361 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/vector.tcc" 1 3
47362 # 58 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/vector.tcc" 3
47363 #define _VECTOR_TCC 1
47364
47365 namespace std __attribute__ ((__visibility__ ("default"))) {
47366
47367 template<typename _Tp, typename _Alloc>
47368 void
47369 vector<_Tp, _Alloc>::
47370 reserve(size_type __n)
47371 {
47372 if (__n > this->max_size())
47373 __throw_length_error(("vector::reserve"));
47374 if (this->capacity() < __n)
47375 {
47376 const size_type __old_size = size();
47377 pointer __tmp = _M_allocate_and_copy(__n,
47378 (this->_M_impl._M_start),
47379 (this->_M_impl._M_finish));
47380 std::_Destroy(this->_M_impl._M_start, this->_M_impl._M_finish,
47381 _M_get_Tp_allocator());
47382 _M_deallocate(this->_M_impl._M_start,
47383 this->_M_impl._M_end_of_storage
47384 - this->_M_impl._M_start);
47385 this->_M_impl._M_start = __tmp;
47386 this->_M_impl._M_finish = __tmp + __old_size;
47387 this->_M_impl._M_end_of_storage = this->_M_impl._M_start + __n;
47388 }
47389 }
47390 # 104 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/vector.tcc" 3
47391 template<typename _Tp, typename _Alloc>
47392 typename vector<_Tp, _Alloc>::iterator
47393 vector<_Tp, _Alloc>::
47394 insert(iterator __position, const value_type& __x)
47395 {
47396 const size_type __n = __position - begin();
47397 if (this->_M_impl._M_finish != this->_M_impl._M_end_of_storage
47398 && __position == end())
47399 {
47400 this->_M_impl.construct(this->_M_impl._M_finish, __x);
47401 ++this->_M_impl._M_finish;
47402 }
47403 else
47404 {
47405 # 126 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/vector.tcc" 3
47406 _M_insert_aux(__position, __x);
47407 }
47408 return iterator(this->_M_impl._M_start + __n);
47409 }
47410
47411 template<typename _Tp, typename _Alloc>
47412 typename vector<_Tp, _Alloc>::iterator
47413 vector<_Tp, _Alloc>::
47414 erase(iterator __position)
47415 {
47416 if (__position + 1 != end())
47417 std::copy(__position + 1, end(), __position);
47418 --this->_M_impl._M_finish;
47419 this->_M_impl.destroy(this->_M_impl._M_finish);
47420 return __position;
47421 }
47422
47423 template<typename _Tp, typename _Alloc>
47424 typename vector<_Tp, _Alloc>::iterator
47425 vector<_Tp, _Alloc>::
47426 erase(iterator __first, iterator __last)
47427 {
47428 if (__last != end())
47429 std::copy(__last, end(), __first);
47430 _M_erase_at_end(__first.base() + (end() - __last));
47431 return __first;
47432 }
47433
47434 template<typename _Tp, typename _Alloc>
47435 vector<_Tp, _Alloc>&
47436 vector<_Tp, _Alloc>::
47437 operator=(const vector<_Tp, _Alloc>& __x)
47438 {
47439 if (&__x != this)
47440 {
47441 const size_type __xlen = __x.size();
47442 if (__xlen > capacity())
47443 {
47444 pointer __tmp = _M_allocate_and_copy(__xlen, __x.begin(),
47445 __x.end());
47446 std::_Destroy(this->_M_impl._M_start, this->_M_impl._M_finish,
47447 _M_get_Tp_allocator());
47448 _M_deallocate(this->_M_impl._M_start,
47449 this->_M_impl._M_end_of_storage
47450 - this->_M_impl._M_start);
47451 this->_M_impl._M_start = __tmp;
47452 this->_M_impl._M_end_of_storage = this->_M_impl._M_start + __xlen;
47453 }
47454 else if (size() >= __xlen)
47455 {
47456 std::_Destroy(std::copy(__x.begin(), __x.end(), begin()),
47457 end(), _M_get_Tp_allocator());
47458 }
47459 else
47460 {
47461 std::copy(__x._M_impl._M_start, __x._M_impl._M_start + size(),
47462 this->_M_impl._M_start);
47463 std::__uninitialized_copy_a(__x._M_impl._M_start + size(),
47464 __x._M_impl._M_finish,
47465 this->_M_impl._M_finish,
47466 _M_get_Tp_allocator());
47467 }
47468 this->_M_impl._M_finish = this->_M_impl._M_start + __xlen;
47469 }
47470 return *this;
47471 }
47472
47473 template<typename _Tp, typename _Alloc>
47474 void
47475 vector<_Tp, _Alloc>::
47476 _M_fill_assign(size_t __n, const value_type& __val)
47477 {
47478 if (__n > capacity())
47479 {
47480 vector __tmp(__n, __val, _M_get_Tp_allocator());
47481 __tmp.swap(*this);
47482 }
47483 else if (__n > size())
47484 {
47485 std::fill(begin(), end(), __val);
47486 std::__uninitialized_fill_n_a(this->_M_impl._M_finish,
47487 __n - size(), __val,
47488 _M_get_Tp_allocator());
47489 this->_M_impl._M_finish += __n - size();
47490 }
47491 else
47492 _M_erase_at_end(std::fill_n(this->_M_impl._M_start, __n, __val));
47493 }
47494
47495 template<typename _Tp, typename _Alloc>
47496 template<typename _InputIterator>
47497 void
47498 vector<_Tp, _Alloc>::
47499 _M_assign_aux(_InputIterator __first, _InputIterator __last,
47500 std::input_iterator_tag)
47501 {
47502 pointer __cur(this->_M_impl._M_start);
47503 for (; __first != __last && __cur != this->_M_impl._M_finish;
47504 ++__cur, ++__first)
47505 *__cur = *__first;
47506 if (__first == __last)
47507 _M_erase_at_end(__cur);
47508 else
47509 insert(end(), __first, __last);
47510 }
47511
47512 template<typename _Tp, typename _Alloc>
47513 template<typename _ForwardIterator>
47514 void
47515 vector<_Tp, _Alloc>::
47516 _M_assign_aux(_ForwardIterator __first, _ForwardIterator __last,
47517 std::forward_iterator_tag)
47518 {
47519 const size_type __len = std::distance(__first, __last);
47520
47521 if (__len > capacity())
47522 {
47523 pointer __tmp(_M_allocate_and_copy(__len, __first, __last));
47524 std::_Destroy(this->_M_impl._M_start, this->_M_impl._M_finish,
47525 _M_get_Tp_allocator());
47526 _M_deallocate(this->_M_impl._M_start,
47527 this->_M_impl._M_end_of_storage
47528 - this->_M_impl._M_start);
47529 this->_M_impl._M_start = __tmp;
47530 this->_M_impl._M_finish = this->_M_impl._M_start + __len;
47531 this->_M_impl._M_end_of_storage = this->_M_impl._M_finish;
47532 }
47533 else if (size() >= __len)
47534 _M_erase_at_end(std::copy(__first, __last, this->_M_impl._M_start));
47535 else
47536 {
47537 _ForwardIterator __mid = __first;
47538 std::advance(__mid, size());
47539 std::copy(__first, __mid, this->_M_impl._M_start);
47540 this->_M_impl._M_finish =
47541 std::__uninitialized_copy_a(__mid, __last,
47542 this->_M_impl._M_finish,
47543 _M_get_Tp_allocator());
47544 }
47545 }
47546 # 293 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/vector.tcc" 3
47547 template<typename _Tp, typename _Alloc>
47548 void
47549 vector<_Tp, _Alloc>::
47550 _M_insert_aux(iterator __position, const _Tp& __x)
47551
47552 {
47553 if (this->_M_impl._M_finish != this->_M_impl._M_end_of_storage)
47554 {
47555 this->_M_impl.construct(this->_M_impl._M_finish,
47556 (*(this->_M_impl._M_finish - 1))
47557 );
47558 ++this->_M_impl._M_finish;
47559
47560 _Tp __x_copy = __x;
47561
47562 std::copy_backward(__position.base(), this->_M_impl._M_finish - 2, this->_M_impl._M_finish - 1)
47563
47564 ;
47565
47566 *__position = __x_copy;
47567
47568
47569
47570 }
47571 else
47572 {
47573 const size_type __len =
47574 _M_check_len(size_type(1), "vector::_M_insert_aux");
47575 const size_type __elems_before = __position - begin();
47576 pointer __new_start(this->_M_allocate(__len));
47577 pointer __new_finish(__new_start);
47578 try
47579 {
47580
47581
47582
47583
47584 this->_M_impl.construct(__new_start + __elems_before,
47585
47586
47587
47588 __x);
47589
47590 __new_finish = 0;
47591
47592 __new_finish =
47593 std::__uninitialized_move_a(this->_M_impl._M_start,
47594 __position.base(), __new_start,
47595 _M_get_Tp_allocator());
47596 ++__new_finish;
47597
47598 __new_finish =
47599 std::__uninitialized_move_a(__position.base(),
47600 this->_M_impl._M_finish,
47601 __new_finish,
47602 _M_get_Tp_allocator());
47603 }
47604 catch(...)
47605 {
47606 if (!__new_finish)
47607 this->_M_impl.destroy(__new_start + __elems_before);
47608 else
47609 std::_Destroy(__new_start, __new_finish, _M_get_Tp_allocator());
47610 _M_deallocate(__new_start, __len);
47611 throw;
47612 }
47613 std::_Destroy(this->_M_impl._M_start, this->_M_impl._M_finish,
47614 _M_get_Tp_allocator());
47615 _M_deallocate(this->_M_impl._M_start,
47616 this->_M_impl._M_end_of_storage
47617 - this->_M_impl._M_start);
47618 this->_M_impl._M_start = __new_start;
47619 this->_M_impl._M_finish = __new_finish;
47620 this->_M_impl._M_end_of_storage = __new_start + __len;
47621 }
47622 }
47623
47624 template<typename _Tp, typename _Alloc>
47625 void
47626 vector<_Tp, _Alloc>::
47627 _M_fill_insert(iterator __position, size_type __n, const value_type& __x)
47628 {
47629 if (__n != 0)
47630 {
47631 if (size_type(this->_M_impl._M_end_of_storage
47632 - this->_M_impl._M_finish) >= __n)
47633 {
47634 value_type __x_copy = __x;
47635 const size_type __elems_after = end() - __position;
47636 pointer __old_finish(this->_M_impl._M_finish);
47637 if (__elems_after > __n)
47638 {
47639 std::__uninitialized_move_a(this->_M_impl._M_finish - __n,
47640 this->_M_impl._M_finish,
47641 this->_M_impl._M_finish,
47642 _M_get_Tp_allocator());
47643 this->_M_impl._M_finish += __n;
47644 std::copy_backward(__position.base(), __old_finish - __n, __old_finish)
47645 ;
47646 std::fill(__position.base(), __position.base() + __n,
47647 __x_copy);
47648 }
47649 else
47650 {
47651 std::__uninitialized_fill_n_a(this->_M_impl._M_finish,
47652 __n - __elems_after,
47653 __x_copy,
47654 _M_get_Tp_allocator());
47655 this->_M_impl._M_finish += __n - __elems_after;
47656 std::__uninitialized_move_a(__position.base(), __old_finish,
47657 this->_M_impl._M_finish,
47658 _M_get_Tp_allocator());
47659 this->_M_impl._M_finish += __elems_after;
47660 std::fill(__position.base(), __old_finish, __x_copy);
47661 }
47662 }
47663 else
47664 {
47665 const size_type __len =
47666 _M_check_len(__n, "vector::_M_fill_insert");
47667 const size_type __elems_before = __position - begin();
47668 pointer __new_start(this->_M_allocate(__len));
47669 pointer __new_finish(__new_start);
47670 try
47671 {
47672
47673 std::__uninitialized_fill_n_a(__new_start + __elems_before,
47674 __n, __x,
47675 _M_get_Tp_allocator());
47676 __new_finish = 0;
47677
47678 __new_finish =
47679 std::__uninitialized_move_a(this->_M_impl._M_start,
47680 __position.base(),
47681 __new_start,
47682 _M_get_Tp_allocator());
47683 __new_finish += __n;
47684
47685 __new_finish =
47686 std::__uninitialized_move_a(__position.base(),
47687 this->_M_impl._M_finish,
47688 __new_finish,
47689 _M_get_Tp_allocator());
47690 }
47691 catch(...)
47692 {
47693 if (!__new_finish)
47694 std::_Destroy(__new_start + __elems_before,
47695 __new_start + __elems_before + __n,
47696 _M_get_Tp_allocator());
47697 else
47698 std::_Destroy(__new_start, __new_finish,
47699 _M_get_Tp_allocator());
47700 _M_deallocate(__new_start, __len);
47701 throw;
47702 }
47703 std::_Destroy(this->_M_impl._M_start, this->_M_impl._M_finish,
47704 _M_get_Tp_allocator());
47705 _M_deallocate(this->_M_impl._M_start,
47706 this->_M_impl._M_end_of_storage
47707 - this->_M_impl._M_start);
47708 this->_M_impl._M_start = __new_start;
47709 this->_M_impl._M_finish = __new_finish;
47710 this->_M_impl._M_end_of_storage = __new_start + __len;
47711 }
47712 }
47713 }
47714
47715 template<typename _Tp, typename _Alloc>
47716 template<typename _InputIterator>
47717 void
47718 vector<_Tp, _Alloc>::
47719 _M_range_insert(iterator __pos, _InputIterator __first,
47720 _InputIterator __last, std::input_iterator_tag)
47721 {
47722 for (; __first != __last; ++__first)
47723 {
47724 __pos = insert(__pos, *__first);
47725 ++__pos;
47726 }
47727 }
47728
47729 template<typename _Tp, typename _Alloc>
47730 template<typename _ForwardIterator>
47731 void
47732 vector<_Tp, _Alloc>::
47733 _M_range_insert(iterator __position, _ForwardIterator __first,
47734 _ForwardIterator __last, std::forward_iterator_tag)
47735 {
47736 if (__first != __last)
47737 {
47738 const size_type __n = std::distance(__first, __last);
47739 if (size_type(this->_M_impl._M_end_of_storage
47740 - this->_M_impl._M_finish) >= __n)
47741 {
47742 const size_type __elems_after = end() - __position;
47743 pointer __old_finish(this->_M_impl._M_finish);
47744 if (__elems_after > __n)
47745 {
47746 std::__uninitialized_move_a(this->_M_impl._M_finish - __n,
47747 this->_M_impl._M_finish,
47748 this->_M_impl._M_finish,
47749 _M_get_Tp_allocator());
47750 this->_M_impl._M_finish += __n;
47751 std::copy_backward(__position.base(), __old_finish - __n, __old_finish)
47752 ;
47753 std::copy(__first, __last, __position);
47754 }
47755 else
47756 {
47757 _ForwardIterator __mid = __first;
47758 std::advance(__mid, __elems_after);
47759 std::__uninitialized_copy_a(__mid, __last,
47760 this->_M_impl._M_finish,
47761 _M_get_Tp_allocator());
47762 this->_M_impl._M_finish += __n - __elems_after;
47763 std::__uninitialized_move_a(__position.base(),
47764 __old_finish,
47765 this->_M_impl._M_finish,
47766 _M_get_Tp_allocator());
47767 this->_M_impl._M_finish += __elems_after;
47768 std::copy(__first, __mid, __position);
47769 }
47770 }
47771 else
47772 {
47773 const size_type __len =
47774 _M_check_len(__n, "vector::_M_range_insert");
47775 pointer __new_start(this->_M_allocate(__len));
47776 pointer __new_finish(__new_start);
47777 try
47778 {
47779 __new_finish =
47780 std::__uninitialized_move_a(this->_M_impl._M_start,
47781 __position.base(),
47782 __new_start,
47783 _M_get_Tp_allocator());
47784 __new_finish =
47785 std::__uninitialized_copy_a(__first, __last,
47786 __new_finish,
47787 _M_get_Tp_allocator());
47788 __new_finish =
47789 std::__uninitialized_move_a(__position.base(),
47790 this->_M_impl._M_finish,
47791 __new_finish,
47792 _M_get_Tp_allocator());
47793 }
47794 catch(...)
47795 {
47796 std::_Destroy(__new_start, __new_finish,
47797 _M_get_Tp_allocator());
47798 _M_deallocate(__new_start, __len);
47799 throw;
47800 }
47801 std::_Destroy(this->_M_impl._M_start, this->_M_impl._M_finish,
47802 _M_get_Tp_allocator());
47803 _M_deallocate(this->_M_impl._M_start,
47804 this->_M_impl._M_end_of_storage
47805 - this->_M_impl._M_start);
47806 this->_M_impl._M_start = __new_start;
47807 this->_M_impl._M_finish = __new_finish;
47808 this->_M_impl._M_end_of_storage = __new_start + __len;
47809 }
47810 }
47811 }
47812
47813
47814
47815
47816 template<typename _Alloc>
47817 void
47818 vector<bool, _Alloc>::
47819 reserve(size_type __n)
47820 {
47821 if (__n > this->max_size())
47822 __throw_length_error(("vector::reserve"));
47823 if (this->capacity() < __n)
47824 {
47825 _Bit_type* __q = this->_M_allocate(__n);
47826 this->_M_impl._M_finish = _M_copy_aligned(begin(), end(),
47827 iterator(__q, 0));
47828 this->_M_deallocate();
47829 this->_M_impl._M_start = iterator(__q, 0);
47830 this->_M_impl._M_end_of_storage = (__q + (__n + int(_S_word_bit) - 1)
47831 / int(_S_word_bit));
47832 }
47833 }
47834
47835 template<typename _Alloc>
47836 void
47837 vector<bool, _Alloc>::
47838 _M_fill_insert(iterator __position, size_type __n, bool __x)
47839 {
47840 if (__n == 0)
47841 return;
47842 if (capacity() - size() >= __n)
47843 {
47844 std::copy_backward(__position, end(),
47845 this->_M_impl._M_finish + difference_type(__n));
47846 std::fill(__position, __position + difference_type(__n), __x);
47847 this->_M_impl._M_finish += difference_type(__n);
47848 }
47849 else
47850 {
47851 const size_type __len =
47852 _M_check_len(__n, "vector<bool>::_M_fill_insert");
47853 _Bit_type * __q = this->_M_allocate(__len);
47854 iterator __i = _M_copy_aligned(begin(), __position,
47855 iterator(__q, 0));
47856 std::fill(__i, __i + difference_type(__n), __x);
47857 this->_M_impl._M_finish = std::copy(__position, end(),
47858 __i + difference_type(__n));
47859 this->_M_deallocate();
47860 this->_M_impl._M_end_of_storage = (__q + ((__len
47861 + int(_S_word_bit) - 1)
47862 / int(_S_word_bit)));
47863 this->_M_impl._M_start = iterator(__q, 0);
47864 }
47865 }
47866
47867 template<typename _Alloc>
47868 template<typename _ForwardIterator>
47869 void
47870 vector<bool, _Alloc>::
47871 _M_insert_range(iterator __position, _ForwardIterator __first,
47872 _ForwardIterator __last, std::forward_iterator_tag)
47873 {
47874 if (__first != __last)
47875 {
47876 size_type __n = std::distance(__first, __last);
47877 if (capacity() - size() >= __n)
47878 {
47879 std::copy_backward(__position, end(),
47880 this->_M_impl._M_finish
47881 + difference_type(__n));
47882 std::copy(__first, __last, __position);
47883 this->_M_impl._M_finish += difference_type(__n);
47884 }
47885 else
47886 {
47887 const size_type __len =
47888 _M_check_len(__n, "vector<bool>::_M_insert_range");
47889 _Bit_type * __q = this->_M_allocate(__len);
47890 iterator __i = _M_copy_aligned(begin(), __position,
47891 iterator(__q, 0));
47892 __i = std::copy(__first, __last, __i);
47893 this->_M_impl._M_finish = std::copy(__position, end(), __i);
47894 this->_M_deallocate();
47895 this->_M_impl._M_end_of_storage = (__q
47896 + ((__len
47897 + int(_S_word_bit) - 1)
47898 / int(_S_word_bit)));
47899 this->_M_impl._M_start = iterator(__q, 0);
47900 }
47901 }
47902 }
47903
47904 template<typename _Alloc>
47905 void
47906 vector<bool, _Alloc>::
47907 _M_insert_aux(iterator __position, bool __x)
47908 {
47909 if (this->_M_impl._M_finish._M_p != this->_M_impl._M_end_of_storage)
47910 {
47911 std::copy_backward(__position, this->_M_impl._M_finish,
47912 this->_M_impl._M_finish + 1);
47913 *__position = __x;
47914 ++this->_M_impl._M_finish;
47915 }
47916 else
47917 {
47918 const size_type __len =
47919 _M_check_len(size_type(1), "vector<bool>::_M_insert_aux");
47920 _Bit_type * __q = this->_M_allocate(__len);
47921 iterator __i = _M_copy_aligned(begin(), __position,
47922 iterator(__q, 0));
47923 *__i++ = __x;
47924 this->_M_impl._M_finish = std::copy(__position, end(), __i);
47925 this->_M_deallocate();
47926 this->_M_impl._M_end_of_storage = (__q + ((__len
47927 + int(_S_word_bit) - 1)
47928 / int(_S_word_bit)));
47929 this->_M_impl._M_start = iterator(__q, 0);
47930 }
47931 }
47932
47933 }
47934 # 70 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/vector" 2 3
47935 # 32 "../fwbuilder/InetAddr.h" 2
47936 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/typeinfo" 1 3
47937 # 32 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/typeinfo" 3
47938 #define _TYPEINFO
47939
47940
47941 # 35 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/typeinfo" 3
47942
47943
47944
47945 #pragma GCC visibility push(default)
47946
47947 extern "C++" {
47948
47949 namespace __cxxabiv1
47950 {
47951 class __class_type_info;
47952 }
47953 # 67 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/typeinfo" 3
47954 #define __GXX_MERGED_TYPEINFO_NAMES 0
47955
47956
47957
47958
47959
47960
47961
47962 #define __GXX_TYPEINFO_EQUALITY_INLINE 1
47963
47964
47965
47966 namespace std
47967 {
47968
47969
47970
47971
47972
47973
47974 class type_info
47975 {
47976 public:
47977
47978
47979
47980
47981 virtual ~type_info();
47982
47983
47984
47985 const char* name() const
47986 { return __name[0] == '*' ? __name + 1 : __name; }
47987 # 114 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/typeinfo" 3
47988 bool before(const type_info& __arg) const
47989 { return (__name[0] == '*' && __arg.__name[0] == '*')
47990 ? __name < __arg.__name
47991 : __builtin_strcmp (__name, __arg.__name) < 0; }
47992
47993 bool operator==(const type_info& __arg) const
47994 {
47995 return ((__name == __arg.__name)
47996 || (__name[0] != '*' &&
47997 __builtin_strcmp (__name, __arg.__name) == 0));
47998 }
47999 # 135 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/typeinfo" 3
48000 bool operator!=(const type_info& __arg) const
48001 { return !operator==(__arg); }
48002
48003
48004 virtual bool __is_pointer_p() const;
48005
48006
48007 virtual bool __is_function_p() const;
48008
48009
48010
48011
48012
48013
48014
48015 virtual bool __do_catch(const type_info *__thr_type, void **__thr_obj,
48016 unsigned __outer) const;
48017
48018
48019 virtual bool __do_upcast(const __cxxabiv1::__class_type_info *__target,
48020 void **__obj_ptr) const;
48021
48022 protected:
48023 const char *__name;
48024
48025 explicit type_info(const char *__n): __name(__n) { }
48026
48027 private:
48028
48029 type_info& operator=(const type_info&);
48030 type_info(const type_info&);
48031 };
48032
48033
48034
48035
48036
48037
48038
48039 class bad_cast : public exception
48040 {
48041 public:
48042 bad_cast() throw() { }
48043
48044
48045
48046 virtual ~bad_cast() throw();
48047
48048
48049 virtual const char* what() const throw();
48050 };
48051
48052
48053
48054
48055
48056 class bad_typeid : public exception
48057 {
48058 public:
48059 bad_typeid () throw() { }
48060
48061
48062
48063 virtual ~bad_typeid() throw();
48064
48065
48066 virtual const char* what() const throw();
48067 };
48068 }
48069
48070 #pragma GCC visibility pop
48071
48072 }
48073 # 33 "../fwbuilder/InetAddr.h" 2
48074 # 1 "/usr/include/assert.h" 1 3 4
48075 # 26 "/usr/include/assert.h" 3 4
48076 #undef _ASSERT_H
48077 #undef assert
48078 #undef __ASSERT_VOID_CAST
48079
48080
48081 #undef assert_perror
48082
48083
48084
48085
48086 #define _ASSERT_H 1
48087
48088
48089
48090 #define __ASSERT_VOID_CAST static_cast<void>
48091 # 66 "/usr/include/assert.h" 3 4
48092 extern "C" {
48093
48094
48095 extern void __assert_fail (__const char *__assertion, __const char *__file,
48096 unsigned int __line, __const char *__function)
48097 throw () __attribute__ ((__noreturn__));
48098
48099
48100 extern void __assert_perror_fail (int __errnum, __const char *__file,
48101 unsigned int __line,
48102 __const char *__function)
48103 throw () __attribute__ ((__noreturn__));
48104
48105
48106
48107
48108 extern void __assert (const char *__assertion, const char *__file, int __line)
48109 throw () __attribute__ ((__noreturn__));
48110
48111
48112 }
48113
48114 #define assert(expr) ((expr) ? __ASSERT_VOID_CAST (0) : __assert_fail (__STRING(expr), __FILE__, __LINE__, __ASSERT_FUNCTION))
48115
48116
48117
48118
48119
48120 #define assert_perror(errnum) (!(errnum) ? __ASSERT_VOID_CAST (0) : __assert_perror_fail ((errnum), __FILE__, __LINE__, __ASSERT_FUNCTION))
48121 # 106 "/usr/include/assert.h" 3 4
48122 #define __ASSERT_FUNCTION __PRETTY_FUNCTION__
48123 # 34 "../fwbuilder/InetAddr.h" 2
48124
48125
48126
48127 # 1 "/usr/include/sys/socket.h" 1 3 4
48128 # 22 "/usr/include/sys/socket.h" 3 4
48129 #define _SYS_SOCKET_H 1
48130
48131
48132
48133 extern "C" {
48134
48135 # 1 "/usr/include/sys/uio.h" 1 3 4
48136 # 20 "/usr/include/sys/uio.h" 3 4
48137 #define _SYS_UIO_H 1
48138
48139
48140
48141
48142
48143 extern "C" {
48144
48145
48146 # 1 "/usr/include/bits/uio.h" 1 3 4
48147 # 24 "/usr/include/bits/uio.h" 3 4
48148 #define _BITS_UIO_H 1
48149 # 40 "/usr/include/bits/uio.h" 3 4
48150 #define UIO_MAXIOV 1024
48151
48152
48153
48154 struct iovec
48155 {
48156 void *iov_base;
48157 size_t iov_len;
48158 };
48159 # 30 "/usr/include/sys/uio.h" 2 3 4
48160 # 40 "/usr/include/sys/uio.h" 3 4
48161 extern ssize_t readv (int __fd, __const struct iovec *__iovec, int __count)
48162 __attribute__ ((__warn_unused_result__));
48163 # 51 "/usr/include/sys/uio.h" 3 4
48164 extern ssize_t writev (int __fd, __const struct iovec *__iovec, int __count)
48165 __attribute__ ((__warn_unused_result__));
48166 # 66 "/usr/include/sys/uio.h" 3 4
48167 extern ssize_t preadv (int __fd, __const struct iovec *__iovec, int __count,
48168 __off_t __offset) __attribute__ ((__warn_unused_result__));
48169 # 78 "/usr/include/sys/uio.h" 3 4
48170 extern ssize_t pwritev (int __fd, __const struct iovec *__iovec, int __count,
48171 __off_t __offset) __attribute__ ((__warn_unused_result__));
48172 # 104 "/usr/include/sys/uio.h" 3 4
48173 extern ssize_t preadv64 (int __fd, __const struct iovec *__iovec, int __count,
48174 __off64_t __offset) __attribute__ ((__warn_unused_result__));
48175 # 116 "/usr/include/sys/uio.h" 3 4
48176 extern ssize_t pwritev64 (int __fd, __const struct iovec *__iovec, int __count,
48177 __off64_t __offset) __attribute__ ((__warn_unused_result__));
48178
48179
48180
48181 }
48182 # 29 "/usr/include/sys/socket.h" 2 3 4
48183 #define __need_size_t
48184 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 1 3 4
48185 # 160 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 3 4
48186 #undef __need_ptrdiff_t
48187 # 233 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 3 4
48188 #undef __need_size_t
48189 # 342 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 3 4
48190 #undef __need_wchar_t
48191 # 395 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 3 4
48192 #undef NULL
48193
48194 #define NULL __null
48195 # 406 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 3 4
48196 #undef __need_NULL
48197
48198
48199
48200
48201 #define offsetof(TYPE,MEMBER) __builtin_offsetof (TYPE, MEMBER)
48202 # 31 "/usr/include/sys/socket.h" 2 3 4
48203
48204
48205 # 1 "/usr/include/bits/sigset.h" 1 3 4
48206 # 34 "/usr/include/sys/socket.h" 2 3 4
48207
48208
48209
48210
48211
48212
48213 # 1 "/usr/include/bits/socket.h" 1 3 4
48214 # 22 "/usr/include/bits/socket.h" 3 4
48215 #define __BITS_SOCKET_H
48216
48217
48218
48219
48220
48221 #define __need_size_t
48222 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 1 3 4
48223 # 160 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 3 4
48224 #undef __need_ptrdiff_t
48225 # 233 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 3 4
48226 #undef __need_size_t
48227 # 342 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 3 4
48228 #undef __need_wchar_t
48229 # 395 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 3 4
48230 #undef NULL
48231
48232 #define NULL __null
48233 # 406 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 3 4
48234 #undef __need_NULL
48235
48236
48237
48238
48239 #define offsetof(TYPE,MEMBER) __builtin_offsetof (TYPE, MEMBER)
48240 # 30 "/usr/include/bits/socket.h" 2 3 4
48241 # 40 "/usr/include/bits/socket.h" 3 4
48242 enum __socket_type
48243 {
48244 SOCK_STREAM = 1,
48245
48246 #define SOCK_STREAM SOCK_STREAM
48247 SOCK_DGRAM = 2,
48248
48249 #define SOCK_DGRAM SOCK_DGRAM
48250 SOCK_RAW = 3,
48251 #define SOCK_RAW SOCK_RAW
48252 SOCK_RDM = 4,
48253 #define SOCK_RDM SOCK_RDM
48254 SOCK_SEQPACKET = 5,
48255
48256 #define SOCK_SEQPACKET SOCK_SEQPACKET
48257 SOCK_DCCP = 6,
48258 #define SOCK_DCCP SOCK_DCCP
48259 SOCK_PACKET = 10,
48260
48261
48262 #define SOCK_PACKET SOCK_PACKET
48263
48264
48265
48266
48267 SOCK_CLOEXEC = 02000000,
48268
48269 #define SOCK_CLOEXEC SOCK_CLOEXEC
48270 SOCK_NONBLOCK = 04000
48271
48272 #define SOCK_NONBLOCK SOCK_NONBLOCK
48273 };
48274
48275
48276 #define PF_UNSPEC 0
48277 #define PF_LOCAL 1
48278 #define PF_UNIX PF_LOCAL
48279 #define PF_FILE PF_LOCAL
48280 #define PF_INET 2
48281 #define PF_AX25 3
48282 #define PF_IPX 4
48283 #define PF_APPLETALK 5
48284 #define PF_NETROM 6
48285 #define PF_BRIDGE 7
48286 #define PF_ATMPVC 8
48287 #define PF_X25 9
48288 #define PF_INET6 10
48289 #define PF_ROSE 11
48290 #define PF_DECnet 12
48291 #define PF_NETBEUI 13
48292 #define PF_SECURITY 14
48293 #define PF_KEY 15
48294 #define PF_NETLINK 16
48295 #define PF_ROUTE PF_NETLINK
48296 #define PF_PACKET 17
48297 #define PF_ASH 18
48298 #define PF_ECONET 19
48299 #define PF_ATMSVC 20
48300 #define PF_RDS 21
48301 #define PF_SNA 22
48302 #define PF_IRDA 23
48303 #define PF_PPPOX 24
48304 #define PF_WANPIPE 25
48305 #define PF_LLC 26
48306 #define PF_CAN 29
48307 #define PF_TIPC 30
48308 #define PF_BLUETOOTH 31
48309 #define PF_IUCV 32
48310 #define PF_RXRPC 33
48311 #define PF_ISDN 34
48312 #define PF_PHONET 35
48313 #define PF_IEEE802154 36
48314 #define PF_CAIF 37
48315 #define PF_ALG 38
48316 #define PF_MAX 39
48317
48318
48319 #define AF_UNSPEC PF_UNSPEC
48320 #define AF_LOCAL PF_LOCAL
48321 #define AF_UNIX PF_UNIX
48322 #define AF_FILE PF_FILE
48323 #define AF_INET PF_INET
48324 #define AF_AX25 PF_AX25
48325 #define AF_IPX PF_IPX
48326 #define AF_APPLETALK PF_APPLETALK
48327 #define AF_NETROM PF_NETROM
48328 #define AF_BRIDGE PF_BRIDGE
48329 #define AF_ATMPVC PF_ATMPVC
48330 #define AF_X25 PF_X25
48331 #define AF_INET6 PF_INET6
48332 #define AF_ROSE PF_ROSE
48333 #define AF_DECnet PF_DECnet
48334 #define AF_NETBEUI PF_NETBEUI
48335 #define AF_SECURITY PF_SECURITY
48336 #define AF_KEY PF_KEY
48337 #define AF_NETLINK PF_NETLINK
48338 #define AF_ROUTE PF_ROUTE
48339 #define AF_PACKET PF_PACKET
48340 #define AF_ASH PF_ASH
48341 #define AF_ECONET PF_ECONET
48342 #define AF_ATMSVC PF_ATMSVC
48343 #define AF_RDS PF_RDS
48344 #define AF_SNA PF_SNA
48345 #define AF_IRDA PF_IRDA
48346 #define AF_PPPOX PF_PPPOX
48347 #define AF_WANPIPE PF_WANPIPE
48348 #define AF_LLC PF_LLC
48349 #define AF_CAN PF_CAN
48350 #define AF_TIPC PF_TIPC
48351 #define AF_BLUETOOTH PF_BLUETOOTH
48352 #define AF_IUCV PF_IUCV
48353 #define AF_RXRPC PF_RXRPC
48354 #define AF_ISDN PF_ISDN
48355 #define AF_PHONET PF_PHONET
48356 #define AF_IEEE802154 PF_IEEE802154
48357 #define AF_CAIF PF_CAIF
48358 #define AF_ALG PF_ALG
48359 #define AF_MAX PF_MAX
48360
48361
48362
48363
48364
48365 #define SOL_RAW 255
48366 #define SOL_DECNET 261
48367 #define SOL_X25 262
48368 #define SOL_PACKET 263
48369 #define SOL_ATM 264
48370 #define SOL_AAL 265
48371 #define SOL_IRDA 266
48372
48373
48374 #define SOMAXCONN 128
48375
48376
48377 # 1 "/usr/include/bits/sockaddr.h" 1 3 4
48378 # 25 "/usr/include/bits/sockaddr.h" 3 4
48379 #define _BITS_SOCKADDR_H 1
48380
48381
48382
48383 typedef unsigned short int sa_family_t;
48384
48385
48386
48387
48388
48389 #define __SOCKADDR_COMMON(sa_prefix) sa_family_t sa_prefix ##family
48390
48391
48392 #define __SOCKADDR_COMMON_SIZE (sizeof (unsigned short int))
48393 # 176 "/usr/include/bits/socket.h" 2 3 4
48394
48395
48396 struct sockaddr
48397 {
48398 sa_family_t sa_family;
48399 char sa_data[14];
48400 };
48401
48402
48403
48404
48405 #define __ss_aligntype unsigned long int
48406 #define _SS_SIZE 128
48407 #define _SS_PADSIZE (_SS_SIZE - (2 * sizeof (__ss_aligntype)))
48408
48409 struct sockaddr_storage
48410 {
48411 sa_family_t ss_family;
48412 unsigned long int __ss_align;
48413 char __ss_padding[(128 - (2 * sizeof (unsigned long int)))];
48414 };
48415
48416
48417
48418 enum
48419 {
48420 MSG_OOB = 0x01,
48421 #define MSG_OOB MSG_OOB
48422 MSG_PEEK = 0x02,
48423 #define MSG_PEEK MSG_PEEK
48424 MSG_DONTROUTE = 0x04,
48425 #define MSG_DONTROUTE MSG_DONTROUTE
48426
48427
48428 MSG_TRYHARD = MSG_DONTROUTE,
48429 #define MSG_TRYHARD MSG_DONTROUTE
48430
48431 MSG_CTRUNC = 0x08,
48432 #define MSG_CTRUNC MSG_CTRUNC
48433 MSG_PROXY = 0x10,
48434 #define MSG_PROXY MSG_PROXY
48435 MSG_TRUNC = 0x20,
48436 #define MSG_TRUNC MSG_TRUNC
48437 MSG_DONTWAIT = 0x40,
48438 #define MSG_DONTWAIT MSG_DONTWAIT
48439 MSG_EOR = 0x80,
48440 #define MSG_EOR MSG_EOR
48441 MSG_WAITALL = 0x100,
48442 #define MSG_WAITALL MSG_WAITALL
48443 MSG_FIN = 0x200,
48444 #define MSG_FIN MSG_FIN
48445 MSG_SYN = 0x400,
48446 #define MSG_SYN MSG_SYN
48447 MSG_CONFIRM = 0x800,
48448 #define MSG_CONFIRM MSG_CONFIRM
48449 MSG_RST = 0x1000,
48450 #define MSG_RST MSG_RST
48451 MSG_ERRQUEUE = 0x2000,
48452 #define MSG_ERRQUEUE MSG_ERRQUEUE
48453 MSG_NOSIGNAL = 0x4000,
48454 #define MSG_NOSIGNAL MSG_NOSIGNAL
48455 MSG_MORE = 0x8000,
48456 #define MSG_MORE MSG_MORE
48457 MSG_WAITFORONE = 0x10000,
48458 #define MSG_WAITFORONE MSG_WAITFORONE
48459
48460 MSG_CMSG_CLOEXEC = 0x40000000
48461
48462
48463 #define MSG_CMSG_CLOEXEC MSG_CMSG_CLOEXEC
48464 };
48465
48466
48467
48468
48469 struct msghdr
48470 {
48471 void *msg_name;
48472 socklen_t msg_namelen;
48473
48474 struct iovec *msg_iov;
48475 size_t msg_iovlen;
48476
48477 void *msg_control;
48478 size_t msg_controllen;
48479
48480
48481
48482
48483 int msg_flags;
48484 };
48485
48486
48487
48488 struct mmsghdr
48489 {
48490 struct msghdr msg_hdr;
48491 unsigned int msg_len;
48492 };
48493
48494
48495
48496 struct cmsghdr
48497 {
48498 size_t cmsg_len;
48499
48500
48501
48502
48503 int cmsg_level;
48504 int cmsg_type;
48505
48506 __extension__ unsigned char __cmsg_data [];
48507
48508 };
48509
48510
48511
48512 #define CMSG_DATA(cmsg) ((cmsg)->__cmsg_data)
48513
48514
48515
48516 #define CMSG_NXTHDR(mhdr,cmsg) __cmsg_nxthdr (mhdr, cmsg)
48517 #define CMSG_FIRSTHDR(mhdr) ((size_t) (mhdr)->msg_controllen >= sizeof (struct cmsghdr) ? (struct cmsghdr *) (mhdr)->msg_control : (struct cmsghdr *) 0)
48518
48519
48520 #define CMSG_ALIGN(len) (((len) + sizeof (size_t) - 1) & (size_t) ~(sizeof (size_t) - 1))
48521
48522 #define CMSG_SPACE(len) (CMSG_ALIGN (len) + CMSG_ALIGN (sizeof (struct cmsghdr)))
48523
48524 #define CMSG_LEN(len) (CMSG_ALIGN (sizeof (struct cmsghdr)) + (len))
48525
48526 extern struct cmsghdr *__cmsg_nxthdr (struct msghdr *__mhdr,
48527 struct cmsghdr *__cmsg) throw ();
48528
48529
48530 #define _EXTERN_INLINE __extern_inline
48531
48532 extern __inline __attribute__ ((__gnu_inline__)) struct cmsghdr *
48533 __cmsg_nxthdr (struct msghdr *__mhdr, struct cmsghdr *__cmsg) throw ()
48534 {
48535 if ((size_t) __cmsg->cmsg_len < sizeof (struct cmsghdr))
48536
48537 return 0;
48538
48539 __cmsg = (struct cmsghdr *) ((unsigned char *) __cmsg
48540 + (((__cmsg->cmsg_len) + sizeof (size_t) - 1) & (size_t) ~(sizeof (size_t) - 1)));
48541 if ((unsigned char *) (__cmsg + 1) > ((unsigned char *) __mhdr->msg_control
48542 + __mhdr->msg_controllen)
48543 || ((unsigned char *) __cmsg + (((__cmsg->cmsg_len) + sizeof (size_t) - 1) & (size_t) ~(sizeof (size_t) - 1))
48544 > ((unsigned char *) __mhdr->msg_control + __mhdr->msg_controllen)))
48545
48546 return 0;
48547 return __cmsg;
48548 }
48549
48550
48551
48552
48553 enum
48554 {
48555 SCM_RIGHTS = 0x01
48556 #define SCM_RIGHTS SCM_RIGHTS
48557
48558 , SCM_CREDENTIALS = 0x02
48559 #define SCM_CREDENTIALS SCM_CREDENTIALS
48560
48561 };
48562
48563
48564
48565 struct ucred
48566 {
48567 pid_t pid;
48568 uid_t uid;
48569 gid_t gid;
48570 };
48571 # 381 "/usr/include/bits/socket.h" 3 4
48572 # 1 "/usr/include/asm/socket.h" 1 3 4
48573 # 1 "/usr/include/asm-generic/socket.h" 1 3 4
48574
48575 #define __ASM_GENERIC_SOCKET_H
48576
48577 # 1 "/usr/include/asm/sockios.h" 1 3 4
48578 # 1 "/usr/include/asm-generic/sockios.h" 1 3 4
48579
48580 #define __ASM_GENERIC_SOCKIOS_H
48581
48582
48583 #define FIOSETOWN 0x8901
48584 #define SIOCSPGRP 0x8902
48585 #define FIOGETOWN 0x8903
48586 #define SIOCGPGRP 0x8904
48587 #define SIOCATMARK 0x8905
48588 #define SIOCGSTAMP 0x8906
48589 #define SIOCGSTAMPNS 0x8907
48590 # 1 "/usr/include/asm/sockios.h" 2 3 4
48591 # 5 "/usr/include/asm-generic/socket.h" 2 3 4
48592
48593
48594 #define SOL_SOCKET 1
48595
48596 #define SO_DEBUG 1
48597 #define SO_REUSEADDR 2
48598 #define SO_TYPE 3
48599 #define SO_ERROR 4
48600 #define SO_DONTROUTE 5
48601 #define SO_BROADCAST 6
48602 #define SO_SNDBUF 7
48603 #define SO_RCVBUF 8
48604 #define SO_SNDBUFFORCE 32
48605 #define SO_RCVBUFFORCE 33
48606 #define SO_KEEPALIVE 9
48607 #define SO_OOBINLINE 10
48608 #define SO_NO_CHECK 11
48609 #define SO_PRIORITY 12
48610 #define SO_LINGER 13
48611 #define SO_BSDCOMPAT 14
48612
48613
48614
48615 #define SO_PASSCRED 16
48616 #define SO_PEERCRED 17
48617 #define SO_RCVLOWAT 18
48618 #define SO_SNDLOWAT 19
48619 #define SO_RCVTIMEO 20
48620 #define SO_SNDTIMEO 21
48621
48622
48623
48624 #define SO_SECURITY_AUTHENTICATION 22
48625 #define SO_SECURITY_ENCRYPTION_TRANSPORT 23
48626 #define SO_SECURITY_ENCRYPTION_NETWORK 24
48627
48628 #define SO_BINDTODEVICE 25
48629
48630
48631 #define SO_ATTACH_FILTER 26
48632 #define SO_DETACH_FILTER 27
48633
48634 #define SO_PEERNAME 28
48635 #define SO_TIMESTAMP 29
48636 #define SCM_TIMESTAMP SO_TIMESTAMP
48637
48638 #define SO_ACCEPTCONN 30
48639
48640 #define SO_PEERSEC 31
48641 #define SO_PASSSEC 34
48642 #define SO_TIMESTAMPNS 35
48643 #define SCM_TIMESTAMPNS SO_TIMESTAMPNS
48644
48645 #define SO_MARK 36
48646
48647 #define SO_TIMESTAMPING 37
48648 #define SCM_TIMESTAMPING SO_TIMESTAMPING
48649
48650 #define SO_PROTOCOL 38
48651 #define SO_DOMAIN 39
48652
48653 #define SO_RXQ_OVFL 40
48654 # 1 "/usr/include/asm/socket.h" 2 3 4
48655 # 382 "/usr/include/bits/socket.h" 2 3 4
48656 # 415 "/usr/include/bits/socket.h" 3 4
48657 struct linger
48658 {
48659 int l_onoff;
48660 int l_linger;
48661 };
48662
48663
48664 extern "C" {
48665
48666
48667
48668
48669
48670
48671 extern int recvmmsg (int __fd, struct mmsghdr *__vmessages,
48672 unsigned int __vlen, int __flags,
48673 __const struct timespec *__tmo);
48674
48675
48676
48677
48678
48679 extern int sendmmsg (int __fd, struct mmsghdr *__vmessages,
48680 unsigned int __vlen, int __flags);
48681
48682 }
48683 # 41 "/usr/include/sys/socket.h" 2 3 4
48684
48685
48686
48687
48688 struct osockaddr
48689 {
48690 unsigned short int sa_family;
48691 unsigned char sa_data[14];
48692 };
48693
48694
48695
48696
48697 enum
48698 {
48699 SHUT_RD = 0,
48700 #define SHUT_RD SHUT_RD
48701 SHUT_WR,
48702 #define SHUT_WR SHUT_WR
48703 SHUT_RDWR
48704 #define SHUT_RDWR SHUT_RDWR
48705 };
48706 # 71 "/usr/include/sys/socket.h" 3 4
48707 #define __SOCKADDR_ARG struct sockaddr *__restrict
48708 #define __CONST_SOCKADDR_ARG __const struct sockaddr *
48709 # 105 "/usr/include/sys/socket.h" 3 4
48710 extern int socket (int __domain, int __type, int __protocol) throw ();
48711
48712
48713
48714
48715
48716 extern int socketpair (int __domain, int __type, int __protocol,
48717 int __fds[2]) throw ();
48718
48719
48720 extern int bind (int __fd, __const struct sockaddr * __addr, socklen_t __len)
48721 throw ();
48722
48723
48724 extern int getsockname (int __fd, struct sockaddr *__restrict __addr,
48725 socklen_t *__restrict __len) throw ();
48726 # 129 "/usr/include/sys/socket.h" 3 4
48727 extern int connect (int __fd, __const struct sockaddr * __addr, socklen_t __len);
48728
48729
48730
48731 extern int getpeername (int __fd, struct sockaddr *__restrict __addr,
48732 socklen_t *__restrict __len) throw ();
48733
48734
48735
48736
48737
48738
48739 extern ssize_t send (int __fd, __const void *__buf, size_t __n, int __flags);
48740
48741
48742
48743
48744
48745
48746 extern ssize_t recv (int __fd, void *__buf, size_t __n, int __flags);
48747
48748
48749
48750
48751
48752
48753 extern ssize_t sendto (int __fd, __const void *__buf, size_t __n,
48754 int __flags, __const struct sockaddr * __addr,
48755 socklen_t __addr_len);
48756 # 166 "/usr/include/sys/socket.h" 3 4
48757 extern ssize_t recvfrom (int __fd, void *__restrict __buf, size_t __n,
48758 int __flags, struct sockaddr *__restrict __addr,
48759 socklen_t *__restrict __addr_len);
48760
48761
48762
48763
48764
48765
48766
48767 extern ssize_t sendmsg (int __fd, __const struct msghdr *__message,
48768 int __flags);
48769
48770
48771
48772
48773
48774
48775 extern ssize_t recvmsg (int __fd, struct msghdr *__message, int __flags);
48776
48777
48778
48779
48780
48781 extern int getsockopt (int __fd, int __level, int __optname,
48782 void *__restrict __optval,
48783 socklen_t *__restrict __optlen) throw ();
48784
48785
48786
48787
48788 extern int setsockopt (int __fd, int __level, int __optname,
48789 __const void *__optval, socklen_t __optlen) throw ();
48790
48791
48792
48793
48794
48795 extern int listen (int __fd, int __n) throw ();
48796 # 214 "/usr/include/sys/socket.h" 3 4
48797 extern int accept (int __fd, struct sockaddr *__restrict __addr,
48798 socklen_t *__restrict __addr_len);
48799
48800
48801
48802
48803
48804
48805 extern int accept4 (int __fd, struct sockaddr *__restrict __addr,
48806 socklen_t *__restrict __addr_len, int __flags);
48807 # 232 "/usr/include/sys/socket.h" 3 4
48808 extern int shutdown (int __fd, int __how) throw ();
48809
48810
48811
48812
48813 extern int sockatmark (int __fd) throw ();
48814
48815
48816
48817
48818
48819
48820
48821 extern int isfdtype (int __fd, int __fdtype) throw ();
48822
48823
48824
48825
48826
48827 # 1 "/usr/include/bits/socket2.h" 1 3 4
48828 # 24 "/usr/include/bits/socket2.h" 3 4
48829 extern ssize_t __recv_chk (int __fd, void *__buf, size_t __n, size_t __buflen,
48830 int __flags);
48831 extern ssize_t __recv_alias (int __fd, void *__buf, size_t __n, int __flags) __asm__ ("" "recv")
48832 ;
48833 extern ssize_t __recv_chk_warn (int __fd, void *__buf, size_t __n, size_t __buflen, int __flags) __asm__ ("" "__recv_chk")
48834
48835
48836 __attribute__((__warning__ ("recv called with bigger length than size of destination " "buffer")))
48837 ;
48838
48839 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) ssize_t
48840 recv (int __fd, void *__buf, size_t __n, int __flags)
48841 {
48842 if (__builtin_object_size (__buf, 0) != (size_t) -1)
48843 {
48844 if (!__builtin_constant_p (__n))
48845 return __recv_chk (__fd, __buf, __n, __builtin_object_size (__buf, 0), __flags);
48846
48847 if (__n > __builtin_object_size (__buf, 0))
48848 return __recv_chk_warn (__fd, __buf, __n, __builtin_object_size (__buf, 0), __flags);
48849 }
48850 return __recv_alias (__fd, __buf, __n, __flags);
48851 }
48852
48853 extern ssize_t __recvfrom_chk (int __fd, void *__restrict __buf, size_t __n,
48854 size_t __buflen, int __flags,
48855 struct sockaddr *__restrict __addr,
48856 socklen_t *__restrict __addr_len);
48857 extern ssize_t __recvfrom_alias (int __fd, void *__restrict __buf, size_t __n, int __flags, struct sockaddr *__restrict __addr, socklen_t *__restrict __addr_len) __asm__ ("" "recvfrom")
48858
48859
48860 ;
48861 extern ssize_t __recvfrom_chk_warn (int __fd, void *__restrict __buf, size_t __n, size_t __buflen, int __flags, struct sockaddr *__restrict __addr, socklen_t *__restrict __addr_len) __asm__ ("" "__recvfrom_chk")
48862
48863
48864
48865
48866 __attribute__((__warning__ ("recvfrom called with bigger length than size of " "destination buffer")))
48867 ;
48868
48869 extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) ssize_t
48870 recvfrom (int __fd, void *__restrict __buf, size_t __n, int __flags,
48871 struct sockaddr *__restrict __addr, socklen_t *__restrict __addr_len)
48872 {
48873 if (__builtin_object_size (__buf, 0) != (size_t) -1)
48874 {
48875 if (!__builtin_constant_p (__n))
48876 return __recvfrom_chk (__fd, __buf, __n, __builtin_object_size (__buf, 0), __flags,
48877 __addr, __addr_len);
48878 if (__n > __builtin_object_size (__buf, 0))
48879 return __recvfrom_chk_warn (__fd, __buf, __n, __builtin_object_size (__buf, 0), __flags,
48880 __addr, __addr_len);
48881 }
48882 return __recvfrom_alias (__fd, __buf, __n, __flags, __addr, __addr_len);
48883 }
48884 # 252 "/usr/include/sys/socket.h" 2 3 4
48885
48886
48887 }
48888 # 38 "../fwbuilder/InetAddr.h" 2
48889 # 1 "/usr/include/netinet/in.h" 1 3 4
48890 # 21 "/usr/include/netinet/in.h" 3 4
48891 #define _NETINET_IN_H 1
48892
48893
48894
48895
48896
48897
48898
48899 extern "C" {
48900
48901
48902 enum
48903 {
48904 IPPROTO_IP = 0,
48905 #define IPPROTO_IP IPPROTO_IP
48906 IPPROTO_HOPOPTS = 0,
48907 #define IPPROTO_HOPOPTS IPPROTO_HOPOPTS
48908 IPPROTO_ICMP = 1,
48909 #define IPPROTO_ICMP IPPROTO_ICMP
48910 IPPROTO_IGMP = 2,
48911 #define IPPROTO_IGMP IPPROTO_IGMP
48912 IPPROTO_IPIP = 4,
48913 #define IPPROTO_IPIP IPPROTO_IPIP
48914 IPPROTO_TCP = 6,
48915 #define IPPROTO_TCP IPPROTO_TCP
48916 IPPROTO_EGP = 8,
48917 #define IPPROTO_EGP IPPROTO_EGP
48918 IPPROTO_PUP = 12,
48919 #define IPPROTO_PUP IPPROTO_PUP
48920 IPPROTO_UDP = 17,
48921 #define IPPROTO_UDP IPPROTO_UDP
48922 IPPROTO_IDP = 22,
48923 #define IPPROTO_IDP IPPROTO_IDP
48924 IPPROTO_TP = 29,
48925 #define IPPROTO_TP IPPROTO_TP
48926 IPPROTO_DCCP = 33,
48927 #define IPPROTO_DCCP IPPROTO_DCCP
48928 IPPROTO_IPV6 = 41,
48929 #define IPPROTO_IPV6 IPPROTO_IPV6
48930 IPPROTO_ROUTING = 43,
48931 #define IPPROTO_ROUTING IPPROTO_ROUTING
48932 IPPROTO_FRAGMENT = 44,
48933 #define IPPROTO_FRAGMENT IPPROTO_FRAGMENT
48934 IPPROTO_RSVP = 46,
48935 #define IPPROTO_RSVP IPPROTO_RSVP
48936 IPPROTO_GRE = 47,
48937 #define IPPROTO_GRE IPPROTO_GRE
48938 IPPROTO_ESP = 50,
48939 #define IPPROTO_ESP IPPROTO_ESP
48940 IPPROTO_AH = 51,
48941 #define IPPROTO_AH IPPROTO_AH
48942 IPPROTO_ICMPV6 = 58,
48943 #define IPPROTO_ICMPV6 IPPROTO_ICMPV6
48944 IPPROTO_NONE = 59,
48945 #define IPPROTO_NONE IPPROTO_NONE
48946 IPPROTO_DSTOPTS = 60,
48947 #define IPPROTO_DSTOPTS IPPROTO_DSTOPTS
48948 IPPROTO_MTP = 92,
48949 #define IPPROTO_MTP IPPROTO_MTP
48950 IPPROTO_ENCAP = 98,
48951 #define IPPROTO_ENCAP IPPROTO_ENCAP
48952 IPPROTO_PIM = 103,
48953 #define IPPROTO_PIM IPPROTO_PIM
48954 IPPROTO_COMP = 108,
48955 #define IPPROTO_COMP IPPROTO_COMP
48956 IPPROTO_SCTP = 132,
48957 #define IPPROTO_SCTP IPPROTO_SCTP
48958 IPPROTO_UDPLITE = 136,
48959 #define IPPROTO_UDPLITE IPPROTO_UDPLITE
48960 IPPROTO_RAW = 255,
48961 #define IPPROTO_RAW IPPROTO_RAW
48962 IPPROTO_MAX
48963 };
48964
48965
48966
48967 typedef uint16_t in_port_t;
48968
48969
48970 enum
48971 {
48972 IPPORT_ECHO = 7,
48973 IPPORT_DISCARD = 9,
48974 IPPORT_SYSTAT = 11,
48975 IPPORT_DAYTIME = 13,
48976 IPPORT_NETSTAT = 15,
48977 IPPORT_FTP = 21,
48978 IPPORT_TELNET = 23,
48979 IPPORT_SMTP = 25,
48980 IPPORT_TIMESERVER = 37,
48981 IPPORT_NAMESERVER = 42,
48982 IPPORT_WHOIS = 43,
48983 IPPORT_MTP = 57,
48984
48985 IPPORT_TFTP = 69,
48986 IPPORT_RJE = 77,
48987 IPPORT_FINGER = 79,
48988 IPPORT_TTYLINK = 87,
48989 IPPORT_SUPDUP = 95,
48990
48991
48992 IPPORT_EXECSERVER = 512,
48993 IPPORT_LOGINSERVER = 513,
48994 IPPORT_CMDSERVER = 514,
48995 IPPORT_EFSSERVER = 520,
48996
48997
48998 IPPORT_BIFFUDP = 512,
48999 IPPORT_WHOSERVER = 513,
49000 IPPORT_ROUTESERVER = 520,
49001
49002
49003 IPPORT_RESERVED = 1024,
49004
49005
49006 IPPORT_USERRESERVED = 5000
49007 };
49008
49009
49010
49011 typedef uint32_t in_addr_t;
49012 struct in_addr
49013 {
49014 in_addr_t s_addr;
49015 };
49016
49017
49018
49019
49020
49021
49022
49023 #define IN_CLASSA(a) ((((in_addr_t)(a)) & 0x80000000) == 0)
49024 #define IN_CLASSA_NET 0xff000000
49025 #define IN_CLASSA_NSHIFT 24
49026 #define IN_CLASSA_HOST (0xffffffff & ~IN_CLASSA_NET)
49027 #define IN_CLASSA_MAX 128
49028
49029 #define IN_CLASSB(a) ((((in_addr_t)(a)) & 0xc0000000) == 0x80000000)
49030 #define IN_CLASSB_NET 0xffff0000
49031 #define IN_CLASSB_NSHIFT 16
49032 #define IN_CLASSB_HOST (0xffffffff & ~IN_CLASSB_NET)
49033 #define IN_CLASSB_MAX 65536
49034
49035 #define IN_CLASSC(a) ((((in_addr_t)(a)) & 0xe0000000) == 0xc0000000)
49036 #define IN_CLASSC_NET 0xffffff00
49037 #define IN_CLASSC_NSHIFT 8
49038 #define IN_CLASSC_HOST (0xffffffff & ~IN_CLASSC_NET)
49039
49040 #define IN_CLASSD(a) ((((in_addr_t)(a)) & 0xf0000000) == 0xe0000000)
49041 #define IN_MULTICAST(a) IN_CLASSD(a)
49042
49043 #define IN_EXPERIMENTAL(a) ((((in_addr_t)(a)) & 0xe0000000) == 0xe0000000)
49044 #define IN_BADCLASS(a) ((((in_addr_t)(a)) & 0xf0000000) == 0xf0000000)
49045
49046
49047 #define INADDR_ANY ((in_addr_t) 0x00000000)
49048
49049 #define INADDR_BROADCAST ((in_addr_t) 0xffffffff)
49050
49051 #define INADDR_NONE ((in_addr_t) 0xffffffff)
49052
49053
49054 #define IN_LOOPBACKNET 127
49055
49056
49057 #define INADDR_LOOPBACK ((in_addr_t) 0x7f000001)
49058
49059
49060
49061 #define INADDR_UNSPEC_GROUP ((in_addr_t) 0xe0000000)
49062 #define INADDR_ALLHOSTS_GROUP ((in_addr_t) 0xe0000001)
49063 #define INADDR_ALLRTRS_GROUP ((in_addr_t) 0xe0000002)
49064 #define INADDR_MAX_LOCAL_GROUP ((in_addr_t) 0xe00000ff)
49065
49066
49067
49068 struct in6_addr
49069 {
49070 union
49071 {
49072 uint8_t __u6_addr8[16];
49073
49074 uint16_t __u6_addr16[8];
49075 uint32_t __u6_addr32[4];
49076
49077 } __in6_u;
49078 #define s6_addr __in6_u.__u6_addr8
49079
49080 #define s6_addr16 __in6_u.__u6_addr16
49081 #define s6_addr32 __in6_u.__u6_addr32
49082
49083 };
49084
49085 extern const struct in6_addr in6addr_any;
49086 extern const struct in6_addr in6addr_loopback;
49087 #define IN6ADDR_ANY_INIT { { { 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 } } }
49088 #define IN6ADDR_LOOPBACK_INIT { { { 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1 } } }
49089
49090 #define INET_ADDRSTRLEN 16
49091 #define INET6_ADDRSTRLEN 46
49092
49093
49094
49095 struct sockaddr_in
49096 {
49097 sa_family_t sin_family;
49098 in_port_t sin_port;
49099 struct in_addr sin_addr;
49100
49101
49102 unsigned char sin_zero[sizeof (struct sockaddr) -
49103 (sizeof (unsigned short int)) -
49104 sizeof (in_port_t) -
49105 sizeof (struct in_addr)];
49106 };
49107
49108
49109 struct sockaddr_in6
49110 {
49111 sa_family_t sin6_family;
49112 in_port_t sin6_port;
49113 uint32_t sin6_flowinfo;
49114 struct in6_addr sin6_addr;
49115 uint32_t sin6_scope_id;
49116 };
49117
49118
49119
49120
49121 struct ip_mreq
49122 {
49123
49124 struct in_addr imr_multiaddr;
49125
49126
49127 struct in_addr imr_interface;
49128 };
49129
49130 struct ip_mreq_source
49131 {
49132
49133 struct in_addr imr_multiaddr;
49134
49135
49136 struct in_addr imr_interface;
49137
49138
49139 struct in_addr imr_sourceaddr;
49140 };
49141
49142
49143
49144
49145 struct ipv6_mreq
49146 {
49147
49148 struct in6_addr ipv6mr_multiaddr;
49149
49150
49151 unsigned int ipv6mr_interface;
49152 };
49153
49154
49155
49156
49157 struct group_req
49158 {
49159
49160 uint32_t gr_interface;
49161
49162
49163 struct sockaddr_storage gr_group;
49164 };
49165
49166 struct group_source_req
49167 {
49168
49169 uint32_t gsr_interface;
49170
49171
49172 struct sockaddr_storage gsr_group;
49173
49174
49175 struct sockaddr_storage gsr_source;
49176 };
49177
49178
49179
49180 struct ip_msfilter
49181 {
49182
49183 struct in_addr imsf_multiaddr;
49184
49185
49186 struct in_addr imsf_interface;
49187
49188
49189 uint32_t imsf_fmode;
49190
49191
49192 uint32_t imsf_numsrc;
49193
49194 struct in_addr imsf_slist[1];
49195 };
49196
49197 #define IP_MSFILTER_SIZE(numsrc) (sizeof (struct ip_msfilter) - sizeof (struct in_addr) + (numsrc) * sizeof (struct in_addr))
49198
49199
49200
49201 struct group_filter
49202 {
49203
49204 uint32_t gf_interface;
49205
49206
49207 struct sockaddr_storage gf_group;
49208
49209
49210 uint32_t gf_fmode;
49211
49212
49213 uint32_t gf_numsrc;
49214
49215 struct sockaddr_storage gf_slist[1];
49216 };
49217
49218 #define GROUP_FILTER_SIZE(numsrc) (sizeof (struct group_filter) - sizeof (struct sockaddr_storage) + ((numsrc) * sizeof (struct sockaddr_storage)))
49219
49220
49221
49222
49223
49224
49225
49226 # 1 "/usr/include/bits/in.h" 1 3 4
49227 # 28 "/usr/include/bits/in.h" 3 4
49228 #define IP_OPTIONS 4
49229 #define IP_HDRINCL 3
49230 #define IP_TOS 1
49231 #define IP_TTL 2
49232 #define IP_RECVOPTS 6
49233
49234 #define IP_RECVRETOPTS IP_RETOPTS
49235 #define IP_RETOPTS 7
49236 #define IP_MULTICAST_IF 32
49237 #define IP_MULTICAST_TTL 33
49238 #define IP_MULTICAST_LOOP 34
49239 #define IP_ADD_MEMBERSHIP 35
49240 #define IP_DROP_MEMBERSHIP 36
49241 #define IP_UNBLOCK_SOURCE 37
49242 #define IP_BLOCK_SOURCE 38
49243 #define IP_ADD_SOURCE_MEMBERSHIP 39
49244 #define IP_DROP_SOURCE_MEMBERSHIP 40
49245 #define IP_MSFILTER 41
49246
49247 #define MCAST_JOIN_GROUP 42
49248 #define MCAST_BLOCK_SOURCE 43
49249 #define MCAST_UNBLOCK_SOURCE 44
49250 #define MCAST_LEAVE_GROUP 45
49251 #define MCAST_JOIN_SOURCE_GROUP 46
49252 #define MCAST_LEAVE_SOURCE_GROUP 47
49253 #define MCAST_MSFILTER 48
49254
49255 #define MCAST_EXCLUDE 0
49256 #define MCAST_INCLUDE 1
49257
49258
49259 #define IP_ROUTER_ALERT 5
49260 #define IP_PKTINFO 8
49261 #define IP_PKTOPTIONS 9
49262 #define IP_PMTUDISC 10
49263 #define IP_MTU_DISCOVER 10
49264 #define IP_RECVERR 11
49265 #define IP_RECVTTL 12
49266 #define IP_RECVTOS 13
49267 #define IP_MTU 14
49268 #define IP_FREEBIND 15
49269 #define IP_IPSEC_POLICY 16
49270 #define IP_XFRM_POLICY 17
49271 #define IP_PASSSEC 18
49272 #define IP_TRANSPARENT 19
49273
49274
49275 #define IP_ORIGDSTADDR 20
49276 #define IP_RECVORIGDSTADDR IP_ORIGDSTADDR
49277
49278 #define IP_MINTTL 21
49279
49280
49281
49282 #define IP_PMTUDISC_DONT 0
49283 #define IP_PMTUDISC_WANT 1
49284 #define IP_PMTUDISC_DO 2
49285 #define IP_PMTUDISC_PROBE 3
49286
49287
49288 #define SOL_IP 0
49289
49290 #define IP_DEFAULT_MULTICAST_TTL 1
49291 #define IP_DEFAULT_MULTICAST_LOOP 1
49292 #define IP_MAX_MEMBERSHIPS 20
49293
49294
49295
49296
49297
49298 struct ip_opts
49299 {
49300 struct in_addr ip_dst;
49301 char ip_opts[40];
49302 };
49303
49304
49305 struct ip_mreqn
49306 {
49307 struct in_addr imr_multiaddr;
49308 struct in_addr imr_address;
49309 int imr_ifindex;
49310 };
49311
49312
49313 struct in_pktinfo
49314 {
49315 int ipi_ifindex;
49316 struct in_addr ipi_spec_dst;
49317 struct in_addr ipi_addr;
49318 };
49319
49320
49321
49322
49323
49324 #define IPV6_ADDRFORM 1
49325 #define IPV6_2292PKTINFO 2
49326 #define IPV6_2292HOPOPTS 3
49327 #define IPV6_2292DSTOPTS 4
49328 #define IPV6_2292RTHDR 5
49329 #define IPV6_2292PKTOPTIONS 6
49330 #define IPV6_CHECKSUM 7
49331 #define IPV6_2292HOPLIMIT 8
49332
49333 #define SCM_SRCRT IPV6_RXSRCRT
49334
49335 #define IPV6_NEXTHOP 9
49336 #define IPV6_AUTHHDR 10
49337 #define IPV6_UNICAST_HOPS 16
49338 #define IPV6_MULTICAST_IF 17
49339 #define IPV6_MULTICAST_HOPS 18
49340 #define IPV6_MULTICAST_LOOP 19
49341 #define IPV6_JOIN_GROUP 20
49342 #define IPV6_LEAVE_GROUP 21
49343 #define IPV6_ROUTER_ALERT 22
49344 #define IPV6_MTU_DISCOVER 23
49345 #define IPV6_MTU 24
49346 #define IPV6_RECVERR 25
49347 #define IPV6_V6ONLY 26
49348 #define IPV6_JOIN_ANYCAST 27
49349 #define IPV6_LEAVE_ANYCAST 28
49350 #define IPV6_IPSEC_POLICY 34
49351 #define IPV6_XFRM_POLICY 35
49352
49353 #define IPV6_RECVPKTINFO 49
49354 #define IPV6_PKTINFO 50
49355 #define IPV6_RECVHOPLIMIT 51
49356 #define IPV6_HOPLIMIT 52
49357 #define IPV6_RECVHOPOPTS 53
49358 #define IPV6_HOPOPTS 54
49359 #define IPV6_RTHDRDSTOPTS 55
49360 #define IPV6_RECVRTHDR 56
49361 #define IPV6_RTHDR 57
49362 #define IPV6_RECVDSTOPTS 58
49363 #define IPV6_DSTOPTS 59
49364
49365 #define IPV6_RECVTCLASS 66
49366 #define IPV6_TCLASS 67
49367
49368
49369 #define IPV6_ADD_MEMBERSHIP IPV6_JOIN_GROUP
49370 #define IPV6_DROP_MEMBERSHIP IPV6_LEAVE_GROUP
49371 #define IPV6_RXHOPOPTS IPV6_HOPOPTS
49372 #define IPV6_RXDSTOPTS IPV6_DSTOPTS
49373
49374
49375 #define IPV6_PMTUDISC_DONT 0
49376 #define IPV6_PMTUDISC_WANT 1
49377 #define IPV6_PMTUDISC_DO 2
49378 #define IPV6_PMTUDISC_PROBE 3
49379
49380
49381 #define SOL_IPV6 41
49382 #define SOL_ICMPV6 58
49383
49384
49385 #define IPV6_RTHDR_LOOSE 0
49386 #define IPV6_RTHDR_STRICT 1
49387
49388 #define IPV6_RTHDR_TYPE_0 0
49389 # 357 "/usr/include/netinet/in.h" 2 3 4
49390 # 365 "/usr/include/netinet/in.h" 3 4
49391 extern uint32_t ntohl (uint32_t __netlong) throw () __attribute__ ((__const__));
49392 extern uint16_t ntohs (uint16_t __netshort)
49393 throw () __attribute__ ((__const__));
49394 extern uint32_t htonl (uint32_t __hostlong)
49395 throw () __attribute__ ((__const__));
49396 extern uint16_t htons (uint16_t __hostshort)
49397 throw () __attribute__ ((__const__));
49398
49399
49400
49401
49402 # 1 "/usr/include/bits/byteswap.h" 1 3 4
49403 # 377 "/usr/include/netinet/in.h" 2 3 4
49404 # 391 "/usr/include/netinet/in.h" 3 4
49405 #define ntohl(x) __bswap_32 (x)
49406 #define ntohs(x) __bswap_16 (x)
49407 #define htonl(x) __bswap_32 (x)
49408 #define htons(x) __bswap_16 (x)
49409
49410
49411
49412
49413 #define IN6_IS_ADDR_UNSPECIFIED(a) (((__const uint32_t *) (a))[0] == 0 && ((__const uint32_t *) (a))[1] == 0 && ((__const uint32_t *) (a))[2] == 0 && ((__const uint32_t *) (a))[3] == 0)
49414
49415
49416
49417
49418
49419 #define IN6_IS_ADDR_LOOPBACK(a) (((__const uint32_t *) (a))[0] == 0 && ((__const uint32_t *) (a))[1] == 0 && ((__const uint32_t *) (a))[2] == 0 && ((__const uint32_t *) (a))[3] == htonl (1))
49420
49421
49422
49423
49424
49425 #define IN6_IS_ADDR_MULTICAST(a) (((__const uint8_t *) (a))[0] == 0xff)
49426
49427 #define IN6_IS_ADDR_LINKLOCAL(a) ((((__const uint32_t *) (a))[0] & htonl (0xffc00000)) == htonl (0xfe800000))
49428
49429
49430
49431 #define IN6_IS_ADDR_SITELOCAL(a) ((((__const uint32_t *) (a))[0] & htonl (0xffc00000)) == htonl (0xfec00000))
49432
49433
49434
49435 #define IN6_IS_ADDR_V4MAPPED(a) ((((__const uint32_t *) (a))[0] == 0) && (((__const uint32_t *) (a))[1] == 0) && (((__const uint32_t *) (a))[2] == htonl (0xffff)))
49436
49437
49438
49439
49440 #define IN6_IS_ADDR_V4COMPAT(a) ((((__const uint32_t *) (a))[0] == 0) && (((__const uint32_t *) (a))[1] == 0) && (((__const uint32_t *) (a))[2] == 0) && (ntohl (((__const uint32_t *) (a))[3]) > 1))
49441
49442
49443
49444
49445
49446 #define IN6_ARE_ADDR_EQUAL(a,b) ((((__const uint32_t *) (a))[0] == ((__const uint32_t *) (b))[0]) && (((__const uint32_t *) (a))[1] == ((__const uint32_t *) (b))[1]) && (((__const uint32_t *) (a))[2] == ((__const uint32_t *) (b))[2]) && (((__const uint32_t *) (a))[3] == ((__const uint32_t *) (b))[3]))
49447
49448
49449
49450
49451
49452
49453
49454 extern int bindresvport (int __sockfd, struct sockaddr_in *__sock_in) throw ();
49455
49456
49457 extern int bindresvport6 (int __sockfd, struct sockaddr_in6 *__sock_in)
49458 throw ();
49459
49460
49461
49462 #define IN6_IS_ADDR_MC_NODELOCAL(a) (IN6_IS_ADDR_MULTICAST(a) && ((((__const uint8_t *) (a))[1] & 0xf) == 0x1))
49463
49464
49465
49466 #define IN6_IS_ADDR_MC_LINKLOCAL(a) (IN6_IS_ADDR_MULTICAST(a) && ((((__const uint8_t *) (a))[1] & 0xf) == 0x2))
49467
49468
49469
49470 #define IN6_IS_ADDR_MC_SITELOCAL(a) (IN6_IS_ADDR_MULTICAST(a) && ((((__const uint8_t *) (a))[1] & 0xf) == 0x5))
49471
49472
49473
49474 #define IN6_IS_ADDR_MC_ORGLOCAL(a) (IN6_IS_ADDR_MULTICAST(a) && ((((__const uint8_t *) (a))[1] & 0xf) == 0x8))
49475
49476
49477
49478 #define IN6_IS_ADDR_MC_GLOBAL(a) (IN6_IS_ADDR_MULTICAST(a) && ((((__const uint8_t *) (a))[1] & 0xf) == 0xe))
49479
49480
49481
49482
49483
49484
49485 struct in6_pktinfo
49486 {
49487 struct in6_addr ipi6_addr;
49488 unsigned int ipi6_ifindex;
49489 };
49490
49491
49492 struct ip6_mtuinfo
49493 {
49494 struct sockaddr_in6 ip6m_addr;
49495 uint32_t ip6m_mtu;
49496 };
49497
49498
49499
49500 extern int inet6_option_space (int __nbytes)
49501 throw () __attribute__ ((__deprecated__));
49502 extern int inet6_option_init (void *__bp, struct cmsghdr **__cmsgp,
49503 int __type) throw () __attribute__ ((__deprecated__));
49504 extern int inet6_option_append (struct cmsghdr *__cmsg,
49505 __const uint8_t *__typep, int __multx,
49506 int __plusy) throw () __attribute__ ((__deprecated__));
49507 extern uint8_t *inet6_option_alloc (struct cmsghdr *__cmsg, int __datalen,
49508 int __multx, int __plusy)
49509 throw () __attribute__ ((__deprecated__));
49510 extern int inet6_option_next (__const struct cmsghdr *__cmsg,
49511 uint8_t **__tptrp)
49512 throw () __attribute__ ((__deprecated__));
49513 extern int inet6_option_find (__const struct cmsghdr *__cmsg,
49514 uint8_t **__tptrp, int __type)
49515 throw () __attribute__ ((__deprecated__));
49516
49517
49518
49519 extern int inet6_opt_init (void *__extbuf, socklen_t __extlen) throw ();
49520 extern int inet6_opt_append (void *__extbuf, socklen_t __extlen, int __offset,
49521 uint8_t __type, socklen_t __len, uint8_t __align,
49522 void **__databufp) throw ();
49523 extern int inet6_opt_finish (void *__extbuf, socklen_t __extlen, int __offset)
49524 throw ();
49525 extern int inet6_opt_set_val (void *__databuf, int __offset, void *__val,
49526 socklen_t __vallen) throw ();
49527 extern int inet6_opt_next (void *__extbuf, socklen_t __extlen, int __offset,
49528 uint8_t *__typep, socklen_t *__lenp,
49529 void **__databufp) throw ();
49530 extern int inet6_opt_find (void *__extbuf, socklen_t __extlen, int __offset,
49531 uint8_t __type, socklen_t *__lenp,
49532 void **__databufp) throw ();
49533 extern int inet6_opt_get_val (void *__databuf, int __offset, void *__val,
49534 socklen_t __vallen) throw ();
49535
49536
49537
49538 extern socklen_t inet6_rth_space (int __type, int __segments) throw ();
49539 extern void *inet6_rth_init (void *__bp, socklen_t __bp_len, int __type,
49540 int __segments) throw ();
49541 extern int inet6_rth_add (void *__bp, __const struct in6_addr *__addr) throw ();
49542 extern int inet6_rth_reverse (__const void *__in, void *__out) throw ();
49543 extern int inet6_rth_segments (__const void *__bp) throw ();
49544 extern struct in6_addr *inet6_rth_getaddr (__const void *__bp, int __index)
49545 throw ();
49546
49547
49548
49549
49550
49551 extern int getipv4sourcefilter (int __s, struct in_addr __interface_addr,
49552 struct in_addr __group, uint32_t *__fmode,
49553 uint32_t *__numsrc, struct in_addr *__slist)
49554 throw ();
49555
49556
49557 extern int setipv4sourcefilter (int __s, struct in_addr __interface_addr,
49558 struct in_addr __group, uint32_t __fmode,
49559 uint32_t __numsrc,
49560 __const struct in_addr *__slist)
49561 throw ();
49562
49563
49564
49565 extern int getsourcefilter (int __s, uint32_t __interface_addr,
49566 __const struct sockaddr *__group,
49567 socklen_t __grouplen, uint32_t *__fmode,
49568 uint32_t *__numsrc,
49569 struct sockaddr_storage *__slist) throw ();
49570
49571
49572 extern int setsourcefilter (int __s, uint32_t __interface_addr,
49573 __const struct sockaddr *__group,
49574 socklen_t __grouplen, uint32_t __fmode,
49575 uint32_t __numsrc,
49576 __const struct sockaddr_storage *__slist) throw ();
49577
49578
49579 }
49580 # 39 "../fwbuilder/InetAddr.h" 2
49581 # 1 "/usr/include/arpa/inet.h" 1 3 4
49582 # 20 "/usr/include/arpa/inet.h" 3 4
49583 #define _ARPA_INET_H 1
49584 # 31 "/usr/include/arpa/inet.h" 3 4
49585 extern "C" {
49586
49587
49588
49589 extern in_addr_t inet_addr (__const char *__cp) throw ();
49590
49591
49592 extern in_addr_t inet_lnaof (struct in_addr __in) throw ();
49593
49594
49595
49596 extern struct in_addr inet_makeaddr (in_addr_t __net, in_addr_t __host)
49597 throw ();
49598
49599
49600 extern in_addr_t inet_netof (struct in_addr __in) throw ();
49601
49602
49603
49604 extern in_addr_t inet_network (__const char *__cp) throw ();
49605
49606
49607
49608 extern char *inet_ntoa (struct in_addr __in) throw ();
49609
49610
49611
49612
49613 extern int inet_pton (int __af, __const char *__restrict __cp,
49614 void *__restrict __buf) throw ();
49615
49616
49617
49618
49619 extern __const char *inet_ntop (int __af, __const void *__restrict __cp,
49620 char *__restrict __buf, socklen_t __len)
49621 throw ();
49622
49623
49624
49625
49626
49627
49628 extern int inet_aton (__const char *__cp, struct in_addr *__inp) throw ();
49629
49630
49631
49632 extern char *inet_neta (in_addr_t __net, char *__buf, size_t __len) throw ();
49633
49634
49635
49636
49637 extern char *inet_net_ntop (int __af, __const void *__cp, int __bits,
49638 char *__buf, size_t __len) throw ();
49639
49640
49641
49642
49643 extern int inet_net_pton (int __af, __const char *__cp,
49644 void *__buf, size_t __len) throw ();
49645
49646
49647
49648
49649 extern unsigned int inet_nsap_addr (__const char *__cp,
49650 unsigned char *__buf, int __len) throw ();
49651
49652
49653
49654 extern char *inet_nsap_ntoa (int __len, __const unsigned char *__cp,
49655 char *__buf) throw ();
49656
49657
49658 }
49659 # 40 "../fwbuilder/InetAddr.h" 2
49660 # 49 "../fwbuilder/InetAddr.h"
49661 # 1 "../fwbuilder/uint128.h" 1
49662 # 25 "../fwbuilder/uint128.h"
49663 #define UINT128_20050119_H_
49664
49665 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/stdexcept" 1 3
49666 # 34 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/stdexcept" 3
49667 #define _GLIBCXX_STDEXCEPT 1
49668
49669
49670 # 37 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/stdexcept" 3
49671
49672
49673
49674
49675 namespace std __attribute__ ((__visibility__ ("default"))) {
49676 # 53 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/stdexcept" 3
49677 class logic_error : public exception
49678 {
49679 string _M_msg;
49680
49681 public:
49682
49683 explicit
49684 logic_error(const string& __arg);
49685
49686 virtual
49687 ~logic_error() throw();
49688
49689
49690
49691 virtual const char*
49692 what() const throw();
49693 };
49694
49695
49696
49697 class domain_error : public logic_error
49698 {
49699 public:
49700 explicit domain_error(const string& __arg);
49701 };
49702
49703
49704 class invalid_argument : public logic_error
49705 {
49706 public:
49707 explicit invalid_argument(const string& __arg);
49708 };
49709
49710
49711
49712 class length_error : public logic_error
49713 {
49714 public:
49715 explicit length_error(const string& __arg);
49716 };
49717
49718
49719
49720 class out_of_range : public logic_error
49721 {
49722 public:
49723 explicit out_of_range(const string& __arg);
49724 };
49725
49726
49727
49728
49729
49730
49731 class runtime_error : public exception
49732 {
49733 string _M_msg;
49734
49735 public:
49736
49737 explicit
49738 runtime_error(const string& __arg);
49739
49740 virtual
49741 ~runtime_error() throw();
49742
49743
49744
49745 virtual const char*
49746 what() const throw();
49747 };
49748
49749
49750 class range_error : public runtime_error
49751 {
49752 public:
49753 explicit range_error(const string& __arg);
49754 };
49755
49756
49757 class overflow_error : public runtime_error
49758 {
49759 public:
49760 explicit overflow_error(const string& __arg);
49761 };
49762
49763
49764 class underflow_error : public runtime_error
49765 {
49766 public:
49767 explicit underflow_error(const string& __arg);
49768 };
49769
49770
49771
49772 }
49773 # 28 "../fwbuilder/uint128.h" 2
49774
49775
49776
49777
49778
49779
49780 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/limits" 1 3
49781 # 39 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/limits" 3
49782 #define _GLIBCXX_NUMERIC_LIMITS 1
49783
49784
49785 # 42 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/limits" 3
49786 # 81 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/limits" 3
49787 #define __glibcxx_integral_traps true
49788 # 90 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/limits" 3
49789 #define __glibcxx_float_has_denorm_loss false
49790
49791
49792 #define __glibcxx_float_traps false
49793
49794
49795 #define __glibcxx_float_tinyness_before false
49796
49797
49798
49799
49800
49801
49802
49803 #define __glibcxx_double_has_denorm_loss false
49804
49805
49806 #define __glibcxx_double_traps false
49807
49808
49809 #define __glibcxx_double_tinyness_before false
49810
49811
49812
49813
49814
49815
49816
49817 #define __glibcxx_long_double_has_denorm_loss false
49818
49819
49820 #define __glibcxx_long_double_traps false
49821
49822
49823 #define __glibcxx_long_double_tinyness_before false
49824
49825
49826
49827
49828 #define __glibcxx_signed(T) ((T)(-1) < 0)
49829
49830 #define __glibcxx_min(T) (__glibcxx_signed (T) ? (T)1 << __glibcxx_digits (T) : (T)0)
49831
49832
49833 #define __glibcxx_max(T) (__glibcxx_signed (T) ? (((((T)1 << (__glibcxx_digits (T) - 1)) - 1) << 1) + 1) : ~(T)0)
49834
49835
49836
49837 #define __glibcxx_digits(T) (sizeof(T) * __CHAR_BIT__ - __glibcxx_signed (T))
49838
49839
49840
49841 #define __glibcxx_digits10(T) (__glibcxx_digits (T) * 643 / 2136)
49842
49843
49844 #define __glibcxx_max_digits10(T) (2 + (T) * 643 / 2136)
49845
49846
49847 namespace std __attribute__ ((__visibility__ ("default"))) {
49848
49849
49850
49851
49852
49853
49854 enum float_round_style
49855 {
49856 round_indeterminate = -1,
49857 round_toward_zero = 0,
49858 round_to_nearest = 1,
49859 round_toward_infinity = 2,
49860 round_toward_neg_infinity = 3
49861 };
49862
49863
49864
49865
49866
49867
49868
49869 enum float_denorm_style
49870 {
49871
49872 denorm_indeterminate = -1,
49873
49874 denorm_absent = 0,
49875
49876 denorm_present = 1
49877 };
49878 # 190 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/limits" 3
49879 struct __numeric_limits_base
49880 {
49881
49882
49883 static const bool is_specialized = false;
49884
49885
49886
49887
49888 static const int digits = 0;
49889
49890 static const int digits10 = 0;
49891
49892
49893
49894
49895
49896
49897 static const bool is_signed = false;
49898
49899
49900 static const bool is_integer = false;
49901
49902
49903
49904
49905 static const bool is_exact = false;
49906
49907
49908 static const int radix = 0;
49909
49910
49911
49912 static const int min_exponent = 0;
49913
49914
49915 static const int min_exponent10 = 0;
49916
49917
49918
49919 static const int max_exponent = 0;
49920
49921
49922 static const int max_exponent10 = 0;
49923
49924
49925 static const bool has_infinity = false;
49926
49927
49928 static const bool has_quiet_NaN = false;
49929
49930
49931 static const bool has_signaling_NaN = false;
49932
49933 static const float_denorm_style has_denorm = denorm_absent;
49934
49935
49936 static const bool has_denorm_loss = false;
49937
49938
49939
49940 static const bool is_iec559 = false;
49941
49942
49943
49944 static const bool is_bounded = false;
49945
49946
49947
49948
49949 static const bool is_modulo = false;
49950
49951
49952 static const bool traps = false;
49953
49954 static const bool tinyness_before = false;
49955
49956
49957
49958 static const float_round_style round_style = round_toward_zero;
49959 };
49960 # 283 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/limits" 3
49961 template<typename _Tp>
49962 struct numeric_limits : public __numeric_limits_base
49963 {
49964
49965
49966 static _Tp min() throw() { return static_cast<_Tp>(0); }
49967
49968 static _Tp max() throw() { return static_cast<_Tp>(0); }
49969
49970
49971
49972
49973
49974
49975
49976 static _Tp epsilon() throw() { return static_cast<_Tp>(0); }
49977
49978 static _Tp round_error() throw() { return static_cast<_Tp>(0); }
49979
49980 static _Tp infinity() throw() { return static_cast<_Tp>(0); }
49981
49982
49983
49984 static _Tp quiet_NaN() throw() { return static_cast<_Tp>(0); }
49985
49986
49987 static _Tp signaling_NaN() throw() { return static_cast<_Tp>(0); }
49988
49989
49990
49991 static _Tp denorm_min() throw() { return static_cast<_Tp>(0); }
49992 };
49993 # 334 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/limits" 3
49994 template<>
49995 struct numeric_limits<bool>
49996 {
49997 static const bool is_specialized = true;
49998
49999 static bool min() throw()
50000 { return false; }
50001 static bool max() throw()
50002 { return true; }
50003
50004
50005
50006
50007 static const int digits = 1;
50008 static const int digits10 = 0;
50009
50010
50011
50012 static const bool is_signed = false;
50013 static const bool is_integer = true;
50014 static const bool is_exact = true;
50015 static const int radix = 2;
50016 static bool epsilon() throw()
50017 { return false; }
50018 static bool round_error() throw()
50019 { return false; }
50020
50021 static const int min_exponent = 0;
50022 static const int min_exponent10 = 0;
50023 static const int max_exponent = 0;
50024 static const int max_exponent10 = 0;
50025
50026 static const bool has_infinity = false;
50027 static const bool has_quiet_NaN = false;
50028 static const bool has_signaling_NaN = false;
50029 static const float_denorm_style has_denorm = denorm_absent;
50030 static const bool has_denorm_loss = false;
50031
50032 static bool infinity() throw()
50033 { return false; }
50034 static bool quiet_NaN() throw()
50035 { return false; }
50036 static bool signaling_NaN() throw()
50037 { return false; }
50038 static bool denorm_min() throw()
50039 { return false; }
50040
50041 static const bool is_iec559 = false;
50042 static const bool is_bounded = true;
50043 static const bool is_modulo = false;
50044
50045
50046
50047
50048 static const bool traps = true;
50049 static const bool tinyness_before = false;
50050 static const float_round_style round_style = round_toward_zero;
50051 };
50052
50053
50054 template<>
50055 struct numeric_limits<char>
50056 {
50057 static const bool is_specialized = true;
50058
50059 static char min() throw()
50060 { return (((char)(-1) < 0) ? (char)1 << (sizeof(char) * 8 - ((char)(-1) < 0)) : (char)0); }
50061 static char max() throw()
50062 { return (((char)(-1) < 0) ? (((((char)1 << ((sizeof(char) * 8 - ((char)(-1) < 0)) - 1)) - 1) << 1) + 1) : ~(char)0); }
50063
50064
50065
50066
50067
50068 static const int digits = (sizeof(char) * 8 - ((char)(-1) < 0));
50069 static const int digits10 = ((sizeof(char) * 8 - ((char)(-1) < 0)) * 643 / 2136);
50070
50071
50072
50073 static const bool is_signed = ((char)(-1) < 0);
50074 static const bool is_integer = true;
50075 static const bool is_exact = true;
50076 static const int radix = 2;
50077 static char epsilon() throw()
50078 { return 0; }
50079 static char round_error() throw()
50080 { return 0; }
50081
50082 static const int min_exponent = 0;
50083 static const int min_exponent10 = 0;
50084 static const int max_exponent = 0;
50085 static const int max_exponent10 = 0;
50086
50087 static const bool has_infinity = false;
50088 static const bool has_quiet_NaN = false;
50089 static const bool has_signaling_NaN = false;
50090 static const float_denorm_style has_denorm = denorm_absent;
50091 static const bool has_denorm_loss = false;
50092
50093 static char infinity() throw()
50094 { return char(); }
50095 static char quiet_NaN() throw()
50096 { return char(); }
50097 static char signaling_NaN() throw()
50098 { return char(); }
50099 static char denorm_min() throw()
50100 { return static_cast<char>(0); }
50101
50102 static const bool is_iec559 = false;
50103 static const bool is_bounded = true;
50104 static const bool is_modulo = true;
50105
50106 static const bool traps = true;
50107 static const bool tinyness_before = false;
50108 static const float_round_style round_style = round_toward_zero;
50109 };
50110
50111
50112 template<>
50113 struct numeric_limits<signed char>
50114 {
50115 static const bool is_specialized = true;
50116
50117 static signed char min() throw()
50118 { return -127 - 1; }
50119 static signed char max() throw()
50120 { return 127; }
50121
50122
50123
50124
50125
50126 static const int digits = (sizeof(signed char) * 8 - ((signed char)(-1) < 0));
50127 static const int digits10 = ((sizeof(signed char) * 8 - ((signed char)(-1) < 0)) * 643 / 2136);
50128
50129
50130
50131 static const bool is_signed = true;
50132 static const bool is_integer = true;
50133 static const bool is_exact = true;
50134 static const int radix = 2;
50135 static signed char epsilon() throw()
50136 { return 0; }
50137 static signed char round_error() throw()
50138 { return 0; }
50139
50140 static const int min_exponent = 0;
50141 static const int min_exponent10 = 0;
50142 static const int max_exponent = 0;
50143 static const int max_exponent10 = 0;
50144
50145 static const bool has_infinity = false;
50146 static const bool has_quiet_NaN = false;
50147 static const bool has_signaling_NaN = false;
50148 static const float_denorm_style has_denorm = denorm_absent;
50149 static const bool has_denorm_loss = false;
50150
50151 static signed char infinity() throw()
50152 { return static_cast<signed char>(0); }
50153 static signed char quiet_NaN() throw()
50154 { return static_cast<signed char>(0); }
50155 static signed char signaling_NaN() throw()
50156 { return static_cast<signed char>(0); }
50157 static signed char denorm_min() throw()
50158 { return static_cast<signed char>(0); }
50159
50160 static const bool is_iec559 = false;
50161 static const bool is_bounded = true;
50162 static const bool is_modulo = true;
50163
50164 static const bool traps = true;
50165 static const bool tinyness_before = false;
50166 static const float_round_style round_style = round_toward_zero;
50167 };
50168
50169
50170 template<>
50171 struct numeric_limits<unsigned char>
50172 {
50173 static const bool is_specialized = true;
50174
50175 static unsigned char min() throw()
50176 { return 0; }
50177 static unsigned char max() throw()
50178 { return 127 * 2U + 1; }
50179
50180
50181
50182
50183
50184 static const int digits = (sizeof(unsigned char) * 8 - ((unsigned char)(-1) < 0));
50185 static const int digits10 = ((sizeof(unsigned char) * 8 - ((unsigned char)(-1) < 0)) * 643 / 2136);
50186
50187
50188
50189 static const bool is_signed = false;
50190 static const bool is_integer = true;
50191 static const bool is_exact = true;
50192 static const int radix = 2;
50193 static unsigned char epsilon() throw()
50194 { return 0; }
50195 static unsigned char round_error() throw()
50196 { return 0; }
50197
50198 static const int min_exponent = 0;
50199 static const int min_exponent10 = 0;
50200 static const int max_exponent = 0;
50201 static const int max_exponent10 = 0;
50202
50203 static const bool has_infinity = false;
50204 static const bool has_quiet_NaN = false;
50205 static const bool has_signaling_NaN = false;
50206 static const float_denorm_style has_denorm = denorm_absent;
50207 static const bool has_denorm_loss = false;
50208
50209 static unsigned char infinity() throw()
50210 { return static_cast<unsigned char>(0); }
50211 static unsigned char quiet_NaN() throw()
50212 { return static_cast<unsigned char>(0); }
50213 static unsigned char signaling_NaN() throw()
50214 { return static_cast<unsigned char>(0); }
50215 static unsigned char denorm_min() throw()
50216 { return static_cast<unsigned char>(0); }
50217
50218 static const bool is_iec559 = false;
50219 static const bool is_bounded = true;
50220 static const bool is_modulo = true;
50221
50222 static const bool traps = true;
50223 static const bool tinyness_before = false;
50224 static const float_round_style round_style = round_toward_zero;
50225 };
50226
50227
50228 template<>
50229 struct numeric_limits<wchar_t>
50230 {
50231 static const bool is_specialized = true;
50232
50233 static wchar_t min() throw()
50234 { return (((wchar_t)(-1) < 0) ? (wchar_t)1 << (sizeof(wchar_t) * 8 - ((wchar_t)(-1) < 0)) : (wchar_t)0); }
50235 static wchar_t max() throw()
50236 { return (((wchar_t)(-1) < 0) ? (((((wchar_t)1 << ((sizeof(wchar_t) * 8 - ((wchar_t)(-1) < 0)) - 1)) - 1) << 1) + 1) : ~(wchar_t)0); }
50237
50238
50239
50240
50241
50242 static const int digits = (sizeof(wchar_t) * 8 - ((wchar_t)(-1) < 0));
50243 static const int digits10 = ((sizeof(wchar_t) * 8 - ((wchar_t)(-1) < 0)) * 643 / 2136);
50244
50245
50246
50247 static const bool is_signed = ((wchar_t)(-1) < 0);
50248 static const bool is_integer = true;
50249 static const bool is_exact = true;
50250 static const int radix = 2;
50251 static wchar_t epsilon() throw()
50252 { return 0; }
50253 static wchar_t round_error() throw()
50254 { return 0; }
50255
50256 static const int min_exponent = 0;
50257 static const int min_exponent10 = 0;
50258 static const int max_exponent = 0;
50259 static const int max_exponent10 = 0;
50260
50261 static const bool has_infinity = false;
50262 static const bool has_quiet_NaN = false;
50263 static const bool has_signaling_NaN = false;
50264 static const float_denorm_style has_denorm = denorm_absent;
50265 static const bool has_denorm_loss = false;
50266
50267 static wchar_t infinity() throw()
50268 { return wchar_t(); }
50269 static wchar_t quiet_NaN() throw()
50270 { return wchar_t(); }
50271 static wchar_t signaling_NaN() throw()
50272 { return wchar_t(); }
50273 static wchar_t denorm_min() throw()
50274 { return wchar_t(); }
50275
50276 static const bool is_iec559 = false;
50277 static const bool is_bounded = true;
50278 static const bool is_modulo = true;
50279
50280 static const bool traps = true;
50281 static const bool tinyness_before = false;
50282 static const float_round_style round_style = round_toward_zero;
50283 };
50284 # 744 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/limits" 3
50285 template<>
50286 struct numeric_limits<short>
50287 {
50288 static const bool is_specialized = true;
50289
50290 static short min() throw()
50291 { return -32767 - 1; }
50292 static short max() throw()
50293 { return 32767; }
50294
50295
50296
50297
50298
50299 static const int digits = (sizeof(short) * 8 - ((short)(-1) < 0));
50300 static const int digits10 = ((sizeof(short) * 8 - ((short)(-1) < 0)) * 643 / 2136);
50301
50302
50303
50304 static const bool is_signed = true;
50305 static const bool is_integer = true;
50306 static const bool is_exact = true;
50307 static const int radix = 2;
50308 static short epsilon() throw()
50309 { return 0; }
50310 static short round_error() throw()
50311 { return 0; }
50312
50313 static const int min_exponent = 0;
50314 static const int min_exponent10 = 0;
50315 static const int max_exponent = 0;
50316 static const int max_exponent10 = 0;
50317
50318 static const bool has_infinity = false;
50319 static const bool has_quiet_NaN = false;
50320 static const bool has_signaling_NaN = false;
50321 static const float_denorm_style has_denorm = denorm_absent;
50322 static const bool has_denorm_loss = false;
50323
50324 static short infinity() throw()
50325 { return short(); }
50326 static short quiet_NaN() throw()
50327 { return short(); }
50328 static short signaling_NaN() throw()
50329 { return short(); }
50330 static short denorm_min() throw()
50331 { return short(); }
50332
50333 static const bool is_iec559 = false;
50334 static const bool is_bounded = true;
50335 static const bool is_modulo = true;
50336
50337 static const bool traps = true;
50338 static const bool tinyness_before = false;
50339 static const float_round_style round_style = round_toward_zero;
50340 };
50341
50342
50343 template<>
50344 struct numeric_limits<unsigned short>
50345 {
50346 static const bool is_specialized = true;
50347
50348 static unsigned short min() throw()
50349 { return 0; }
50350 static unsigned short max() throw()
50351 { return 32767 * 2U + 1; }
50352
50353
50354
50355
50356
50357 static const int digits = (sizeof(unsigned short) * 8 - ((unsigned short)(-1) < 0));
50358 static const int digits10 = ((sizeof(unsigned short) * 8 - ((unsigned short)(-1) < 0)) * 643 / 2136);
50359
50360
50361
50362 static const bool is_signed = false;
50363 static const bool is_integer = true;
50364 static const bool is_exact = true;
50365 static const int radix = 2;
50366 static unsigned short epsilon() throw()
50367 { return 0; }
50368 static unsigned short round_error() throw()
50369 { return 0; }
50370
50371 static const int min_exponent = 0;
50372 static const int min_exponent10 = 0;
50373 static const int max_exponent = 0;
50374 static const int max_exponent10 = 0;
50375
50376 static const bool has_infinity = false;
50377 static const bool has_quiet_NaN = false;
50378 static const bool has_signaling_NaN = false;
50379 static const float_denorm_style has_denorm = denorm_absent;
50380 static const bool has_denorm_loss = false;
50381
50382 static unsigned short infinity() throw()
50383 { return static_cast<unsigned short>(0); }
50384 static unsigned short quiet_NaN() throw()
50385 { return static_cast<unsigned short>(0); }
50386 static unsigned short signaling_NaN() throw()
50387 { return static_cast<unsigned short>(0); }
50388 static unsigned short denorm_min() throw()
50389 { return static_cast<unsigned short>(0); }
50390
50391 static const bool is_iec559 = false;
50392 static const bool is_bounded = true;
50393 static const bool is_modulo = true;
50394
50395 static const bool traps = true;
50396 static const bool tinyness_before = false;
50397 static const float_round_style round_style = round_toward_zero;
50398 };
50399
50400
50401 template<>
50402 struct numeric_limits<int>
50403 {
50404 static const bool is_specialized = true;
50405
50406 static int min() throw()
50407 { return -2147483647 - 1; }
50408 static int max() throw()
50409 { return 2147483647; }
50410
50411
50412
50413
50414
50415 static const int digits = (sizeof(int) * 8 - ((int)(-1) < 0));
50416 static const int digits10 = ((sizeof(int) * 8 - ((int)(-1) < 0)) * 643 / 2136);
50417
50418
50419
50420 static const bool is_signed = true;
50421 static const bool is_integer = true;
50422 static const bool is_exact = true;
50423 static const int radix = 2;
50424 static int epsilon() throw()
50425 { return 0; }
50426 static int round_error() throw()
50427 { return 0; }
50428
50429 static const int min_exponent = 0;
50430 static const int min_exponent10 = 0;
50431 static const int max_exponent = 0;
50432 static const int max_exponent10 = 0;
50433
50434 static const bool has_infinity = false;
50435 static const bool has_quiet_NaN = false;
50436 static const bool has_signaling_NaN = false;
50437 static const float_denorm_style has_denorm = denorm_absent;
50438 static const bool has_denorm_loss = false;
50439
50440 static int infinity() throw()
50441 { return static_cast<int>(0); }
50442 static int quiet_NaN() throw()
50443 { return static_cast<int>(0); }
50444 static int signaling_NaN() throw()
50445 { return static_cast<int>(0); }
50446 static int denorm_min() throw()
50447 { return static_cast<int>(0); }
50448
50449 static const bool is_iec559 = false;
50450 static const bool is_bounded = true;
50451 static const bool is_modulo = true;
50452
50453 static const bool traps = true;
50454 static const bool tinyness_before = false;
50455 static const float_round_style round_style = round_toward_zero;
50456 };
50457
50458
50459 template<>
50460 struct numeric_limits<unsigned int>
50461 {
50462 static const bool is_specialized = true;
50463
50464 static unsigned int min() throw()
50465 { return 0; }
50466 static unsigned int max() throw()
50467 { return 2147483647 * 2U + 1; }
50468
50469
50470
50471
50472
50473 static const int digits = (sizeof(unsigned int) * 8 - ((unsigned int)(-1) < 0));
50474 static const int digits10 = ((sizeof(unsigned int) * 8 - ((unsigned int)(-1) < 0)) * 643 / 2136);
50475
50476
50477
50478 static const bool is_signed = false;
50479 static const bool is_integer = true;
50480 static const bool is_exact = true;
50481 static const int radix = 2;
50482 static unsigned int epsilon() throw()
50483 { return 0; }
50484 static unsigned int round_error() throw()
50485 { return 0; }
50486
50487 static const int min_exponent = 0;
50488 static const int min_exponent10 = 0;
50489 static const int max_exponent = 0;
50490 static const int max_exponent10 = 0;
50491
50492 static const bool has_infinity = false;
50493 static const bool has_quiet_NaN = false;
50494 static const bool has_signaling_NaN = false;
50495 static const float_denorm_style has_denorm = denorm_absent;
50496 static const bool has_denorm_loss = false;
50497
50498 static unsigned int infinity() throw()
50499 { return static_cast<unsigned int>(0); }
50500 static unsigned int quiet_NaN() throw()
50501 { return static_cast<unsigned int>(0); }
50502 static unsigned int signaling_NaN() throw()
50503 { return static_cast<unsigned int>(0); }
50504 static unsigned int denorm_min() throw()
50505 { return static_cast<unsigned int>(0); }
50506
50507 static const bool is_iec559 = false;
50508 static const bool is_bounded = true;
50509 static const bool is_modulo = true;
50510
50511 static const bool traps = true;
50512 static const bool tinyness_before = false;
50513 static const float_round_style round_style = round_toward_zero;
50514 };
50515
50516
50517 template<>
50518 struct numeric_limits<long>
50519 {
50520 static const bool is_specialized = true;
50521
50522 static long min() throw()
50523 { return -9223372036854775807L - 1; }
50524 static long max() throw()
50525 { return 9223372036854775807L; }
50526
50527
50528
50529
50530
50531 static const int digits = (sizeof(long) * 8 - ((long)(-1) < 0));
50532 static const int digits10 = ((sizeof(long) * 8 - ((long)(-1) < 0)) * 643 / 2136);
50533
50534
50535
50536 static const bool is_signed = true;
50537 static const bool is_integer = true;
50538 static const bool is_exact = true;
50539 static const int radix = 2;
50540 static long epsilon() throw()
50541 { return 0; }
50542 static long round_error() throw()
50543 { return 0; }
50544
50545 static const int min_exponent = 0;
50546 static const int min_exponent10 = 0;
50547 static const int max_exponent = 0;
50548 static const int max_exponent10 = 0;
50549
50550 static const bool has_infinity = false;
50551 static const bool has_quiet_NaN = false;
50552 static const bool has_signaling_NaN = false;
50553 static const float_denorm_style has_denorm = denorm_absent;
50554 static const bool has_denorm_loss = false;
50555
50556 static long infinity() throw()
50557 { return static_cast<long>(0); }
50558 static long quiet_NaN() throw()
50559 { return static_cast<long>(0); }
50560 static long signaling_NaN() throw()
50561 { return static_cast<long>(0); }
50562 static long denorm_min() throw()
50563 { return static_cast<long>(0); }
50564
50565 static const bool is_iec559 = false;
50566 static const bool is_bounded = true;
50567 static const bool is_modulo = true;
50568
50569 static const bool traps = true;
50570 static const bool tinyness_before = false;
50571 static const float_round_style round_style = round_toward_zero;
50572 };
50573
50574
50575 template<>
50576 struct numeric_limits<unsigned long>
50577 {
50578 static const bool is_specialized = true;
50579
50580 static unsigned long min() throw()
50581 { return 0; }
50582 static unsigned long max() throw()
50583 { return 9223372036854775807L * 2UL + 1; }
50584
50585
50586
50587
50588
50589 static const int digits = (sizeof(unsigned long) * 8 - ((unsigned long)(-1) < 0));
50590 static const int digits10 = ((sizeof(unsigned long) * 8 - ((unsigned long)(-1) < 0)) * 643 / 2136);
50591
50592
50593
50594 static const bool is_signed = false;
50595 static const bool is_integer = true;
50596 static const bool is_exact = true;
50597 static const int radix = 2;
50598 static unsigned long epsilon() throw()
50599 { return 0; }
50600 static unsigned long round_error() throw()
50601 { return 0; }
50602
50603 static const int min_exponent = 0;
50604 static const int min_exponent10 = 0;
50605 static const int max_exponent = 0;
50606 static const int max_exponent10 = 0;
50607
50608 static const bool has_infinity = false;
50609 static const bool has_quiet_NaN = false;
50610 static const bool has_signaling_NaN = false;
50611 static const float_denorm_style has_denorm = denorm_absent;
50612 static const bool has_denorm_loss = false;
50613
50614 static unsigned long infinity() throw()
50615 { return static_cast<unsigned long>(0); }
50616 static unsigned long quiet_NaN() throw()
50617 { return static_cast<unsigned long>(0); }
50618 static unsigned long signaling_NaN() throw()
50619 { return static_cast<unsigned long>(0); }
50620 static unsigned long denorm_min() throw()
50621 { return static_cast<unsigned long>(0); }
50622
50623 static const bool is_iec559 = false;
50624 static const bool is_bounded = true;
50625 static const bool is_modulo = true;
50626
50627 static const bool traps = true;
50628 static const bool tinyness_before = false;
50629 static const float_round_style round_style = round_toward_zero;
50630 };
50631
50632
50633 template<>
50634 struct numeric_limits<long long>
50635 {
50636 static const bool is_specialized = true;
50637
50638 static long long min() throw()
50639 { return -9223372036854775807LL - 1; }
50640 static long long max() throw()
50641 { return 9223372036854775807LL; }
50642
50643
50644
50645
50646
50647 static const int digits = (sizeof(long long) * 8 - ((long long)(-1) < 0));
50648 static const int digits10 = ((sizeof(long long) * 8 - ((long long)(-1) < 0)) * 643 / 2136);
50649
50650
50651
50652 static const bool is_signed = true;
50653 static const bool is_integer = true;
50654 static const bool is_exact = true;
50655 static const int radix = 2;
50656 static long long epsilon() throw()
50657 { return 0; }
50658 static long long round_error() throw()
50659 { return 0; }
50660
50661 static const int min_exponent = 0;
50662 static const int min_exponent10 = 0;
50663 static const int max_exponent = 0;
50664 static const int max_exponent10 = 0;
50665
50666 static const bool has_infinity = false;
50667 static const bool has_quiet_NaN = false;
50668 static const bool has_signaling_NaN = false;
50669 static const float_denorm_style has_denorm = denorm_absent;
50670 static const bool has_denorm_loss = false;
50671
50672 static long long infinity() throw()
50673 { return static_cast<long long>(0); }
50674 static long long quiet_NaN() throw()
50675 { return static_cast<long long>(0); }
50676 static long long signaling_NaN() throw()
50677 { return static_cast<long long>(0); }
50678 static long long denorm_min() throw()
50679 { return static_cast<long long>(0); }
50680
50681 static const bool is_iec559 = false;
50682 static const bool is_bounded = true;
50683 static const bool is_modulo = true;
50684
50685 static const bool traps = true;
50686 static const bool tinyness_before = false;
50687 static const float_round_style round_style = round_toward_zero;
50688 };
50689
50690
50691 template<>
50692 struct numeric_limits<unsigned long long>
50693 {
50694 static const bool is_specialized = true;
50695
50696 static unsigned long long min() throw()
50697 { return 0; }
50698 static unsigned long long max() throw()
50699 { return 9223372036854775807LL * 2ULL + 1; }
50700
50701
50702
50703
50704
50705 static const int digits = (sizeof(unsigned long long) * 8 - ((unsigned long long)(-1) < 0));
50706 static const int digits10 = ((sizeof(unsigned long long) * 8 - ((unsigned long long)(-1) < 0)) * 643 / 2136);
50707
50708
50709
50710 static const bool is_signed = false;
50711 static const bool is_integer = true;
50712 static const bool is_exact = true;
50713 static const int radix = 2;
50714 static unsigned long long epsilon() throw()
50715 { return 0; }
50716 static unsigned long long round_error() throw()
50717 { return 0; }
50718
50719 static const int min_exponent = 0;
50720 static const int min_exponent10 = 0;
50721 static const int max_exponent = 0;
50722 static const int max_exponent10 = 0;
50723
50724 static const bool has_infinity = false;
50725 static const bool has_quiet_NaN = false;
50726 static const bool has_signaling_NaN = false;
50727 static const float_denorm_style has_denorm = denorm_absent;
50728 static const bool has_denorm_loss = false;
50729
50730 static unsigned long long infinity() throw()
50731 { return static_cast<unsigned long long>(0); }
50732 static unsigned long long quiet_NaN() throw()
50733 { return static_cast<unsigned long long>(0); }
50734 static unsigned long long signaling_NaN() throw()
50735 { return static_cast<unsigned long long>(0); }
50736 static unsigned long long denorm_min() throw()
50737 { return static_cast<unsigned long long>(0); }
50738
50739 static const bool is_iec559 = false;
50740 static const bool is_bounded = true;
50741 static const bool is_modulo = true;
50742
50743 static const bool traps = true;
50744 static const bool tinyness_before = false;
50745 static const float_round_style round_style = round_toward_zero;
50746 };
50747
50748
50749 template<>
50750 struct numeric_limits<float>
50751 {
50752 static const bool is_specialized = true;
50753
50754 static float min() throw()
50755 { return 1.17549435082228750797e-38F; }
50756 static float max() throw()
50757 { return 3.40282346638528859812e+38F; }
50758
50759
50760
50761
50762
50763 static const int digits = 24;
50764 static const int digits10 = 6;
50765
50766
50767
50768
50769 static const bool is_signed = true;
50770 static const bool is_integer = false;
50771 static const bool is_exact = false;
50772 static const int radix = 2;
50773 static float epsilon() throw()
50774 { return 1.19209289550781250000e-7F; }
50775 static float round_error() throw()
50776 { return 0.5F; }
50777
50778 static const int min_exponent = (-125);
50779 static const int min_exponent10 = (-37);
50780 static const int max_exponent = 128;
50781 static const int max_exponent10 = 38;
50782
50783 static const bool has_infinity = 1;
50784 static const bool has_quiet_NaN = 1;
50785 static const bool has_signaling_NaN = has_quiet_NaN;
50786 static const float_denorm_style has_denorm
50787 = bool(1) ? denorm_present : denorm_absent;
50788 static const bool has_denorm_loss = false;
50789
50790 static float infinity() throw()
50791 { return __builtin_huge_valf (); }
50792 static float quiet_NaN() throw()
50793 { return __builtin_nanf (""); }
50794 static float signaling_NaN() throw()
50795 { return __builtin_nansf (""); }
50796 static float denorm_min() throw()
50797 { return 1.40129846432481707092e-45F; }
50798
50799 static const bool is_iec559
50800 = has_infinity && has_quiet_NaN && has_denorm == denorm_present;
50801 static const bool is_bounded = true;
50802 static const bool is_modulo = false;
50803
50804 static const bool traps = false;
50805 static const bool tinyness_before = false;
50806 static const float_round_style round_style = round_to_nearest;
50807 };
50808
50809 #undef __glibcxx_float_has_denorm_loss
50810 #undef __glibcxx_float_traps
50811 #undef __glibcxx_float_tinyness_before
50812
50813
50814 template<>
50815 struct numeric_limits<double>
50816 {
50817 static const bool is_specialized = true;
50818
50819 static double min() throw()
50820 { return ((double)2.22507385850720138309e-308L); }
50821 static double max() throw()
50822 { return ((double)1.79769313486231570815e+308L); }
50823
50824
50825
50826
50827
50828 static const int digits = 53;
50829 static const int digits10 = 15;
50830
50831
50832
50833
50834 static const bool is_signed = true;
50835 static const bool is_integer = false;
50836 static const bool is_exact = false;
50837 static const int radix = 2;
50838 static double epsilon() throw()
50839 { return ((double)2.22044604925031308085e-16L); }
50840 static double round_error() throw()
50841 { return 0.5; }
50842
50843 static const int min_exponent = (-1021);
50844 static const int min_exponent10 = (-307);
50845 static const int max_exponent = 1024;
50846 static const int max_exponent10 = 308;
50847
50848 static const bool has_infinity = 1;
50849 static const bool has_quiet_NaN = 1;
50850 static const bool has_signaling_NaN = has_quiet_NaN;
50851 static const float_denorm_style has_denorm
50852 = bool(1) ? denorm_present : denorm_absent;
50853 static const bool has_denorm_loss = false;
50854
50855 static double infinity() throw()
50856 { return __builtin_huge_val(); }
50857 static double quiet_NaN() throw()
50858 { return __builtin_nan (""); }
50859 static double signaling_NaN() throw()
50860 { return __builtin_nans (""); }
50861 static double denorm_min() throw()
50862 { return ((double)4.94065645841246544177e-324L); }
50863
50864 static const bool is_iec559
50865 = has_infinity && has_quiet_NaN && has_denorm == denorm_present;
50866 static const bool is_bounded = true;
50867 static const bool is_modulo = false;
50868
50869 static const bool traps = false;
50870 static const bool tinyness_before = false;
50871 static const float_round_style round_style = round_to_nearest;
50872 };
50873
50874 #undef __glibcxx_double_has_denorm_loss
50875 #undef __glibcxx_double_traps
50876 #undef __glibcxx_double_tinyness_before
50877
50878
50879 template<>
50880 struct numeric_limits<long double>
50881 {
50882 static const bool is_specialized = true;
50883
50884 static long double min() throw()
50885 { return 3.36210314311209350626e-4932L; }
50886 static long double max() throw()
50887 { return 1.18973149535723176502e+4932L; }
50888
50889
50890
50891
50892
50893 static const int digits = 64;
50894 static const int digits10 = 18;
50895
50896
50897
50898
50899 static const bool is_signed = true;
50900 static const bool is_integer = false;
50901 static const bool is_exact = false;
50902 static const int radix = 2;
50903 static long double epsilon() throw()
50904 { return 1.08420217248550443401e-19L; }
50905 static long double round_error() throw()
50906 { return 0.5L; }
50907
50908 static const int min_exponent = (-16381);
50909 static const int min_exponent10 = (-4931);
50910 static const int max_exponent = 16384;
50911 static const int max_exponent10 = 4932;
50912
50913 static const bool has_infinity = 1;
50914 static const bool has_quiet_NaN = 1;
50915 static const bool has_signaling_NaN = has_quiet_NaN;
50916 static const float_denorm_style has_denorm
50917 = bool(1) ? denorm_present : denorm_absent;
50918 static const bool has_denorm_loss
50919 = false;
50920
50921 static long double infinity() throw()
50922 { return __builtin_huge_vall (); }
50923 static long double quiet_NaN() throw()
50924 { return __builtin_nanl (""); }
50925 static long double signaling_NaN() throw()
50926 { return __builtin_nansl (""); }
50927 static long double denorm_min() throw()
50928 { return 3.64519953188247460253e-4951L; }
50929
50930 static const bool is_iec559
50931 = has_infinity && has_quiet_NaN && has_denorm == denorm_present;
50932 static const bool is_bounded = true;
50933 static const bool is_modulo = false;
50934
50935 static const bool traps = false;
50936 static const bool tinyness_before = false;
50937 static const float_round_style round_style = round_to_nearest;
50938 };
50939
50940 #undef __glibcxx_long_double_has_denorm_loss
50941 #undef __glibcxx_long_double_traps
50942 #undef __glibcxx_long_double_tinyness_before
50943
50944 }
50945
50946 #undef __glibcxx_signed
50947 #undef __glibcxx_min
50948 #undef __glibcxx_max
50949 #undef __glibcxx_digits
50950 #undef __glibcxx_digits10
50951 #undef __glibcxx_max_digits10
50952 # 35 "../fwbuilder/uint128.h" 2
50953 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include-fixed/limits.h" 1 3 4
50954 # 30 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include-fixed/limits.h" 3 4
50955 #define _GCC_LIMITS_H_
50956
50957
50958
50959 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include-fixed/syslimits.h" 1 3 4
50960
50961
50962
50963
50964
50965 #define _GCC_NEXT_LIMITS_H
50966 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include-fixed/limits.h" 1 3 4
50967 # 169 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include-fixed/limits.h" 3 4
50968 # 1 "/usr/include/limits.h" 1 3 4
50969 # 25 "/usr/include/limits.h" 3 4
50970 #define _LIBC_LIMITS_H_ 1
50971
50972
50973
50974
50975
50976
50977
50978 #define MB_LEN_MAX 16
50979 # 133 "/usr/include/limits.h" 3 4
50980 #define LLONG_MIN (-LLONG_MAX-1)
50981
50982
50983 #define LLONG_MAX __LONG_LONG_MAX__
50984
50985
50986 #define ULLONG_MAX (LLONG_MAX * 2ULL + 1)
50987
50988
50989
50990
50991
50992 # 1 "/usr/include/bits/posix1_lim.h" 1 3 4
50993 # 26 "/usr/include/bits/posix1_lim.h" 3 4
50994 #define _BITS_POSIX1_LIM_H 1
50995
50996
50997
50998
50999
51000 #define _POSIX_AIO_LISTIO_MAX 2
51001
51002
51003 #define _POSIX_AIO_MAX 1
51004
51005
51006 #define _POSIX_ARG_MAX 4096
51007
51008
51009
51010 #define _POSIX_CHILD_MAX 25
51011
51012
51013
51014
51015
51016 #define _POSIX_DELAYTIMER_MAX 32
51017
51018
51019
51020 #define _POSIX_HOST_NAME_MAX 255
51021
51022
51023 #define _POSIX_LINK_MAX 8
51024
51025
51026 #define _POSIX_LOGIN_NAME_MAX 9
51027
51028
51029 #define _POSIX_MAX_CANON 255
51030
51031
51032
51033 #define _POSIX_MAX_INPUT 255
51034
51035
51036 #define _POSIX_MQ_OPEN_MAX 8
51037
51038
51039 #define _POSIX_MQ_PRIO_MAX 32
51040
51041
51042 #define _POSIX_NAME_MAX 14
51043
51044
51045
51046 #define _POSIX_NGROUPS_MAX 8
51047
51048
51049
51050
51051
51052
51053 #define _POSIX_OPEN_MAX 20
51054
51055
51056
51057
51058
51059
51060
51061 #define _POSIX_FD_SETSIZE _POSIX_OPEN_MAX
51062
51063
51064
51065 #define _POSIX_PATH_MAX 256
51066
51067
51068 #define _POSIX_PIPE_BUF 512
51069
51070
51071
51072 #define _POSIX_RE_DUP_MAX 255
51073
51074
51075 #define _POSIX_RTSIG_MAX 8
51076
51077
51078 #define _POSIX_SEM_NSEMS_MAX 256
51079
51080
51081 #define _POSIX_SEM_VALUE_MAX 32767
51082
51083
51084 #define _POSIX_SIGQUEUE_MAX 32
51085
51086
51087 #define _POSIX_SSIZE_MAX 32767
51088
51089
51090 #define _POSIX_STREAM_MAX 8
51091
51092
51093 #define _POSIX_SYMLINK_MAX 255
51094
51095
51096
51097 #define _POSIX_SYMLOOP_MAX 8
51098
51099
51100 #define _POSIX_TIMER_MAX 32
51101
51102
51103 #define _POSIX_TTY_NAME_MAX 9
51104
51105
51106 #define _POSIX_TZNAME_MAX 6
51107
51108
51109
51110 #define _POSIX_QLIMIT 1
51111
51112
51113
51114 #define _POSIX_HIWAT _POSIX_PIPE_BUF
51115
51116
51117 #define _POSIX_UIO_MAXIOV 16
51118
51119
51120
51121 #define _POSIX_CLOCKRES_MIN 20000000
51122
51123
51124
51125 # 1 "/usr/include/bits/local_lim.h" 1 3 4
51126 # 26 "/usr/include/bits/local_lim.h" 3 4
51127 #define __undef_NR_OPEN
51128
51129
51130 #define __undef_LINK_MAX
51131
51132
51133 #define __undef_OPEN_MAX
51134
51135
51136 #define __undef_ARG_MAX
51137
51138
51139
51140 # 1 "/usr/include/linux/limits.h" 1 3 4
51141
51142 #define _LINUX_LIMITS_H
51143
51144 #define NR_OPEN 1024
51145
51146 #define NGROUPS_MAX 65536
51147 #define ARG_MAX 131072
51148 #define LINK_MAX 127
51149 #define MAX_CANON 255
51150 #define MAX_INPUT 255
51151 #define NAME_MAX 255
51152 #define PATH_MAX 4096
51153 #define PIPE_BUF 4096
51154 #define XATTR_NAME_MAX 255
51155 #define XATTR_SIZE_MAX 65536
51156 #define XATTR_LIST_MAX 65536
51157
51158 #define RTSIG_MAX 32
51159 # 40 "/usr/include/bits/local_lim.h" 2 3 4
51160
51161
51162
51163 #undef NR_OPEN
51164 #undef __undef_NR_OPEN
51165
51166
51167
51168 #undef LINK_MAX
51169 #undef __undef_LINK_MAX
51170
51171
51172
51173 #undef OPEN_MAX
51174 #undef __undef_OPEN_MAX
51175
51176
51177
51178 #undef ARG_MAX
51179 #undef __undef_ARG_MAX
51180
51181
51182
51183 #define _POSIX_THREAD_KEYS_MAX 128
51184
51185 #define PTHREAD_KEYS_MAX 1024
51186
51187
51188 #define _POSIX_THREAD_DESTRUCTOR_ITERATIONS 4
51189
51190 #define PTHREAD_DESTRUCTOR_ITERATIONS _POSIX_THREAD_DESTRUCTOR_ITERATIONS
51191
51192
51193 #define _POSIX_THREAD_THREADS_MAX 64
51194
51195 #undef PTHREAD_THREADS_MAX
51196
51197
51198
51199 #define AIO_PRIO_DELTA_MAX 20
51200
51201
51202 #define PTHREAD_STACK_MIN 16384
51203
51204
51205 #define DELAYTIMER_MAX 2147483647
51206
51207
51208 #define TTY_NAME_MAX 32
51209
51210
51211 #define LOGIN_NAME_MAX 256
51212
51213
51214 #define HOST_NAME_MAX 64
51215
51216
51217 #define MQ_PRIO_MAX 32768
51218
51219
51220 #define SEM_VALUE_MAX (2147483647)
51221 # 158 "/usr/include/bits/posix1_lim.h" 2 3 4
51222
51223
51224
51225 #define SSIZE_MAX LONG_MAX
51226 # 146 "/usr/include/limits.h" 2 3 4
51227
51228
51229
51230 # 1 "/usr/include/bits/posix2_lim.h" 1 3 4
51231 # 24 "/usr/include/bits/posix2_lim.h" 3 4
51232 #define _BITS_POSIX2_LIM_H 1
51233
51234
51235
51236 #define _POSIX2_BC_BASE_MAX 99
51237
51238
51239 #define _POSIX2_BC_DIM_MAX 2048
51240
51241
51242 #define _POSIX2_BC_SCALE_MAX 99
51243
51244
51245 #define _POSIX2_BC_STRING_MAX 1000
51246
51247
51248
51249 #define _POSIX2_COLL_WEIGHTS_MAX 2
51250
51251
51252
51253 #define _POSIX2_EXPR_NEST_MAX 32
51254
51255
51256 #define _POSIX2_LINE_MAX 2048
51257
51258
51259
51260 #define _POSIX2_RE_DUP_MAX 255
51261
51262
51263
51264 #define _POSIX2_CHARCLASS_NAME_MAX 14
51265
51266
51267
51268
51269
51270
51271
51272 #define BC_BASE_MAX _POSIX2_BC_BASE_MAX
51273
51274
51275 #define BC_DIM_MAX _POSIX2_BC_DIM_MAX
51276
51277
51278 #define BC_SCALE_MAX _POSIX2_BC_SCALE_MAX
51279
51280
51281 #define BC_STRING_MAX _POSIX2_BC_STRING_MAX
51282
51283
51284 #define COLL_WEIGHTS_MAX 255
51285
51286
51287 #define EXPR_NEST_MAX _POSIX2_EXPR_NEST_MAX
51288
51289
51290 #define LINE_MAX _POSIX2_LINE_MAX
51291
51292
51293 #define CHARCLASS_NAME_MAX 2048
51294
51295
51296
51297 #define RE_DUP_MAX (0x7fff)
51298 # 150 "/usr/include/limits.h" 2 3 4
51299
51300
51301
51302 # 1 "/usr/include/bits/xopen_lim.h" 1 3 4
51303 # 31 "/usr/include/bits/xopen_lim.h" 3 4
51304 #define _XOPEN_LIM_H 1
51305
51306 #define __need_IOV_MAX
51307 # 1 "/usr/include/bits/stdio_lim.h" 1 3 4
51308 # 24 "/usr/include/bits/stdio_lim.h" 3 4
51309 #define L_tmpnam 20
51310 #define TMP_MAX 238328
51311 #define FILENAME_MAX 4096
51312
51313
51314 #define L_ctermid 9
51315
51316 #define L_cuserid 9
51317
51318
51319
51320
51321
51322 #undef FOPEN_MAX
51323 #define FOPEN_MAX 16
51324
51325
51326
51327 #define IOV_MAX 1024
51328 # 35 "/usr/include/bits/xopen_lim.h" 2 3 4
51329 # 66 "/usr/include/bits/xopen_lim.h" 3 4
51330 #define _XOPEN_IOV_MAX _POSIX_UIO_MAXIOV
51331
51332
51333
51334
51335 #define NL_ARGMAX _POSIX_ARG_MAX
51336
51337
51338 #define NL_LANGMAX _POSIX2_LINE_MAX
51339
51340
51341 #define NL_MSGMAX INT_MAX
51342
51343
51344
51345 #define NL_NMAX INT_MAX
51346
51347
51348 #define NL_SETMAX INT_MAX
51349
51350
51351 #define NL_TEXTMAX INT_MAX
51352
51353
51354 #define NZERO 20
51355 # 110 "/usr/include/bits/xopen_lim.h" 3 4
51356 #define WORD_BIT 32
51357 # 133 "/usr/include/bits/xopen_lim.h" 3 4
51358 #define LONG_BIT 64
51359 # 154 "/usr/include/limits.h" 2 3 4
51360 # 170 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include-fixed/limits.h" 2 3 4
51361 # 8 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include-fixed/syslimits.h" 2 3 4
51362 #undef _GCC_NEXT_LIMITS_H
51363 # 35 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include-fixed/limits.h" 2 3 4
51364 # 61 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include-fixed/limits.h" 3 4
51365 #define _LIMITS_H___
51366
51367
51368 #undef CHAR_BIT
51369 #define CHAR_BIT __CHAR_BIT__
51370
51371
51372
51373
51374
51375
51376
51377 #undef SCHAR_MIN
51378 #define SCHAR_MIN (-SCHAR_MAX - 1)
51379 #undef SCHAR_MAX
51380 #define SCHAR_MAX __SCHAR_MAX__
51381
51382
51383 #undef UCHAR_MAX
51384
51385
51386
51387 #define UCHAR_MAX (SCHAR_MAX * 2 + 1)
51388 # 97 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include-fixed/limits.h" 3 4
51389 #undef CHAR_MIN
51390 #define CHAR_MIN SCHAR_MIN
51391 #undef CHAR_MAX
51392 #define CHAR_MAX SCHAR_MAX
51393
51394
51395
51396 #undef SHRT_MIN
51397 #define SHRT_MIN (-SHRT_MAX - 1)
51398 #undef SHRT_MAX
51399 #define SHRT_MAX __SHRT_MAX__
51400
51401
51402 #undef USHRT_MAX
51403
51404
51405
51406 #define USHRT_MAX (SHRT_MAX * 2 + 1)
51407
51408
51409
51410 #undef INT_MIN
51411 #define INT_MIN (-INT_MAX - 1)
51412 #undef INT_MAX
51413 #define INT_MAX __INT_MAX__
51414
51415
51416 #undef UINT_MAX
51417 #define UINT_MAX (INT_MAX * 2U + 1U)
51418
51419
51420
51421 #undef LONG_MIN
51422 #define LONG_MIN (-LONG_MAX - 1L)
51423 #undef LONG_MAX
51424 #define LONG_MAX __LONG_MAX__
51425
51426
51427 #undef ULONG_MAX
51428 #define ULONG_MAX (LONG_MAX * 2UL + 1UL)
51429 # 152 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include-fixed/limits.h" 3 4
51430 #undef LONG_LONG_MIN
51431 #define LONG_LONG_MIN (-LONG_LONG_MAX - 1LL)
51432 #undef LONG_LONG_MAX
51433 #define LONG_LONG_MAX __LONG_LONG_MAX__
51434
51435
51436 #undef ULONG_LONG_MAX
51437 #define ULONG_LONG_MAX (LONG_LONG_MAX * 2ULL + 1ULL)
51438 # 36 "../fwbuilder/uint128.h" 2
51439
51440
51441
51442 #define __STDC_FORMAT_MACROS
51443
51444
51445
51446 #define U128_C(s) uint128(#s)
51447
51448 class uint128
51449 {
51450 public:
51451 typedef uint64_t base_type;
51452 typedef uint128 Self;
51453
51454 public:
51455 static const int size = (sizeof(base_type) + sizeof(base_type)) * 8;
51456
51457 private:
51458 base_type lo;
51459 base_type hi;
51460
51461 public:
51462 uint128(base_type _lo, base_type _hi) : lo(_lo), hi(_hi) {}
51463
51464
51465 uint128() : lo(0), hi(0) {}
51466 uint128(int value) : lo(static_cast<base_type>(value)), hi(0)
51467 {
51468 if (value < 0) hi = static_cast<base_type>(-1);
51469 }
51470 uint128(unsigned int value) : lo(static_cast<base_type>(value)), hi(0) {}
51471 uint128(float value) : lo(static_cast<base_type>(value)), hi(0) {}
51472 uint128(double value) : lo(static_cast<base_type>(value)), hi(0) {}
51473 uint128(const Self &value) : lo(value.lo), hi (value.hi) {}
51474 uint128(base_type value) : lo(value), hi(0) {}
51475 uint128(const uint32_t value[4]): lo((uint64_t(value[2])<<32)|value[3]),hi((uint64_t(value[0])<<32)|value[1]) {}
51476
51477 uint128(const std::string &sz) : lo(0), hi(0)
51478 {
51479
51480
51481 if (!sz.empty())
51482 {
51483
51484
51485 int radix = 10;
51486 bool minus = false;
51487
51488 std::string::const_iterator i = sz.begin();
51489
51490
51491
51492 if (*i == '-')
51493 {
51494 ++i;
51495 minus = true;
51496 }
51497
51498
51499 if (i != sz.end())
51500 {
51501 if (*i == '0')
51502 {
51503 radix = 8;
51504 ++i;
51505 if (i != sz.end())
51506 {
51507 if (*i == 'x')
51508 {
51509 radix = 16;
51510 ++i;
51511 }
51512 }
51513 }
51514
51515 while (i != sz.end())
51516 {
51517 unsigned int n;
51518 const char ch = *i;
51519
51520 if (ch >= 'A' && ch <= 'Z')
51521 {
51522 if (((ch - 'A') + 10) < radix)
51523 {
51524 n = (ch - 'A') + 10;
51525 }
51526 else
51527 {
51528 break;
51529 }
51530 }
51531 else if (ch >= 'a' && ch <= 'z')
51532 {
51533 if (((ch - 'a') + 10) < radix)
51534 {
51535 n = (ch - 'a') + 10;
51536 }
51537 else
51538 {
51539 break;
51540 }
51541 }
51542 else if (ch >= '0' && ch <= '9')
51543 {
51544 if ((ch - '0') < radix)
51545 {
51546 n = (ch - '0');
51547 }
51548 else
51549 {
51550 break;
51551 }
51552 }
51553 else
51554 {
51555
51556 break;
51557 }
51558
51559 (*this) *= radix;
51560 (*this) += n;
51561
51562 ++i;
51563 }
51564 }
51565
51566
51567 if (minus)
51568 {
51569 *this = -*this;
51570 }
51571 }
51572 }
51573
51574 Self &operator=(const Self &other)
51575 {
51576 if (&other != this)
51577 {
51578 lo = other.lo;
51579 hi = other.hi;
51580 }
51581 return *this;
51582 }
51583
51584 public:
51585
51586 bool operator==(const Self &o) const
51587 {
51588 return hi == o.hi && lo == o.lo;
51589 }
51590
51591 bool operator!=(const Self &o) const
51592 {
51593 return hi != o.hi || lo != o.lo;
51594 }
51595
51596 bool operator<(const Self &o) const
51597 {
51598 return (hi == o.hi) ? lo < o.lo : hi < o.hi;
51599 }
51600
51601 bool operator>(const Self &o) const
51602 {
51603 return (hi == o.hi) ? lo > o.lo : hi > o.hi;
51604 }
51605
51606 bool operator<=(const Self &o) const
51607 {
51608 return *this < o || *this == 0;
51609 }
51610
51611 bool operator>=(const Self &o) const
51612 {
51613 return *this > o || *this == 0;
51614 }
51615
51616 public:
51617
51618 bool operator!() const
51619 {
51620 return !(hi != 0 || lo != 0);
51621 }
51622
51623 Self operator-() const
51624 {
51625
51626 return ~Self(*this) + 1;
51627 }
51628
51629 Self operator~() const
51630 {
51631 Self t(*this);
51632 t.lo = ~t.lo;
51633 t.hi = ~t.hi;
51634 return t;
51635 }
51636
51637 Self &operator++()
51638 {
51639 if (++lo == 0)
51640 {
51641 ++hi;
51642 }
51643 return *this;
51644 }
51645
51646 Self &operator--()
51647 {
51648 if (lo-- == 0)
51649 {
51650 --hi;
51651 }
51652 return *this;
51653 }
51654
51655 public:
51656
51657 Self &operator+=(const Self &b)
51658 {
51659 const base_type old_lo = lo;
51660
51661 lo += b.lo;
51662 hi += b.hi;
51663
51664 if (lo < old_lo)
51665 {
51666 ++hi;
51667 }
51668
51669 return *this;
51670 }
51671
51672 Self &operator-=(const Self &b)
51673 {
51674
51675
51676 return *this += -b;
51677 }
51678
51679 Self &operator*=(const Self &b)
51680 {
51681
51682
51683
51684 if (b == 0)
51685 {
51686 hi = 0;
51687 lo = 0;
51688 }
51689 else if (b != 1)
51690 {
51691
51692
51693
51694 Self a(*this);
51695 Self t = b;
51696
51697 lo = 0;
51698 hi = 0;
51699
51700 for (int i = 0; i < size; ++i)
51701 {
51702 if ((t & 1) != 0)
51703 {
51704 *this += (a << i);
51705 }
51706
51707 t >>= 1;
51708 }
51709 }
51710
51711 return *this;
51712 }
51713
51714 Self &operator|=(const Self &b)
51715 {
51716 hi |= b.hi;
51717 lo |= b.lo;
51718 return *this;
51719 }
51720
51721 Self &operator&=(const Self &b)
51722 {
51723 hi &= b.hi;
51724 lo &= b.lo;
51725 return *this;
51726 }
51727
51728 Self &operator^=(const Self &b)
51729 {
51730 hi ^= b.hi;
51731 lo ^= b.lo;
51732 return *this;
51733 }
51734
51735 Self &operator/=(const Self &b)
51736 {
51737 Self remainder;
51738 __do_div(*this, b, *this, remainder);
51739 return *this;
51740 }
51741
51742 Self &operator%=(const Self &b)
51743 {
51744 Self quotient;
51745 __do_div(*this, b, quotient, *this);
51746 return *this;
51747 }
51748
51749 Self &operator<<=(const Self& rhs)
51750 {
51751
51752 int n = rhs.to_integer();
51753
51754 if (n >= size)
51755 {
51756 hi = 0;
51757 lo = 0;
51758 }
51759 else
51760 {
51761 const int halfsize = size / 2;
51762
51763 if (n >= halfsize)
51764 {
51765 n -= halfsize;
51766 hi = lo;
51767 lo = 0;
51768 }
51769
51770 if (n != 0)
51771 {
51772
51773 hi <<= n;
51774
51775 const base_type mask(~(base_type(-1) >> n));
51776
51777
51778 hi |= (lo & mask) >> (halfsize - n);
51779
51780
51781 lo <<= n;
51782 }
51783 }
51784
51785 return *this;
51786 }
51787
51788 Self &operator>>=(const Self& rhs)
51789 {
51790
51791 int n = rhs.to_integer();
51792
51793 if (n >= size)
51794 {
51795 hi = 0;
51796 lo = 0;
51797 }
51798 else
51799 {
51800 const int halfsize = size / 2;
51801
51802 if (n >= halfsize)
51803 {
51804 n -= halfsize;
51805 lo = hi;
51806 hi = 0;
51807 }
51808
51809 if (n != 0)
51810 {
51811
51812 lo >>= n;
51813
51814
51815 const base_type mask(~(base_type(-1) << n));
51816
51817
51818 lo |= (hi & mask) << (halfsize - n);
51819
51820
51821 hi >>= n;
51822 }
51823 }
51824
51825 return *this;
51826 }
51827
51828 Self operator+(const int &u)
51829 {
51830 Self temp(*this);
51831 temp += u;
51832 return temp;
51833 }
51834
51835 Self operator&(const int &u)
51836 {
51837 Self temp(*this);
51838 temp &= u;
51839 return temp;
51840 }
51841
51842 Self operator<<(const int &u)
51843 {
51844 Self temp(*this);
51845 temp <<= u;
51846 return temp;
51847 }
51848
51849 Self operator>>(const int &u)
51850 {
51851 Self temp(*this);
51852 temp >>= u;
51853 return temp;
51854 }
51855
51856
51857 public:
51858 int to_integer() const
51859 {
51860 return static_cast<int>(lo);
51861 }
51862
51863 base_type to_base_type() const
51864 {
51865 return lo;
51866 }
51867
51868 std::string to_string() const
51869 {
51870 char buf[33];
51871 if (hi)
51872 sprintf(buf, "%"PRIX64"%08"PRIX64, (unsigned long long)hi,(unsigned long long)lo);
51873 else
51874 sprintf(buf,"%"PRIX64,(unsigned long long)lo);
51875 return buf;
51876 }
51877
51878 private:
51879 template <typename T>
51880 static void __do_div(const T &numerator, const T &denominator, T &quotient, T &remainder)
51881 {
51882
51883 static const int bits = sizeof(T) * 8;
51884
51885 if (denominator == 0)
51886 {
51887 throw std::domain_error("divide by zero");
51888 }
51889 else
51890 {
51891 T n = numerator;
51892 T d = denominator;
51893 T x = 1;
51894 T answer = 0;
51895
51896 while ((n >= d) && (((d >> (bits - 1)) & 1) == 0))
51897 {
51898 x <<= 1;
51899 d <<= 1;
51900 }
51901
51902 while (x != 0)
51903 {
51904 if (n >= d)
51905 {
51906 n -= d;
51907 answer |= x;
51908 }
51909
51910 x >>= 1;
51911 d >>= 1;
51912 }
51913
51914 quotient = answer;
51915 remainder = n;
51916 }
51917 }
51918 };
51919
51920 std::ostream &operator<<(std::ostream &o, const uint128 &n);
51921
51922 typedef uint128 uint128_t;
51923
51924 namespace std
51925 {
51926 template<>
51927 struct numeric_limits<uint128>
51928 {
51929 static const bool is_specialized = true;
51930 # 540 "../fwbuilder/uint128.h"
51931 static const bool is_signed = false;
51932 static const bool is_integer = true;
51933 static const bool is_exact = true;
51934
51935 static const int digits = 128;
51936 static const int digits10 = 39;
51937 static const int radix = 2;
51938
51939 static uint128 epsilon() throw()
51940 {
51941 return 0;
51942 }
51943
51944 static uint128 round_error() throw()
51945 {
51946 return 0;
51947 }
51948 static const int min_exponent = 0;
51949 static const int min_exponent10 = 0;
51950 static const int max_exponent = 0;
51951 static const int max_exponent10 = 0;
51952
51953 static const bool has_infinity = false;
51954 static const bool has_quiet_NaN = false;
51955 static const bool has_signaling_NaN = false;
51956 static const float_denorm_style has_denorm = denorm_absent;
51957 static const bool has_denorm_loss = false;
51958
51959 static uint128 infinity() throw()
51960 {
51961 return static_cast<uint128>(0);
51962 }
51963
51964 static uint128 quiet_NaN() throw()
51965 {
51966 return static_cast<uint128>(0);
51967 }
51968
51969 static uint128 signaling_NaN() throw()
51970 {
51971 return static_cast<uint128>(0);
51972 }
51973
51974 static uint128 denorm_min() throw()
51975 {
51976 return static_cast<uint128>(0);
51977 }
51978
51979 static const bool is_iec559 = false;
51980 static const bool is_bounded = true;
51981 static const bool is_modulo = true;
51982
51983 static const bool traps = false;
51984 static const bool tinyness_before = false;
51985 static const float_round_style round_style = round_toward_zero;
51986 };
51987 };
51988 # 50 "../fwbuilder/InetAddr.h" 2
51989 # 1 "../fwbuilder/libfwbuilder-config.h" 1
51990
51991
51992
51993
51994
51995
51996 #define FWBUILDER_XML_VERSION "22"
51997
51998
51999
52000
52001
52002 #define RES_DIR "/usr/share/fwbuilder-5.0.1.3592"
52003 # 27 "../fwbuilder/libfwbuilder-config.h"
52004 #define HAVE_GETOPT_H 1
52005 # 44 "../fwbuilder/libfwbuilder-config.h"
52006 #define HAVE_XMLSAVEFORMATFILEENC 1
52007
52008 #define HAVE_LIBXSLT_XSLTCONFIG_H 1
52009
52010
52011 #define HAVE_STRTOK_R 1
52012
52013 #define WORDS_LITTLEENDIAN 1
52014 # 61 "../fwbuilder/libfwbuilder-config.h"
52015 #define SNPRINTF snprintf
52016 #define VSNPRINTF vsnprintf
52017 #define FS_SEPARATOR "/"
52018
52019
52020
52021
52022
52023
52024 #define FREEXMLBUFF(x) xmlFree((void*)(x))
52025 # 51 "../fwbuilder/InetAddr.h" 2
52026
52027
52028 namespace libfwbuilder
52029 {
52030 # 68 "../fwbuilder/InetAddr.h"
52031 class InetAddr
52032 {
52033 protected:
52034
52035 friend class InetAddrMask;
52036 friend class Inet6AddrMask;
52037
52038 int address_family;
52039
52040 struct in_addr ipv4;
52041 struct in6_addr ipv6;
52042
52043
52044 static inline void _copy_in6_addr(struct in6_addr* da,
52045 const struct in6_addr* sa)
52046 {
52047 ((uint32_t*)(da))[0] = ((uint32_t*)(sa))[0];
52048 ((uint32_t*)(da))[1] = ((uint32_t*)(sa))[1];
52049 ((uint32_t*)(da))[2] = ((uint32_t*)(sa))[2];
52050 ((uint32_t*)(da))[3] = ((uint32_t*)(sa))[3];
52051 }
52052
52053 void init_from_string(const char* data);
52054 void init_from_int(unsigned int n);
52055
52056 public:
52057
52058 explicit InetAddr()
52059 {
52060 address_family = 2;
52061 ipv4.s_addr = 0;
52062 ((uint32_t *) (&ipv6))[0] = 0;
52063 ((uint32_t *) (&ipv6))[1] = 0;
52064 ((uint32_t *) (&ipv6))[2] = 0;
52065 ((uint32_t *) (&ipv6))[3] = 0;
52066 }
52067
52068 virtual ~InetAddr() {}
52069
52070 inline unsigned int addressLengthBits() const
52071 {
52072 if (address_family == 2) return sizeof(ipv4) * 8;
52073 return sizeof(ipv6) * 8;
52074 }
52075
52076 bool isValidV4Netmask();
52077
52078 void init_from_uint128(uint128 int128a);
52079 uint128 to_uint128() const;
52080
52081 InetAddr(const char *data) throw(FWException);
52082 InetAddr(int af, const char *data) throw(FWException);
52083 InetAddr(const struct in_addr*) throw(FWException);
52084 InetAddr(const struct in6_addr*) throw(FWException);
52085 explicit InetAddr(const std::string&)
52086 throw(FWException, FWNotSupportedException);
52087 explicit InetAddr(int af, const std::string&)
52088 throw(FWException, FWNotSupportedException);
52089 InetAddr(const InetAddr &);
52090
52091 explicit InetAddr(int n) throw(FWException);
52092 explicit InetAddr(int af, int n) throw(FWException);
52093
52094 InetAddr& operator=(const InetAddr &addr);
52095
52096 int addressFamily() const { return address_family; }
52097 bool isV4() const { return (address_family==2); }
52098 bool isV6() const { return (address_family==10); }
52099
52100 const struct in_addr* getV4() const { return &ipv4; }
52101 const struct in6_addr* getV6() const { return &ipv6; }
52102
52103 static inline InetAddr getAny()
52104 {
52105 return InetAddr();
52106 }
52107
52108 static inline InetAddr getAllOnes(int af=2)
52109 {
52110 if (af==2)
52111 {
52112 struct in_addr allones;
52113 allones.s_addr = 0xffffffff;
52114 return InetAddr(&allones);
52115 } else
52116 {
52117 struct in6_addr a;
52118 ((uint32_t *) (&a))[0] = 0xffffffff;
52119 ((uint32_t *) (&a))[1] = 0xffffffff;
52120 ((uint32_t *) (&a))[2] = 0xffffffff;
52121 ((uint32_t *) (&a))[3] = 0xffffffff;
52122 return InetAddr(&a);
52123 }
52124 }
52125
52126 static inline InetAddr getLoopbackAddr(int af=2)
52127 {
52128 if (af==2)
52129 {
52130 struct in_addr loopback;
52131 loopback.s_addr = (__extension__ ({ register unsigned int __v, __x = (((in_addr_t) 0x7f000001)); if (__builtin_constant_p (__x)) __v = ((((__x) & 0xff000000) >> 24) | (((__x) & 0x00ff0000) >> 8) | (((__x) & 0x0000ff00) << 8) | (((__x) & 0x000000ff) << 24)); else __asm__ ("bswap %0" : "=r" (__v) : "0" (__x)); __v; }));
52132 return InetAddr(&loopback);
52133 } else
52134 {
52135 struct in6_addr a;
52136 ((uint32_t *) (&a))[0] = 0;
52137 ((uint32_t *) (&a))[1] = 0;
52138 ((uint32_t *) (&a))[2] = 0;
52139 ((uint32_t *) (&a))[3] = (__extension__ ({ register unsigned int __v, __x = (1); if (__builtin_constant_p (__x)) __v = ((((__x) & 0xff000000) >> 24) | (((__x) & 0x00ff0000) >> 8) | (((__x) & 0x0000ff00) << 8) | (((__x) & 0x000000ff) << 24)); else __asm__ ("bswap %0" : "=r" (__v) : "0" (__x)); __v; }));
52140 return InetAddr(&a);
52141 }
52142 }
52143
52144 std::string toString() const;
52145 # 191 "../fwbuilder/InetAddr.h"
52146 inline bool isBroadcast() const
52147 {
52148 if (address_family==2)
52149 return ipv4.s_addr == ((in_addr_t) 0xffffffff);
52150 else
52151 return ((((__const uint8_t *) (&ipv6))[0] == 0xff) && ((((__const uint8_t *) (&ipv6))[1] & 0xf) == 0x2));
52152 }
52153
52154
52155
52156
52157 inline bool isMulticast() const
52158 {
52159 if (address_family==2)
52160 return ((((in_addr_t)((__extension__ ({ register unsigned int __v, __x = (ipv4.s_addr); if (__builtin_constant_p (__x)) __v = ((((__x) & 0xff000000) >> 24) | (((__x) & 0x00ff0000) >> 8) | (((__x) & 0x0000ff00) << 8) | (((__x) & 0x000000ff) << 24)); else __asm__ ("bswap %0" : "=r" (__v) : "0" (__x)); __v; })))) & 0xf0000000) == 0xe0000000);
52161 else
52162 return (((__const uint8_t *) (&ipv6))[0] == 0xff);
52163 }
52164
52165
52166
52167
52168 inline bool isAny() const
52169 {
52170 if (address_family==2)
52171 return ipv4.s_addr == ((in_addr_t) 0x00000000);
52172 else
52173 return ((((__const uint32_t *) (&ipv6))[0] == 0 && ((__const uint32_t *) (&ipv6))[1] == 0 && ((__const uint32_t *) (&ipv6))[2] == 0 && ((__const uint32_t *) (&ipv6))[3] == 0));
52174 }
52175
52176
52177
52178
52179
52180
52181
52182 inline unsigned int distance(const InetAddr &a2) const
52183 {
52184 if (address_family==2)
52185 return (__extension__ ({ register unsigned int __v, __x = (a2.ipv4.s_addr); if (__builtin_constant_p (__x)) __v = ((((__x) & 0xff000000) >> 24) | (((__x) & 0x00ff0000) >> 8) | (((__x) & 0x0000ff00) << 8) | (((__x) & 0x000000ff) << 24)); else __asm__ ("bswap %0" : "=r" (__v) : "0" (__x)); __v; })) - (__extension__ ({ register unsigned int __v, __x = (ipv4.s_addr); if (__builtin_constant_p (__x)) __v = ((((__x) & 0xff000000) >> 24) | (((__x) & 0x00ff0000) >> 8) | (((__x) & 0x0000ff00) << 8) | (((__x) & 0x000000ff) << 24)); else __asm__ ("bswap %0" : "=r" (__v) : "0" (__x)); __v; })) + 1;
52186 else
52187 {
52188 uint128 d1 = to_uint128();
52189 uint128 d2 = a2.to_uint128();
52190 uint128 res;
52191 if (d1 < d2)
52192 {
52193 res = d2;
52194 res -= d1;
52195 } else
52196 {
52197 res = d1;
52198 res -= d2;
52199 }
52200 return res.to_integer() + 1;
52201 }
52202 }
52203
52204
52205
52206
52207
52208 int getLength() const;
52209
52210
52211
52212
52213 inline bool isHostMask() const
52214 {
52215 if (address_family==2)
52216 return ipv4.s_addr == ((in_addr_t) 0xffffffff);
52217 else
52218 return (((uint32_t*)(&ipv6))[0] == 0xffffffff &&
52219 ((uint32_t*)(&ipv6))[1] == 0xffffffff &&
52220 ((uint32_t*)(&ipv6))[2] == 0xffffffff &&
52221 ((uint32_t*)(&ipv6))[3] == 0xffffffff);
52222 }
52223
52224
52225
52226 InetAddr opAnd(const InetAddr &mask) const;
52227
52228 InetAddr opOr(const InetAddr &mask) const;
52229
52230 InetAddr opPlus(int increment) const;
52231
52232 InetAddr opMinus(int decrement) const;
52233
52234 bool opLT(const InetAddr &other) const;
52235
52236 bool opGT(const InetAddr &other) const;
52237
52238 bool opEQ(const InetAddr &other) const;
52239
52240 bool opNEQ(const InetAddr &other) const;
52241
52242 InetAddr opCompl() const;
52243
52244
52245
52246 inline friend InetAddr operator&(const InetAddr &addr,
52247 const InetAddr &mask)
52248 {
52249 ((typeid(addr) == typeid(mask)) ? static_cast<void> (0) : __assert_fail ("typeid(addr) == typeid(mask)", "../fwbuilder/InetAddr.h", 294, __PRETTY_FUNCTION__));
52250 return addr.opAnd(mask);
52251 }
52252
52253 inline friend InetAddr operator|(const InetAddr &addr,
52254 const InetAddr &mask)
52255 {
52256 ((typeid(addr) == typeid(mask)) ? static_cast<void> (0) : __assert_fail ("typeid(addr) == typeid(mask)", "../fwbuilder/InetAddr.h", 301, __PRETTY_FUNCTION__));
52257 return addr.opOr(mask);
52258 }
52259
52260 inline friend InetAddr operator+(const InetAddr &addr, int increment)
52261 {
52262 return addr.opPlus(increment);
52263 }
52264
52265 inline friend InetAddr operator-(const InetAddr &addr, int decrement)
52266 {
52267 return addr.opMinus(decrement);
52268 }
52269
52270 inline friend bool operator<(const InetAddr &a, const InetAddr &b)
52271 {
52272 ((typeid(a) == typeid(b)) ? static_cast<void> (0) : __assert_fail ("typeid(a) == typeid(b)", "../fwbuilder/InetAddr.h", 317, __PRETTY_FUNCTION__));
52273 return a.opLT(b);
52274 }
52275
52276 inline friend bool operator>(const InetAddr &a, const InetAddr &b)
52277 {
52278 ((typeid(a) == typeid(b)) ? static_cast<void> (0) : __assert_fail ("typeid(a) == typeid(b)", "../fwbuilder/InetAddr.h", 323, __PRETTY_FUNCTION__));
52279 return a.opGT(b);
52280 }
52281
52282 inline friend bool operator==(const InetAddr &a, const InetAddr &b)
52283 {
52284 ((typeid(a) == typeid(b)) ? static_cast<void> (0) : __assert_fail ("typeid(a) == typeid(b)", "../fwbuilder/InetAddr.h", 329, __PRETTY_FUNCTION__));
52285 return a.opEQ(b);
52286 }
52287
52288 inline friend bool operator!=(const InetAddr &a, const InetAddr &b)
52289 {
52290 ((typeid(a) == typeid(b)) ? static_cast<void> (0) : __assert_fail ("typeid(a) == typeid(b)", "../fwbuilder/InetAddr.h", 335, __PRETTY_FUNCTION__));
52291 return a.opNEQ(b);
52292 }
52293
52294 inline friend InetAddr operator~(const InetAddr &a)
52295 {
52296 return a.opCompl();
52297 }
52298
52299 };
52300
52301 }
52302 # 32 "../fwbuilder/Address.h" 2
52303 # 1 "../fwbuilder/InetAddrMask.h" 1
52304 # 36 "../fwbuilder/InetAddrMask.h"
52305 #define __INETADDRMASK_HH_FLAG__
52306 # 53 "../fwbuilder/InetAddrMask.h"
52307 namespace libfwbuilder
52308 {
52309
52310 class InetAddrMask;
52311
52312 std::vector<InetAddrMask> getOverlap(const InetAddrMask &n1,
52313 const InetAddrMask &n2);
52314 std::vector<InetAddrMask> substract(const InetAddrMask &n1,
52315 const InetAddrMask &n2);
52316 std::vector<InetAddrMask> convertAddressRange(const InetAddr &start,
52317 const InetAddr &end);
52318 bool _convert_range_to_networks(const InetAddr &start,
52319 const InetAddr &end,
52320 std::vector<InetAddrMask> &res);
52321
52322 class InetAddrMask
52323 {
52324
52325 protected:
52326
52327 InetAddr* address;
52328 InetAddr* netmask;
52329 InetAddr* broadcast_address;
52330 InetAddr* network_address;
52331 InetAddr* last_host;
52332
52333 explicit InetAddrMask(bool no_address);
52334
52335 public:
52336
52337 InetAddrMask();
52338 InetAddrMask(const InetAddr&, const InetAddr&);
52339 InetAddrMask(const std::string &s) throw(FWException);
52340 InetAddrMask(const InetAddrMask&);
52341 virtual ~InetAddrMask();
52342 void setNetworkAndBroadcastAddress();
52343
52344 virtual const InetAddr* getAddressPtr() const { return address; }
52345 virtual const InetAddr* getNetmaskPtr() const { return netmask; }
52346
52347 virtual const InetAddr* getNetworkAddressPtr() const {
52348 return network_address; }
52349 virtual const InetAddr* getBroadcastAddressPtr() const {
52350 return broadcast_address; }
52351
52352 const InetAddr* getFirstHostPtr() const {
52353 return network_address;}
52354 const InetAddr* getLastHostPtr() const{
52355 return last_host;}
52356
52357 virtual void setAddress(const InetAddr &a);
52358 virtual void setNetmask(const InetAddr &nm);
52359
52360 virtual unsigned int dimension() const;
52361
52362 bool isAny();
52363
52364 InetAddrMask& operator=(const InetAddrMask &o);
52365 bool operator<(const InetAddrMask &b);
52366
52367 friend bool operator==(const InetAddrMask &a, const InetAddrMask &b);
52368 friend bool operator<(const InetAddrMask &a, const InetAddrMask &b);
52369
52370 virtual std::string toString() const
52371 {
52372 return address->toString()+"/"+netmask->toString();
52373 }
52374
52375 bool belongs(const InetAddr &) const;
52376
52377
52378
52379
52380
52381
52382
52383 friend std::vector<InetAddrMask> getOverlap(const InetAddrMask &n1,
52384 const InetAddrMask &n2);
52385
52386
52387
52388
52389
52390
52391 friend std::vector<InetAddrMask> substract(const InetAddrMask &n1,
52392 const InetAddrMask &n2);
52393
52394
52395
52396
52397
52398 friend std::vector<InetAddrMask> convertAddressRange(const InetAddr &start,
52399 const InetAddr &end);
52400 };
52401
52402 }
52403 # 33 "../fwbuilder/Address.h" 2
52404
52405 namespace libfwbuilder
52406 {
52407 # 46 "../fwbuilder/Address.h"
52408 class Address : public FWObject
52409 {
52410 protected:
52411 InetAddrMask* inet_addr_mask;
52412
52413 public:
52414
52415 static const char *TYPENAME; virtual std::string getTypeName() const { return TYPENAME; } static bool isA(const FWObject *o) { return o && o->getTypeName()==TYPENAME; } static Address* cast(FWObject *o) { return dynamic_cast<Address*>(o); } static const Address* constcast(const FWObject *o) { return dynamic_cast<const Address*>(o); };
52416
52417 virtual void* dispatch(Dispatch* _d, void* _a1) {return _d->dispatch(this, _a1); } virtual void* dispatch(Dispatch* _d, const void* _a1) {return _d->dispatch(this, _a1); } virtual void* dispatch(Dispatch* _d, void* _a1) const {return _d->dispatch(this, _a1); } virtual void* dispatch(Dispatch* _d, const void* _a1) const {return _d->dispatch(this, _a1); } virtual const void* const_dispatch(Dispatch* _d, void* _a1) const {return _d->const_dispatch(this, _a1); } virtual const void* const_dispatch(Dispatch* _d, const void* _a1) const {return _d->const_dispatch(this, _a1); };
52418
52419 Address();
52420 Address(const Address&);
52421 virtual ~Address();
52422
52423
52424
52425
52426 virtual FWObject& shallowDuplicate(const FWObject *obj,
52427 bool preserve_id = true)
52428 throw(FWException);
52429
52430 const InetAddrMask* getInetAddrMaskObjectPtr() const;
52431 # 77 "../fwbuilder/Address.h"
52432 virtual bool hasInetAddress() const;
52433
52434
52435
52436
52437 virtual int countInetAddresses(bool skip_loopback) const;
52438 # 93 "../fwbuilder/Address.h"
52439 virtual const InetAddr* getAddressPtr() const;
52440 virtual const InetAddr* getNetmaskPtr() const;
52441
52442 virtual const InetAddr* getNetworkAddressPtr() const;
52443 virtual const InetAddr* getBroadcastAddressPtr() const;
52444
52445 virtual void setAddress(const InetAddr &a);
52446 virtual void setNetmask(const InetAddr &nm);
52447 virtual void setAddressNetmask(const std::string& s);
52448
52449 virtual const Address* getAddressObject() const;
52450 virtual unsigned int dimension() const;
52451 bool belongs(const InetAddr &) const;
52452
52453 virtual FWReference* createRef();
52454 virtual bool cmp(const FWObject *obj, bool recursive=false) throw(FWException);
52455
52456 bool isAny() const;
52457
52458 virtual bool isPrimaryObject() const { return true; }
52459 };
52460
52461 }
52462 # 32 "Address.cpp" 2
52463 # 1 "../fwbuilder/Interface.h" 1
52464 # 28 "../fwbuilder/Interface.h"
52465 #define __INTERFACE_HH_FLAG__
52466
52467
52468
52469
52470 # 1 "../fwbuilder/physAddress.h" 1
52471 # 28 "../fwbuilder/physAddress.h"
52472 #define __PHYS_ADDRESS_HH_FLAG__
52473
52474
52475
52476
52477
52478 namespace libfwbuilder
52479 {
52480
52481 class physAddress : public Address
52482 {
52483 private:
52484
52485 public:
52486
52487 static const char *TYPENAME; virtual std::string getTypeName() const { return TYPENAME; } static bool isA(const FWObject *o) { return o && o->getTypeName()==TYPENAME; } static physAddress* cast(FWObject *o) { return dynamic_cast<physAddress*>(o); } static const physAddress* constcast(const FWObject *o) { return dynamic_cast<const physAddress*>(o); };
52488
52489 virtual void* dispatch(Dispatch* _d, void* _a1) {return _d->dispatch(this, _a1); } virtual void* dispatch(Dispatch* _d, const void* _a1) {return _d->dispatch(this, _a1); } virtual void* dispatch(Dispatch* _d, void* _a1) const {return _d->dispatch(this, _a1); } virtual void* dispatch(Dispatch* _d, const void* _a1) const {return _d->dispatch(this, _a1); } virtual const void* const_dispatch(Dispatch* _d, void* _a1) const {return _d->const_dispatch(this, _a1); } virtual const void* const_dispatch(Dispatch* _d, const void* _a1) const {return _d->const_dispatch(this, _a1); };
52490
52491 physAddress();
52492
52493 virtual void fromXML(xmlNodePtr parent) throw(FWException);
52494 virtual xmlNodePtr toXML(xmlNodePtr xml_parent_node) throw(FWException);
52495
52496 std::string getPhysAddress() const;
52497 void setPhysAddress(const std::string &s);
52498
52499 virtual FWReference* createRef();
52500
52501 bool isAny() const;
52502
52503 virtual bool isPrimaryObject() const { return false; }
52504
52505 };
52506
52507 }
52508 # 34 "../fwbuilder/Interface.h" 2
52509
52510
52511 # 1 "../fwbuilder/FWOptions.h" 1
52512 # 28 "../fwbuilder/FWOptions.h"
52513 #define __FWOPTINS_HH_FLAG__
52514
52515
52516 # 1 "../fwbuilder/XMLTools.h" 1
52517 # 32 "../fwbuilder/XMLTools.h"
52518 #define __XML_TOOLS_HH_FLAG__
52519
52520 # 1 "../fwbuilder/libfwbuilder-config.h" 1
52521
52522
52523
52524
52525
52526
52527 #define FWBUILDER_XML_VERSION "22"
52528
52529
52530
52531
52532
52533 #define RES_DIR "/usr/share/fwbuilder-5.0.1.3592"
52534 # 27 "../fwbuilder/libfwbuilder-config.h"
52535 #define HAVE_GETOPT_H 1
52536 # 44 "../fwbuilder/libfwbuilder-config.h"
52537 #define HAVE_XMLSAVEFORMATFILEENC 1
52538
52539 #define HAVE_LIBXSLT_XSLTCONFIG_H 1
52540
52541
52542 #define HAVE_STRTOK_R 1
52543
52544 #define WORDS_LITTLEENDIAN 1
52545 # 61 "../fwbuilder/libfwbuilder-config.h"
52546 #define SNPRINTF snprintf
52547 #define VSNPRINTF vsnprintf
52548 #define FS_SEPARATOR "/"
52549
52550
52551
52552
52553
52554
52555 #define FREEXMLBUFF(x) xmlFree((void*)(x))
52556 # 35 "../fwbuilder/XMLTools.h" 2
52557
52558 # 1 "../fwbuilder/Tools.h" 1
52559 # 32 "../fwbuilder/Tools.h"
52560 #define __FW_TOOLS_HH_FLAG__
52561
52562
52563 #define SAME 0
52564
52565
52566
52567 #define nil NULL
52568
52569
52570 # 1 "../../../../config.h" 1
52571
52572
52573 # 1 "../../../../VERSION.h" 1
52574 #define VERSION "5.0.1.3592"
52575 #define GENERATION "5.0"
52576 # 4 "../../../../config.h" 2
52577
52578 #define BUILD_NUM "3592"
52579
52580
52581
52582
52583
52584
52585 #define RCS_FILE_NAME "/usr/bin/rcs"
52586 #define RCSDIFF_FILE_NAME "/usr/bin/rcsdiff"
52587 #define RLOG_FILE_NAME "/usr/bin/rlog"
52588 #define CI_FILE_NAME "/usr/bin/ci"
52589 #define CO_FILE_NAME "/usr/bin/co"
52590
52591
52592
52593
52594
52595 #define PACKAGE "fwbuilder"
52596
52597
52598 #define OS "Linux"
52599 # 34 "../../../../config.h"
52600 #define OS_LINUX "1"
52601
52602
52603
52604 #define OS_UNIX 1
52605
52606
52607
52608
52609
52610
52611
52612 #define DISTRO "Unknown"
52613
52614
52615 #define PREFIX "/usr"
52616
52617 #define MANIFEST_MARKER "# files: "
52618
52619
52620 #define HAVE_GETOPT_H 1
52621
52622
52623
52624 #define HAVE_SIGNAL 1
52625 #define HAVE_SIGNAL_H 1
52626
52627 #define HAVE_PTY_H 1
52628
52629
52630 #define HAVE_UNISTD_H 1
52631
52632
52633 #define HAVE_DECL_GETOPT HAVE_GETOPT_H
52634
52635
52636 #define HAVE_STRUCT_TM_TM_ZONE 1
52637
52638
52639 #define HAVE_FORKPTY 1
52640 #define HAVE_CFMAKERAW 1
52641 # 89 "../../../../config.h"
52642 #define HAVE_STRCHR 1
52643
52644
52645
52646
52647
52648 #define HAVE_CPPUNIT
52649 # 114 "../../../../config.h"
52650 #define SNPRINTF snprintf
52651 #define VSNPRINTF vsnprintf
52652 # 43 "../fwbuilder/Tools.h" 2
52653 # 51 "../fwbuilder/Tools.h"
52654 # 1 "/usr/include/dirent.h" 1 3 4
52655 # 24 "/usr/include/dirent.h" 3 4
52656 #define _DIRENT_H 1
52657
52658
52659
52660 extern "C" {
52661 # 62 "/usr/include/dirent.h" 3 4
52662 # 1 "/usr/include/bits/dirent.h" 1 3 4
52663 # 23 "/usr/include/bits/dirent.h" 3 4
52664 struct dirent
52665 {
52666
52667 __ino_t d_ino;
52668 __off_t d_off;
52669
52670
52671
52672
52673 unsigned short int d_reclen;
52674 unsigned char d_type;
52675 char d_name[256];
52676 };
52677
52678
52679 struct dirent64
52680 {
52681 __ino64_t d_ino;
52682 __off64_t d_off;
52683 unsigned short int d_reclen;
52684 unsigned char d_type;
52685 char d_name[256];
52686 };
52687
52688
52689 #define d_fileno d_ino
52690
52691 #undef _DIRENT_HAVE_D_NAMLEN
52692 #define _DIRENT_HAVE_D_RECLEN
52693 #define _DIRENT_HAVE_D_OFF
52694 #define _DIRENT_HAVE_D_TYPE
52695 # 63 "/usr/include/dirent.h" 2 3 4
52696 # 86 "/usr/include/dirent.h" 3 4
52697 #define _D_EXACT_NAMLEN(d) (strlen ((d)->d_name))
52698
52699 #define _D_ALLOC_NAMLEN(d) (((char *) (d) + (d)->d_reclen) - &(d)->d_name[0])
52700 # 98 "/usr/include/dirent.h" 3 4
52701 enum
52702 {
52703 DT_UNKNOWN = 0,
52704 #define DT_UNKNOWN DT_UNKNOWN
52705 DT_FIFO = 1,
52706 #define DT_FIFO DT_FIFO
52707 DT_CHR = 2,
52708 #define DT_CHR DT_CHR
52709 DT_DIR = 4,
52710 #define DT_DIR DT_DIR
52711 DT_BLK = 6,
52712 #define DT_BLK DT_BLK
52713 DT_REG = 8,
52714 #define DT_REG DT_REG
52715 DT_LNK = 10,
52716 #define DT_LNK DT_LNK
52717 DT_SOCK = 12,
52718 #define DT_SOCK DT_SOCK
52719 DT_WHT = 14
52720 #define DT_WHT DT_WHT
52721 };
52722
52723
52724 #define IFTODT(mode) (((mode) & 0170000) >> 12)
52725 #define DTTOIF(dirtype) ((dirtype) << 12)
52726
52727
52728
52729
52730
52731 typedef struct __dirstream DIR;
52732
52733
52734
52735
52736
52737
52738 extern DIR *opendir (__const char *__name) __attribute__ ((__nonnull__ (1)));
52739
52740
52741
52742
52743
52744
52745 extern DIR *fdopendir (int __fd);
52746
52747
52748
52749
52750
52751
52752
52753 extern int closedir (DIR *__dirp) __attribute__ ((__nonnull__ (1)));
52754 # 163 "/usr/include/dirent.h" 3 4
52755 extern struct dirent *readdir (DIR *__dirp) __attribute__ ((__nonnull__ (1)));
52756 # 174 "/usr/include/dirent.h" 3 4
52757 extern struct dirent64 *readdir64 (DIR *__dirp) __attribute__ ((__nonnull__ (1)));
52758 # 184 "/usr/include/dirent.h" 3 4
52759 extern int readdir_r (DIR *__restrict __dirp,
52760 struct dirent *__restrict __entry,
52761 struct dirent **__restrict __result)
52762 __attribute__ ((__nonnull__ (1, 2, 3)));
52763 # 201 "/usr/include/dirent.h" 3 4
52764 extern int readdir64_r (DIR *__restrict __dirp,
52765 struct dirent64 *__restrict __entry,
52766 struct dirent64 **__restrict __result)
52767 __attribute__ ((__nonnull__ (1, 2, 3)));
52768
52769
52770
52771
52772 extern void rewinddir (DIR *__dirp) throw () __attribute__ ((__nonnull__ (1)));
52773
52774
52775
52776
52777
52778 extern void seekdir (DIR *__dirp, long int __pos) throw () __attribute__ ((__nonnull__ (1)));
52779
52780
52781 extern long int telldir (DIR *__dirp) throw () __attribute__ ((__nonnull__ (1)));
52782
52783
52784
52785
52786
52787 extern int dirfd (DIR *__dirp) throw () __attribute__ ((__nonnull__ (1)));
52788 # 237 "/usr/include/dirent.h" 3 4
52789 #define MAXNAMLEN NAME_MAX
52790
52791
52792
52793
52794
52795
52796 #define __need_size_t
52797 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 1 3 4
52798 # 160 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 3 4
52799 #undef __need_ptrdiff_t
52800 # 233 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 3 4
52801 #undef __need_size_t
52802 # 342 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 3 4
52803 #undef __need_wchar_t
52804 # 395 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 3 4
52805 #undef NULL
52806
52807 #define NULL __null
52808 # 406 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/stddef.h" 3 4
52809 #undef __need_NULL
52810
52811
52812
52813
52814 #define offsetof(TYPE,MEMBER) __builtin_offsetof (TYPE, MEMBER)
52815 # 246 "/usr/include/dirent.h" 2 3 4
52816
52817
52818
52819
52820
52821
52822 extern int scandir (__const char *__restrict __dir,
52823 struct dirent ***__restrict __namelist,
52824 int (*__selector) (__const struct dirent *),
52825 int (*__cmp) (__const struct dirent **,
52826 __const struct dirent **))
52827 __attribute__ ((__nonnull__ (1, 2)));
52828 # 275 "/usr/include/dirent.h" 3 4
52829 extern int scandir64 (__const char *__restrict __dir,
52830 struct dirent64 ***__restrict __namelist,
52831 int (*__selector) (__const struct dirent64 *),
52832 int (*__cmp) (__const struct dirent64 **,
52833 __const struct dirent64 **))
52834 __attribute__ ((__nonnull__ (1, 2)));
52835
52836
52837
52838
52839 extern int alphasort (__const struct dirent **__e1,
52840 __const struct dirent **__e2)
52841 throw () __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
52842 # 300 "/usr/include/dirent.h" 3 4
52843 extern int alphasort64 (__const struct dirent64 **__e1,
52844 __const struct dirent64 **__e2)
52845 throw () __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
52846 # 313 "/usr/include/dirent.h" 3 4
52847 extern __ssize_t getdirentries (int __fd, char *__restrict __buf,
52848 size_t __nbytes,
52849 __off_t *__restrict __basep)
52850 throw () __attribute__ ((__nonnull__ (2, 4)));
52851 # 330 "/usr/include/dirent.h" 3 4
52852 extern __ssize_t getdirentries64 (int __fd, char *__restrict __buf,
52853 size_t __nbytes,
52854 __off64_t *__restrict __basep)
52855 throw () __attribute__ ((__nonnull__ (2, 4)));
52856
52857
52858
52859
52860
52861
52862 extern int versionsort (__const struct dirent **__e1,
52863 __const struct dirent **__e2)
52864 throw () __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
52865 # 356 "/usr/include/dirent.h" 3 4
52866 extern int versionsort64 (__const struct dirent64 **__e1,
52867 __const struct dirent64 **__e2)
52868 throw () __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
52869
52870
52871
52872 }
52873 # 52 "../fwbuilder/Tools.h" 2
52874
52875
52876
52877
52878
52879
52880 namespace libfwbuilder
52881 {
52882 # 72 "../fwbuilder/Tools.h"
52883 void init();
52884
52885
52886
52887
52888 int cxx_strcasecmp(const char *s1, const char *s2);
52889
52890 char *cxx_strdup(const char *x);
52891 char *cxx_strdup(const std::string &x);
52892
52893 std::string int2string(int n);
52894
52895
52896
52897
52898
52899 std::list<std::string> getDirList(const std::string &dir,
52900 const std::string &ext);
52901
52902
52903
52904 unsigned int cxx_sleep(unsigned int seconds);
52905
52906
52907
52908
52909 void tokenize(const std::string& str,
52910 std::vector<std::string>& tokens,
52911 const std::string& delimiters = " ");
52912
52913
52914
52915
52916
52917 std::string stringify(const std::vector<std::string>& parts,
52918 const std::string& delimiter = " ");
52919
52920
52921
52922
52923 std::string strip(const std::string& in, const std::string& identifier);
52924
52925
52926 std::set<std::string> stringToSet(const std::string &str);
52927 std::string setToString(const std::set<std::string> &s);
52928
52929 }
52930 # 37 "../fwbuilder/XMLTools.h" 2
52931
52932
52933
52934 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/functional" 1 3
52935 # 45 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/functional" 3
52936 #define _GLIBCXX_FUNCTIONAL 1
52937
52938
52939 # 48 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/functional" 3
52940 # 41 "../fwbuilder/XMLTools.h" 2
52941
52942
52943
52944
52945 # 1 "/usr/include/libxml2/libxml/parserInternals.h" 1
52946 # 13 "/usr/include/libxml2/libxml/parserInternals.h"
52947 #define __XML_PARSER_INTERNALS_H__
52948
52949
52950
52951 # 1 "/usr/include/libxml2/libxml/HTMLparser.h" 1
52952 # 14 "/usr/include/libxml2/libxml/HTMLparser.h"
52953 #define __HTML_PARSER_H__
52954
52955
52956
52957
52958
52959
52960 extern "C" {
52961
52962
52963
52964
52965
52966 typedef xmlParserCtxt htmlParserCtxt;
52967 typedef xmlParserCtxtPtr htmlParserCtxtPtr;
52968 typedef xmlParserNodeInfo htmlParserNodeInfo;
52969 typedef xmlSAXHandler htmlSAXHandler;
52970 typedef xmlSAXHandlerPtr htmlSAXHandlerPtr;
52971 typedef xmlParserInput htmlParserInput;
52972 typedef xmlParserInputPtr htmlParserInputPtr;
52973 typedef xmlDocPtr htmlDocPtr;
52974 typedef xmlNodePtr htmlNodePtr;
52975
52976
52977
52978
52979
52980 typedef struct _htmlElemDesc htmlElemDesc;
52981 typedef htmlElemDesc *htmlElemDescPtr;
52982 struct _htmlElemDesc {
52983 const char *name;
52984 char startTag;
52985 char endTag;
52986 char saveEndTag;
52987 char empty;
52988 char depr;
52989 char dtd;
52990 char isinline;
52991 const char *desc;
52992 # 64 "/usr/include/libxml2/libxml/HTMLparser.h"
52993 const char** subelts;
52994 const char* defaultsubelt;
52995
52996 const char** attrs_opt;
52997 const char** attrs_depr;
52998 const char** attrs_req;
52999 };
53000
53001
53002
53003
53004 typedef struct _htmlEntityDesc htmlEntityDesc;
53005 typedef htmlEntityDesc *htmlEntityDescPtr;
53006 struct _htmlEntityDesc {
53007 unsigned int value;
53008 const char *name;
53009 const char *desc;
53010 };
53011
53012
53013
53014
53015 const htmlElemDesc *
53016 htmlTagLookup (const xmlChar *tag);
53017 const htmlEntityDesc *
53018 htmlEntityLookup(const xmlChar *name);
53019 const htmlEntityDesc *
53020 htmlEntityValueLookup(unsigned int value);
53021
53022 int
53023 htmlIsAutoClosed(htmlDocPtr doc,
53024 htmlNodePtr elem);
53025 int
53026 htmlAutoCloseTag(htmlDocPtr doc,
53027 const xmlChar *name,
53028 htmlNodePtr elem);
53029 const htmlEntityDesc *
53030 htmlParseEntityRef(htmlParserCtxtPtr ctxt,
53031 const xmlChar **str);
53032 int
53033 htmlParseCharRef(htmlParserCtxtPtr ctxt);
53034 void
53035 htmlParseElement(htmlParserCtxtPtr ctxt);
53036
53037 htmlParserCtxtPtr
53038 htmlNewParserCtxt(void);
53039
53040 htmlParserCtxtPtr
53041 htmlCreateMemoryParserCtxt(const char *buffer,
53042 int size);
53043
53044 int
53045 htmlParseDocument(htmlParserCtxtPtr ctxt);
53046 htmlDocPtr
53047 htmlSAXParseDoc (xmlChar *cur,
53048 const char *encoding,
53049 htmlSAXHandlerPtr sax,
53050 void *userData);
53051 htmlDocPtr
53052 htmlParseDoc (xmlChar *cur,
53053 const char *encoding);
53054 htmlDocPtr
53055 htmlSAXParseFile(const char *filename,
53056 const char *encoding,
53057 htmlSAXHandlerPtr sax,
53058 void *userData);
53059 htmlDocPtr
53060 htmlParseFile (const char *filename,
53061 const char *encoding);
53062 int
53063 UTF8ToHtml (unsigned char *out,
53064 int *outlen,
53065 const unsigned char *in,
53066 int *inlen);
53067 int
53068 htmlEncodeEntities(unsigned char *out,
53069 int *outlen,
53070 const unsigned char *in,
53071 int *inlen, int quoteChar);
53072 int
53073 htmlIsScriptAttribute(const xmlChar *name);
53074 int
53075 htmlHandleOmittedElem(int val);
53076
53077
53078
53079
53080
53081 htmlParserCtxtPtr
53082 htmlCreatePushParserCtxt(htmlSAXHandlerPtr sax,
53083 void *user_data,
53084 const char *chunk,
53085 int size,
53086 const char *filename,
53087 xmlCharEncoding enc);
53088 int
53089 htmlParseChunk (htmlParserCtxtPtr ctxt,
53090 const char *chunk,
53091 int size,
53092 int terminate);
53093
53094
53095 void
53096 htmlFreeParserCtxt (htmlParserCtxtPtr ctxt);
53097 # 178 "/usr/include/libxml2/libxml/HTMLparser.h"
53098 typedef enum {
53099 HTML_PARSE_RECOVER = 1<<0,
53100 HTML_PARSE_NODEFDTD = 1<<2,
53101 HTML_PARSE_NOERROR = 1<<5,
53102 HTML_PARSE_NOWARNING= 1<<6,
53103 HTML_PARSE_PEDANTIC = 1<<7,
53104 HTML_PARSE_NOBLANKS = 1<<8,
53105 HTML_PARSE_NONET = 1<<11,
53106 HTML_PARSE_NOIMPLIED= 1<<13,
53107 HTML_PARSE_COMPACT = 1<<16
53108 } htmlParserOption;
53109
53110 void
53111 htmlCtxtReset (htmlParserCtxtPtr ctxt);
53112 int
53113 htmlCtxtUseOptions (htmlParserCtxtPtr ctxt,
53114 int options);
53115 htmlDocPtr
53116 htmlReadDoc (const xmlChar *cur,
53117 const char *URL,
53118 const char *encoding,
53119 int options);
53120 htmlDocPtr
53121 htmlReadFile (const char *URL,
53122 const char *encoding,
53123 int options);
53124 htmlDocPtr
53125 htmlReadMemory (const char *buffer,
53126 int size,
53127 const char *URL,
53128 const char *encoding,
53129 int options);
53130 htmlDocPtr
53131 htmlReadFd (int fd,
53132 const char *URL,
53133 const char *encoding,
53134 int options);
53135 htmlDocPtr
53136 htmlReadIO (xmlInputReadCallback ioread,
53137 xmlInputCloseCallback ioclose,
53138 void *ioctx,
53139 const char *URL,
53140 const char *encoding,
53141 int options);
53142 htmlDocPtr
53143 htmlCtxtReadDoc (xmlParserCtxtPtr ctxt,
53144 const xmlChar *cur,
53145 const char *URL,
53146 const char *encoding,
53147 int options);
53148 htmlDocPtr
53149 htmlCtxtReadFile (xmlParserCtxtPtr ctxt,
53150 const char *filename,
53151 const char *encoding,
53152 int options);
53153 htmlDocPtr
53154 htmlCtxtReadMemory (xmlParserCtxtPtr ctxt,
53155 const char *buffer,
53156 int size,
53157 const char *URL,
53158 const char *encoding,
53159 int options);
53160 htmlDocPtr
53161 htmlCtxtReadFd (xmlParserCtxtPtr ctxt,
53162 int fd,
53163 const char *URL,
53164 const char *encoding,
53165 int options);
53166 htmlDocPtr
53167 htmlCtxtReadIO (xmlParserCtxtPtr ctxt,
53168 xmlInputReadCallback ioread,
53169 xmlInputCloseCallback ioclose,
53170 void *ioctx,
53171 const char *URL,
53172 const char *encoding,
53173 int options);
53174
53175
53176
53177 typedef enum {
53178 HTML_NA = 0 ,
53179 HTML_INVALID = 0x1 ,
53180 HTML_DEPRECATED = 0x2 ,
53181 HTML_VALID = 0x4 ,
53182 HTML_REQUIRED = 0xc
53183 } htmlStatus ;
53184
53185
53186
53187
53188 htmlStatus htmlAttrAllowed(const htmlElemDesc*, const xmlChar*, int) ;
53189 int htmlElementAllowedHere(const htmlElemDesc*, const xmlChar*) ;
53190 htmlStatus htmlElementStatusHere(const htmlElemDesc*, const htmlElemDesc*) ;
53191 htmlStatus htmlNodeStatus(const htmlNodePtr, int) ;
53192
53193
53194
53195
53196
53197
53198 #define htmlDefaultSubelement(elt) elt->defaultsubelt
53199 # 289 "/usr/include/libxml2/libxml/HTMLparser.h"
53200 #define htmlElementAllowedHereDesc(parent,elt) htmlElementAllowedHere((parent), (elt)->name)
53201
53202
53203
53204
53205
53206
53207
53208 #define htmlRequiredAttrs(elt) (elt)->attrs_req
53209
53210
53211
53212 }
53213 # 18 "/usr/include/libxml2/libxml/parserInternals.h" 2
53214 # 1 "/usr/include/libxml2/libxml/chvalid.h" 1
53215 # 15 "/usr/include/libxml2/libxml/chvalid.h"
53216 #define __XML_CHVALID_H__
53217
53218
53219
53220
53221
53222 extern "C" {
53223
53224
53225
53226
53227
53228
53229 typedef struct _xmlChSRange xmlChSRange;
53230 typedef xmlChSRange *xmlChSRangePtr;
53231 struct _xmlChSRange {
53232 unsigned short low;
53233 unsigned short high;
53234 };
53235
53236 typedef struct _xmlChLRange xmlChLRange;
53237 typedef xmlChLRange *xmlChLRangePtr;
53238 struct _xmlChLRange {
53239 unsigned int low;
53240 unsigned int high;
53241 };
53242
53243 typedef struct _xmlChRangeGroup xmlChRangeGroup;
53244 typedef xmlChRangeGroup *xmlChRangeGroupPtr;
53245 struct _xmlChRangeGroup {
53246 int nbShortRange;
53247 int nbLongRange;
53248 const xmlChSRange *shortRange;
53249 const xmlChLRange *longRange;
53250 };
53251
53252
53253
53254
53255 int
53256 xmlCharInRange(unsigned int val, const xmlChRangeGroup *group);
53257 # 64 "/usr/include/libxml2/libxml/chvalid.h"
53258 #define xmlIsBaseChar_ch(c) (((0x41 <= (c)) && ((c) <= 0x5a)) || ((0x61 <= (c)) && ((c) <= 0x7a)) || ((0xc0 <= (c)) && ((c) <= 0xd6)) || ((0xd8 <= (c)) && ((c) <= 0xf6)) || (0xf8 <= (c)))
53259 # 76 "/usr/include/libxml2/libxml/chvalid.h"
53260 #define xmlIsBaseCharQ(c) (((c) < 0x100) ? xmlIsBaseChar_ch((c)) : xmlCharInRange((c), &xmlIsBaseCharGroup))
53261
53262
53263
53264 extern const xmlChRangeGroup xmlIsBaseCharGroup;
53265
53266
53267
53268
53269
53270
53271
53272 #define xmlIsBlank_ch(c) (((c) == 0x20) || ((0x9 <= (c)) && ((c) <= 0xa)) || ((c) == 0xd))
53273 # 98 "/usr/include/libxml2/libxml/chvalid.h"
53274 #define xmlIsBlankQ(c) (((c) < 0x100) ? xmlIsBlank_ch((c)) : 0)
53275 # 108 "/usr/include/libxml2/libxml/chvalid.h"
53276 #define xmlIsChar_ch(c) (((0x9 <= (c)) && ((c) <= 0xa)) || ((c) == 0xd) || (0x20 <= (c)))
53277 # 118 "/usr/include/libxml2/libxml/chvalid.h"
53278 #define xmlIsCharQ(c) (((c) < 0x100) ? xmlIsChar_ch((c)) : (((0x100 <= (c)) && ((c) <= 0xd7ff)) || ((0xe000 <= (c)) && ((c) <= 0xfffd)) || ((0x10000 <= (c)) && ((c) <= 0x10ffff))))
53279
53280
53281
53282
53283
53284 extern const xmlChRangeGroup xmlIsCharGroup;
53285
53286
53287
53288
53289
53290
53291
53292 #define xmlIsCombiningQ(c) (((c) < 0x100) ? 0 : xmlCharInRange((c), &xmlIsCombiningGroup))
53293
53294
53295
53296 extern const xmlChRangeGroup xmlIsCombiningGroup;
53297
53298
53299
53300
53301
53302
53303
53304 #define xmlIsDigit_ch(c) (((0x30 <= (c)) && ((c) <= 0x39)))
53305
53306
53307
53308
53309
53310
53311
53312 #define xmlIsDigitQ(c) (((c) < 0x100) ? xmlIsDigit_ch((c)) : xmlCharInRange((c), &xmlIsDigitGroup))
53313
53314
53315
53316 extern const xmlChRangeGroup xmlIsDigitGroup;
53317
53318
53319
53320
53321
53322
53323
53324 #define xmlIsExtender_ch(c) (((c) == 0xb7))
53325
53326
53327
53328
53329
53330
53331
53332 #define xmlIsExtenderQ(c) (((c) < 0x100) ? xmlIsExtender_ch((c)) : xmlCharInRange((c), &xmlIsExtenderGroup))
53333
53334
53335
53336 extern const xmlChRangeGroup xmlIsExtenderGroup;
53337
53338
53339
53340
53341
53342
53343
53344 #define xmlIsIdeographicQ(c) (((c) < 0x100) ? 0 : (((0x4e00 <= (c)) && ((c) <= 0x9fa5)) || ((c) == 0x3007) || ((0x3021 <= (c)) && ((c) <= 0x3029))))
53345
53346
53347
53348
53349
53350 extern const xmlChRangeGroup xmlIsIdeographicGroup;
53351 extern const unsigned char xmlIsPubidChar_tab[256];
53352
53353
53354
53355
53356
53357
53358
53359 #define xmlIsPubidChar_ch(c) (xmlIsPubidChar_tab[(c)])
53360
53361
53362
53363
53364
53365
53366
53367 #define xmlIsPubidCharQ(c) (((c) < 0x100) ? xmlIsPubidChar_ch((c)) : 0)
53368
53369
53370 int
53371 xmlIsBaseChar(unsigned int ch);
53372 int
53373 xmlIsBlank(unsigned int ch);
53374 int
53375 xmlIsChar(unsigned int ch);
53376 int
53377 xmlIsCombining(unsigned int ch);
53378 int
53379 xmlIsDigit(unsigned int ch);
53380 int
53381 xmlIsExtender(unsigned int ch);
53382 int
53383 xmlIsIdeographic(unsigned int ch);
53384 int
53385 xmlIsPubidChar(unsigned int ch);
53386
53387
53388 }
53389 # 19 "/usr/include/libxml2/libxml/parserInternals.h" 2
53390
53391
53392 extern "C" {
53393 # 31 "/usr/include/libxml2/libxml/parserInternals.h"
53394 extern unsigned int xmlParserMaxDepth;
53395 # 40 "/usr/include/libxml2/libxml/parserInternals.h"
53396 #define XML_MAX_TEXT_LENGTH 10000000
53397
53398
53399
53400
53401
53402
53403
53404 #define XML_MAX_NAMELEN 100
53405
53406
53407
53408
53409
53410
53411
53412 #define INPUT_CHUNK 250
53413 # 72 "/usr/include/libxml2/libxml/parserInternals.h"
53414 #define IS_BYTE_CHAR(c) xmlIsChar_ch(c)
53415 # 84 "/usr/include/libxml2/libxml/parserInternals.h"
53416 #define IS_CHAR(c) xmlIsCharQ(c)
53417
53418
53419
53420
53421
53422
53423
53424 #define IS_CHAR_CH(c) xmlIsChar_ch(c)
53425 # 102 "/usr/include/libxml2/libxml/parserInternals.h"
53426 #define IS_BLANK(c) xmlIsBlankQ(c)
53427
53428
53429
53430
53431
53432
53433
53434 #define IS_BLANK_CH(c) xmlIsBlank_ch(c)
53435 # 120 "/usr/include/libxml2/libxml/parserInternals.h"
53436 #define IS_BASECHAR(c) xmlIsBaseCharQ(c)
53437 # 130 "/usr/include/libxml2/libxml/parserInternals.h"
53438 #define IS_DIGIT(c) xmlIsDigitQ(c)
53439
53440
53441
53442
53443
53444
53445
53446 #define IS_DIGIT_CH(c) xmlIsDigit_ch(c)
53447 # 148 "/usr/include/libxml2/libxml/parserInternals.h"
53448 #define IS_COMBINING(c) xmlIsCombiningQ(c)
53449
53450
53451
53452
53453
53454
53455
53456 #define IS_COMBINING_CH(c) 0
53457 # 169 "/usr/include/libxml2/libxml/parserInternals.h"
53458 #define IS_EXTENDER(c) xmlIsExtenderQ(c)
53459
53460
53461
53462
53463
53464
53465
53466 #define IS_EXTENDER_CH(c) xmlIsExtender_ch(c)
53467 # 188 "/usr/include/libxml2/libxml/parserInternals.h"
53468 #define IS_IDEOGRAPHIC(c) xmlIsIdeographicQ(c)
53469 # 199 "/usr/include/libxml2/libxml/parserInternals.h"
53470 #define IS_LETTER(c) (IS_BASECHAR(c) || IS_IDEOGRAPHIC(c))
53471 # 208 "/usr/include/libxml2/libxml/parserInternals.h"
53472 #define IS_LETTER_CH(c) xmlIsBaseChar_ch(c)
53473 # 217 "/usr/include/libxml2/libxml/parserInternals.h"
53474 #define IS_ASCII_LETTER(c) (((0x41 <= (c)) && ((c) <= 0x5a)) || ((0x61 <= (c)) && ((c) <= 0x7a)))
53475 # 227 "/usr/include/libxml2/libxml/parserInternals.h"
53476 #define IS_ASCII_DIGIT(c) ((0x30 <= (c)) && ((c) <= 0x39))
53477 # 238 "/usr/include/libxml2/libxml/parserInternals.h"
53478 #define IS_PUBIDCHAR(c) xmlIsPubidCharQ(c)
53479
53480
53481
53482
53483
53484
53485
53486 #define IS_PUBIDCHAR_CH(c) xmlIsPubidChar_ch(c)
53487
53488
53489
53490
53491
53492
53493
53494 #define SKIP_EOL(p) if (*(p) == 0x13) { p++ ; if (*(p) == 0x10) p++; } if (*(p) == 0x10) { p++ ; if (*(p) == 0x13) p++; }
53495 # 264 "/usr/include/libxml2/libxml/parserInternals.h"
53496 #define MOVETO_ENDTAG(p) while ((*p) && (*(p) != '>')) (p)++
53497 # 273 "/usr/include/libxml2/libxml/parserInternals.h"
53498 #define MOVETO_STARTTAG(p) while ((*p) && (*(p) != '<')) (p)++
53499
53500
53501
53502
53503
53504 extern const xmlChar xmlStringText[];
53505 extern const xmlChar xmlStringTextNoenc[];
53506 extern const xmlChar xmlStringComment[];
53507
53508
53509
53510
53511 int xmlIsLetter (int c);
53512
53513
53514
53515
53516 xmlParserCtxtPtr
53517 xmlCreateFileParserCtxt (const char *filename);
53518 xmlParserCtxtPtr
53519 xmlCreateURLParserCtxt (const char *filename,
53520 int options);
53521 xmlParserCtxtPtr
53522 xmlCreateMemoryParserCtxt(const char *buffer,
53523 int size);
53524 xmlParserCtxtPtr
53525 xmlCreateEntityParserCtxt(const xmlChar *URL,
53526 const xmlChar *ID,
53527 const xmlChar *base);
53528 int
53529 xmlSwitchEncoding (xmlParserCtxtPtr ctxt,
53530 xmlCharEncoding enc);
53531 int
53532 xmlSwitchToEncoding (xmlParserCtxtPtr ctxt,
53533 xmlCharEncodingHandlerPtr handler);
53534 int
53535 xmlSwitchInputEncoding (xmlParserCtxtPtr ctxt,
53536 xmlParserInputPtr input,
53537 xmlCharEncodingHandlerPtr handler);
53538 # 327 "/usr/include/libxml2/libxml/parserInternals.h"
53539 xmlParserInputPtr
53540 xmlNewStringInputStream (xmlParserCtxtPtr ctxt,
53541 const xmlChar *buffer);
53542 xmlParserInputPtr
53543 xmlNewEntityInputStream (xmlParserCtxtPtr ctxt,
53544 xmlEntityPtr entity);
53545 int
53546 xmlPushInput (xmlParserCtxtPtr ctxt,
53547 xmlParserInputPtr input);
53548 xmlChar
53549 xmlPopInput (xmlParserCtxtPtr ctxt);
53550 void
53551 xmlFreeInputStream (xmlParserInputPtr input);
53552 xmlParserInputPtr
53553 xmlNewInputFromFile (xmlParserCtxtPtr ctxt,
53554 const char *filename);
53555 xmlParserInputPtr
53556 xmlNewInputStream (xmlParserCtxtPtr ctxt);
53557
53558
53559
53560
53561 xmlChar *
53562 xmlSplitQName (xmlParserCtxtPtr ctxt,
53563 const xmlChar *name,
53564 xmlChar **prefix);
53565
53566
53567
53568
53569 const xmlChar *
53570 xmlParseName (xmlParserCtxtPtr ctxt);
53571 xmlChar *
53572 xmlParseNmtoken (xmlParserCtxtPtr ctxt);
53573 xmlChar *
53574 xmlParseEntityValue (xmlParserCtxtPtr ctxt,
53575 xmlChar **orig);
53576 xmlChar *
53577 xmlParseAttValue (xmlParserCtxtPtr ctxt);
53578 xmlChar *
53579 xmlParseSystemLiteral (xmlParserCtxtPtr ctxt);
53580 xmlChar *
53581 xmlParsePubidLiteral (xmlParserCtxtPtr ctxt);
53582 void
53583 xmlParseCharData (xmlParserCtxtPtr ctxt,
53584 int cdata);
53585 xmlChar *
53586 xmlParseExternalID (xmlParserCtxtPtr ctxt,
53587 xmlChar **publicID,
53588 int strict);
53589 void
53590 xmlParseComment (xmlParserCtxtPtr ctxt);
53591 const xmlChar *
53592 xmlParsePITarget (xmlParserCtxtPtr ctxt);
53593 void
53594 xmlParsePI (xmlParserCtxtPtr ctxt);
53595 void
53596 xmlParseNotationDecl (xmlParserCtxtPtr ctxt);
53597 void
53598 xmlParseEntityDecl (xmlParserCtxtPtr ctxt);
53599 int
53600 xmlParseDefaultDecl (xmlParserCtxtPtr ctxt,
53601 xmlChar **value);
53602 xmlEnumerationPtr
53603 xmlParseNotationType (xmlParserCtxtPtr ctxt);
53604 xmlEnumerationPtr
53605 xmlParseEnumerationType (xmlParserCtxtPtr ctxt);
53606 int
53607 xmlParseEnumeratedType (xmlParserCtxtPtr ctxt,
53608 xmlEnumerationPtr *tree);
53609 int
53610 xmlParseAttributeType (xmlParserCtxtPtr ctxt,
53611 xmlEnumerationPtr *tree);
53612 void
53613 xmlParseAttributeListDecl(xmlParserCtxtPtr ctxt);
53614 xmlElementContentPtr
53615 xmlParseElementMixedContentDecl
53616 (xmlParserCtxtPtr ctxt,
53617 int inputchk);
53618 xmlElementContentPtr
53619 xmlParseElementChildrenContentDecl
53620 (xmlParserCtxtPtr ctxt,
53621 int inputchk);
53622 int
53623 xmlParseElementContentDecl(xmlParserCtxtPtr ctxt,
53624 const xmlChar *name,
53625 xmlElementContentPtr *result);
53626 int
53627 xmlParseElementDecl (xmlParserCtxtPtr ctxt);
53628 void
53629 xmlParseMarkupDecl (xmlParserCtxtPtr ctxt);
53630 int
53631 xmlParseCharRef (xmlParserCtxtPtr ctxt);
53632 xmlEntityPtr
53633 xmlParseEntityRef (xmlParserCtxtPtr ctxt);
53634 void
53635 xmlParseReference (xmlParserCtxtPtr ctxt);
53636 void
53637 xmlParsePEReference (xmlParserCtxtPtr ctxt);
53638 void
53639 xmlParseDocTypeDecl (xmlParserCtxtPtr ctxt);
53640
53641 const xmlChar *
53642 xmlParseAttribute (xmlParserCtxtPtr ctxt,
53643 xmlChar **value);
53644 const xmlChar *
53645 xmlParseStartTag (xmlParserCtxtPtr ctxt);
53646 void
53647 xmlParseEndTag (xmlParserCtxtPtr ctxt);
53648
53649 void
53650 xmlParseCDSect (xmlParserCtxtPtr ctxt);
53651 void
53652 xmlParseContent (xmlParserCtxtPtr ctxt);
53653 void
53654 xmlParseElement (xmlParserCtxtPtr ctxt);
53655 xmlChar *
53656 xmlParseVersionNum (xmlParserCtxtPtr ctxt);
53657 xmlChar *
53658 xmlParseVersionInfo (xmlParserCtxtPtr ctxt);
53659 xmlChar *
53660 xmlParseEncName (xmlParserCtxtPtr ctxt);
53661 const xmlChar *
53662 xmlParseEncodingDecl (xmlParserCtxtPtr ctxt);
53663 int
53664 xmlParseSDDecl (xmlParserCtxtPtr ctxt);
53665 void
53666 xmlParseXMLDecl (xmlParserCtxtPtr ctxt);
53667 void
53668 xmlParseTextDecl (xmlParserCtxtPtr ctxt);
53669 void
53670 xmlParseMisc (xmlParserCtxtPtr ctxt);
53671 void
53672 xmlParseExternalSubset (xmlParserCtxtPtr ctxt,
53673 const xmlChar *ExternalID,
53674 const xmlChar *SystemID);
53675
53676
53677
53678
53679
53680 #define XML_SUBSTITUTE_NONE 0
53681
53682
53683
53684
53685
53686 #define XML_SUBSTITUTE_REF 1
53687
53688
53689
53690
53691
53692 #define XML_SUBSTITUTE_PEREF 2
53693
53694
53695
53696
53697
53698 #define XML_SUBSTITUTE_BOTH 3
53699
53700 xmlChar *
53701 xmlStringDecodeEntities (xmlParserCtxtPtr ctxt,
53702 const xmlChar *str,
53703 int what,
53704 xmlChar end,
53705 xmlChar end2,
53706 xmlChar end3);
53707 xmlChar *
53708 xmlStringLenDecodeEntities (xmlParserCtxtPtr ctxt,
53709 const xmlChar *str,
53710 int len,
53711 int what,
53712 xmlChar end,
53713 xmlChar end2,
53714 xmlChar end3);
53715
53716
53717
53718
53719 int nodePush (xmlParserCtxtPtr ctxt,
53720 xmlNodePtr value);
53721 xmlNodePtr nodePop (xmlParserCtxtPtr ctxt);
53722 int inputPush (xmlParserCtxtPtr ctxt,
53723 xmlParserInputPtr value);
53724 xmlParserInputPtr inputPop (xmlParserCtxtPtr ctxt);
53725 const xmlChar * namePop (xmlParserCtxtPtr ctxt);
53726 int namePush (xmlParserCtxtPtr ctxt,
53727 const xmlChar *value);
53728
53729
53730
53731
53732 int xmlSkipBlankChars (xmlParserCtxtPtr ctxt);
53733 int xmlStringCurrentChar (xmlParserCtxtPtr ctxt,
53734 const xmlChar *cur,
53735 int *len);
53736 void xmlParserHandlePEReference(xmlParserCtxtPtr ctxt);
53737 int xmlCheckLanguageID (const xmlChar *lang);
53738
53739
53740
53741
53742 int xmlCurrentChar (xmlParserCtxtPtr ctxt,
53743 int *len);
53744 int xmlCopyCharMultiByte (xmlChar *out,
53745 int val);
53746 int xmlCopyChar (int len,
53747 xmlChar *out,
53748 int val);
53749 void xmlNextChar (xmlParserCtxtPtr ctxt);
53750 void xmlParserInputShrink (xmlParserInputPtr in);
53751
53752
53753
53754
53755
53756 void htmlInitAutoClose (void);
53757 htmlParserCtxtPtr htmlCreateFileParserCtxt(const char *filename,
53758 const char *encoding);
53759 # 563 "/usr/include/libxml2/libxml/parserInternals.h"
53760 typedef void (*xmlEntityReferenceFunc) (xmlEntityPtr ent,
53761 xmlNodePtr firstNode,
53762 xmlNodePtr lastNode);
53763
53764 void xmlSetEntityReferenceFunc (xmlEntityReferenceFunc func);
53765
53766 xmlChar *
53767 xmlParseQuotedString (xmlParserCtxtPtr ctxt);
53768 void
53769 xmlParseNamespace (xmlParserCtxtPtr ctxt);
53770 xmlChar *
53771 xmlNamespaceParseNSDef (xmlParserCtxtPtr ctxt);
53772 xmlChar *
53773 xmlScanName (xmlParserCtxtPtr ctxt);
53774 xmlChar *
53775 xmlNamespaceParseNCName (xmlParserCtxtPtr ctxt);
53776 void xmlParserHandleReference(xmlParserCtxtPtr ctxt);
53777 xmlChar *
53778 xmlNamespaceParseQName (xmlParserCtxtPtr ctxt,
53779 xmlChar **prefix);
53780
53781
53782
53783 xmlChar *
53784 xmlDecodeEntities (xmlParserCtxtPtr ctxt,
53785 int len,
53786 int what,
53787 xmlChar end,
53788 xmlChar end2,
53789 xmlChar end3);
53790 void
53791 xmlHandleEntity (xmlParserCtxtPtr ctxt,
53792 xmlEntityPtr entity);
53793 # 609 "/usr/include/libxml2/libxml/parserInternals.h"
53794 }
53795 # 46 "../fwbuilder/XMLTools.h" 2
53796
53797
53798
53799 namespace libfwbuilder
53800 {
53801
53802
53803 #define FROMXMLCAST(x) ((const char *)x)
53804 #define STRTOXMLCAST(x) ((xmlChar *)x.c_str())
53805 #define TOXMLCAST(x) ((xmlChar *)x)
53806
53807 class XMLTools
53808 {
53809 public:
53810
53811 static xmlNodePtr getXmlNodeByPath(xmlNodePtr r,const char *path );
53812 static xmlNodePtr getXmlNodeByPath(xmlNodePtr r,const std::string &path );
53813
53814 static xmlNodePtr getXmlChildNode (xmlNodePtr r,const char *child_name );
53815
53816 static void initXMLTools();
53817 static void close();
53818
53819 class UpgradePredicate
53820 {
53821 public:
53822
53823 virtual ~UpgradePredicate() {}
53824
53825 virtual bool operator()(const std::string&) const
53826 {
53827 return true;
53828 }
53829 };
53830
53831 static std::string readFile(const std::string &file_name) throw(FWException);
53832
53833
53834
53835
53836
53837 static xmlDocPtr loadFile(const std::string &file_name,
53838 const std::string &type_name,
53839 const std::string &dtd_file,
53840 const UpgradePredicate *upgrade,
53841 const std::string &template_dir,
53842 const std::string &current_version = std::string("22")
53843 ) throw(FWException);
53844
53845 static void setDTD(xmlDocPtr doc,
53846 const std::string &type_name,
53847 const std::string &dtd_file) throw(FWException);
53848
53849
53850
53851
53852 static void saveFile(xmlDocPtr doc,
53853 const std::string &file_name,
53854 const std::string &type_name,
53855 const std::string &dtd_file) throw(FWException);
53856
53857
53858
53859
53860 static void dumpToMemory(xmlDocPtr doc,
53861 xmlChar **buffer,
53862 int *size,
53863 const std::string &type_name,
53864 const std::string &dtd_file) throw(FWException);
53865
53866 static xmlExternalEntityLoader defaultLoader;
53867 # 125 "../fwbuilder/XMLTools.h"
53868 static xmlDocPtr parseFile(const std::string &file_name,
53869 const std::string &buffer,
53870 bool use_dtd, const std::string &template_dir
53871 ) throw(FWException);
53872
53873
53874
53875
53876
53877 static xmlDocPtr transformDocument(xmlDocPtr doc,
53878 const std::string &stylesheet_file,
53879 const char **params
53880 ) throw(FWException);
53881
53882
53883
53884
53885
53886 static void transformDocumentToFile(xmlDocPtr doc,
53887 const std::string &stylesheet_file,
53888 const char **params,
53889 const std::string &dst_file
53890 ) throw(FWException);
53891
53892
53893
53894
53895
53896 static void transformFileToFile(const std::string &src_file,
53897 const std::string &stylesheet_file,
53898 const char **params,
53899 const std::string &dst_file
53900 ) throw(FWException);
53901
53902
53903 static std::string quote_linefeeds (const std::string &s);
53904 static std::string unquote_linefeeds(const std::string &s);
53905
53906
53907
53908
53909
53910 static std::string cleanForUTF8(const std::string &str);
53911
53912
53913
53914
53915
53916 static std::string cleanForNVTASCII(const std::string &str);
53917
53918
53919
53920
53921
53922
53923 static int version_compare(const std::string &v1, const std::string &v2);
53924
53925
53926 private:
53927
53928
53929
53930
53931
53932
53933
53934 static xmlDocPtr convert(xmlDocPtr doc,
53935 const std::string &file_name,
53936 const std::string &type_name,
53937 const std::string &template_dir,
53938 const std::string &current_version = std::string("22")
53939 ) throw(FWException);
53940
53941
53942
53943
53944 static int major_number(const std::string &v, std::string &rest);
53945
53946 };
53947
53948 }
53949 # 32 "../fwbuilder/FWOptions.h" 2
53950
53951 namespace libfwbuilder
53952 {
53953
53954 class FWOptions : public FWObject
53955 {
53956 public:
53957 FWOptions();
53958
53959 static const char *TYPENAME; virtual std::string getTypeName() const { return TYPENAME; } static bool isA(const FWObject *o) { return o && o->getTypeName()==TYPENAME; } static FWOptions* cast(FWObject *o) { return dynamic_cast<FWOptions*>(o); } static const FWOptions* constcast(const FWObject *o) { return dynamic_cast<const FWOptions*>(o); };
53960 virtual void* dispatch(Dispatch* _d, void* _a1) {return _d->dispatch(this, _a1); } virtual void* dispatch(Dispatch* _d, const void* _a1) {return _d->dispatch(this, _a1); } virtual void* dispatch(Dispatch* _d, void* _a1) const {return _d->dispatch(this, _a1); } virtual void* dispatch(Dispatch* _d, const void* _a1) const {return _d->dispatch(this, _a1); } virtual const void* const_dispatch(Dispatch* _d, void* _a1) const {return _d->const_dispatch(this, _a1); } virtual const void* const_dispatch(Dispatch* _d, const void* _a1) const {return _d->const_dispatch(this, _a1); };
53961 virtual void fromXML(xmlNodePtr parent) throw(FWException);
53962 virtual xmlNodePtr toXML(xmlNodePtr parent) throw(FWException);
53963 virtual bool isPrimaryObject() const { return false; }
53964 };
53965
53966 class HostOptions : public FWOptions
53967 {
53968 public:
53969 HostOptions();
53970
53971 static const char *TYPENAME; virtual std::string getTypeName() const { return TYPENAME; } static bool isA(const FWObject *o) { return o && o->getTypeName()==TYPENAME; } static HostOptions* cast(FWObject *o) { return dynamic_cast<HostOptions*>(o); } static const HostOptions* constcast(const FWObject *o) { return dynamic_cast<const HostOptions*>(o); };
53972 virtual void* dispatch(Dispatch* _d, void* _a1) {return _d->dispatch(this, _a1); } virtual void* dispatch(Dispatch* _d, const void* _a1) {return _d->dispatch(this, _a1); } virtual void* dispatch(Dispatch* _d, void* _a1) const {return _d->dispatch(this, _a1); } virtual void* dispatch(Dispatch* _d, const void* _a1) const {return _d->dispatch(this, _a1); } virtual const void* const_dispatch(Dispatch* _d, void* _a1) const {return _d->const_dispatch(this, _a1); } virtual const void* const_dispatch(Dispatch* _d, const void* _a1) const {return _d->const_dispatch(this, _a1); };
53973 };
53974
53975 class FirewallOptions : public FWOptions
53976 {
53977 public:
53978 FirewallOptions();
53979
53980 static const char *TYPENAME; virtual std::string getTypeName() const { return TYPENAME; } static bool isA(const FWObject *o) { return o && o->getTypeName()==TYPENAME; } static FirewallOptions* cast(FWObject *o) { return dynamic_cast<FirewallOptions*>(o); } static const FirewallOptions* constcast(const FWObject *o) { return dynamic_cast<const FirewallOptions*>(o); };
53981 virtual void* dispatch(Dispatch* _d, void* _a1) {return _d->dispatch(this, _a1); } virtual void* dispatch(Dispatch* _d, const void* _a1) {return _d->dispatch(this, _a1); } virtual void* dispatch(Dispatch* _d, void* _a1) const {return _d->dispatch(this, _a1); } virtual void* dispatch(Dispatch* _d, const void* _a1) const {return _d->dispatch(this, _a1); } virtual const void* const_dispatch(Dispatch* _d, void* _a1) const {return _d->const_dispatch(this, _a1); } virtual const void* const_dispatch(Dispatch* _d, const void* _a1) const {return _d->const_dispatch(this, _a1); };
53982 };
53983
53984 class InterfaceOptions : public FWOptions
53985 {
53986 public:
53987 InterfaceOptions();
53988
53989 static const char *TYPENAME; virtual std::string getTypeName() const { return TYPENAME; } static bool isA(const FWObject *o) { return o && o->getTypeName()==TYPENAME; } static InterfaceOptions* cast(FWObject *o) { return dynamic_cast<InterfaceOptions*>(o); } static const InterfaceOptions* constcast(const FWObject *o) { return dynamic_cast<const InterfaceOptions*>(o); };
53990 virtual void* dispatch(Dispatch* _d, void* _a1) {return _d->dispatch(this, _a1); } virtual void* dispatch(Dispatch* _d, const void* _a1) {return _d->dispatch(this, _a1); } virtual void* dispatch(Dispatch* _d, void* _a1) const {return _d->dispatch(this, _a1); } virtual void* dispatch(Dispatch* _d, const void* _a1) const {return _d->dispatch(this, _a1); } virtual const void* const_dispatch(Dispatch* _d, void* _a1) const {return _d->const_dispatch(this, _a1); } virtual const void* const_dispatch(Dispatch* _d, const void* _a1) const {return _d->const_dispatch(this, _a1); };
53991 };
53992
53993 class RuleSetOptions : public FWOptions
53994 {
53995 public:
53996
53997 RuleSetOptions();
53998
53999 static const char *TYPENAME; virtual std::string getTypeName() const { return TYPENAME; } static bool isA(const FWObject *o) { return o && o->getTypeName()==TYPENAME; } static RuleSetOptions* cast(FWObject *o) { return dynamic_cast<RuleSetOptions*>(o); } static const RuleSetOptions* constcast(const FWObject *o) { return dynamic_cast<const RuleSetOptions*>(o); };
54000 virtual void* dispatch(Dispatch* _d, void* _a1) {return _d->dispatch(this, _a1); } virtual void* dispatch(Dispatch* _d, const void* _a1) {return _d->dispatch(this, _a1); } virtual void* dispatch(Dispatch* _d, void* _a1) const {return _d->dispatch(this, _a1); } virtual void* dispatch(Dispatch* _d, const void* _a1) const {return _d->dispatch(this, _a1); } virtual const void* const_dispatch(Dispatch* _d, void* _a1) const {return _d->const_dispatch(this, _a1); } virtual const void* const_dispatch(Dispatch* _d, const void* _a1) const {return _d->const_dispatch(this, _a1); };
54001 };
54002
54003 class PolicyRuleOptions : public FWOptions
54004 {
54005 public:
54006
54007 PolicyRuleOptions();
54008
54009 static const char *TYPENAME; virtual std::string getTypeName() const { return TYPENAME; } static bool isA(const FWObject *o) { return o && o->getTypeName()==TYPENAME; } static PolicyRuleOptions* cast(FWObject *o) { return dynamic_cast<PolicyRuleOptions*>(o); } static const PolicyRuleOptions* constcast(const FWObject *o) { return dynamic_cast<const PolicyRuleOptions*>(o); };
54010 virtual void* dispatch(Dispatch* _d, void* _a1) {return _d->dispatch(this, _a1); } virtual void* dispatch(Dispatch* _d, const void* _a1) {return _d->dispatch(this, _a1); } virtual void* dispatch(Dispatch* _d, void* _a1) const {return _d->dispatch(this, _a1); } virtual void* dispatch(Dispatch* _d, const void* _a1) const {return _d->dispatch(this, _a1); } virtual const void* const_dispatch(Dispatch* _d, void* _a1) const {return _d->const_dispatch(this, _a1); } virtual const void* const_dispatch(Dispatch* _d, const void* _a1) const {return _d->const_dispatch(this, _a1); };
54011 };
54012
54013 class NATRuleOptions : public FWOptions
54014 {
54015 public:
54016
54017 NATRuleOptions();
54018
54019 static const char *TYPENAME; virtual std::string getTypeName() const { return TYPENAME; } static bool isA(const FWObject *o) { return o && o->getTypeName()==TYPENAME; } static NATRuleOptions* cast(FWObject *o) { return dynamic_cast<NATRuleOptions*>(o); } static const NATRuleOptions* constcast(const FWObject *o) { return dynamic_cast<const NATRuleOptions*>(o); };
54020 virtual void* dispatch(Dispatch* _d, void* _a1) {return _d->dispatch(this, _a1); } virtual void* dispatch(Dispatch* _d, const void* _a1) {return _d->dispatch(this, _a1); } virtual void* dispatch(Dispatch* _d, void* _a1) const {return _d->dispatch(this, _a1); } virtual void* dispatch(Dispatch* _d, const void* _a1) const {return _d->dispatch(this, _a1); } virtual const void* const_dispatch(Dispatch* _d, void* _a1) const {return _d->const_dispatch(this, _a1); } virtual const void* const_dispatch(Dispatch* _d, const void* _a1) const {return _d->const_dispatch(this, _a1); };
54021 };
54022
54023 class RoutingRuleOptions : public FWOptions
54024 {
54025 public:
54026
54027 RoutingRuleOptions();
54028
54029 static const char *TYPENAME; virtual std::string getTypeName() const { return TYPENAME; } static bool isA(const FWObject *o) { return o && o->getTypeName()==TYPENAME; } static RoutingRuleOptions* cast(FWObject *o) { return dynamic_cast<RoutingRuleOptions*>(o); } static const RoutingRuleOptions* constcast(const FWObject *o) { return dynamic_cast<const RoutingRuleOptions*>(o); };
54030 virtual void* dispatch(Dispatch* _d, void* _a1) {return _d->dispatch(this, _a1); } virtual void* dispatch(Dispatch* _d, const void* _a1) {return _d->dispatch(this, _a1); } virtual void* dispatch(Dispatch* _d, void* _a1) const {return _d->dispatch(this, _a1); } virtual void* dispatch(Dispatch* _d, const void* _a1) const {return _d->dispatch(this, _a1); } virtual const void* const_dispatch(Dispatch* _d, void* _a1) const {return _d->const_dispatch(this, _a1); } virtual const void* const_dispatch(Dispatch* _d, const void* _a1) const {return _d->const_dispatch(this, _a1); };
54031 };
54032
54033 class ClusterGroupOptions : public FWOptions
54034 {
54035 public:
54036 ClusterGroupOptions();
54037
54038 static const char *TYPENAME; virtual std::string getTypeName() const { return TYPENAME; } static bool isA(const FWObject *o) { return o && o->getTypeName()==TYPENAME; } static ClusterGroupOptions* cast(FWObject *o) { return dynamic_cast<ClusterGroupOptions*>(o); } static const ClusterGroupOptions* constcast(const FWObject *o) { return dynamic_cast<const ClusterGroupOptions*>(o); };
54039 virtual void* dispatch(Dispatch* _d, void* _a1) {return _d->dispatch(this, _a1); } virtual void* dispatch(Dispatch* _d, const void* _a1) {return _d->dispatch(this, _a1); } virtual void* dispatch(Dispatch* _d, void* _a1) const {return _d->dispatch(this, _a1); } virtual void* dispatch(Dispatch* _d, const void* _a1) const {return _d->dispatch(this, _a1); } virtual const void* const_dispatch(Dispatch* _d, void* _a1) const {return _d->const_dispatch(this, _a1); } virtual const void* const_dispatch(Dispatch* _d, const void* _a1) const {return _d->const_dispatch(this, _a1); };
54040 };
54041
54042 }
54043 # 37 "../fwbuilder/Interface.h" 2
54044
54045 namespace libfwbuilder
54046 {
54047 class IPv4;
54048 class IPv6;
54049
54050 class Interface : public Address
54051 {
54052 private:
54053 # 64 "../fwbuilder/Interface.h"
54054 int bcast_bits;
54055 bool ostatus;
54056 int snmp_type;
54057
54058 protected:
54059
54060 virtual void replaceReferenceInternal(int oldfw_id, int newfw_id, int &counter);
54061
54062 public:
54063
54064 Interface();
54065 Interface(const Interface &i);
54066 virtual ~Interface();
54067
54068
54069
54070
54071
54072
54073 virtual void removeRef(FWObject *obj);
54074
54075
54076
54077
54078
54079 virtual void addRef(FWObject *obj);
54080
54081 virtual void fromXML(xmlNodePtr parent) throw(FWException);
54082 virtual xmlNodePtr toXML(xmlNodePtr parent) throw(FWException);
54083
54084 virtual bool validateChild(FWObject *o);
54085
54086 virtual FWOptions* getOptionsObject();
54087 virtual FWOptions* getOptionsObjectConst() const;
54088
54089 static const char *TYPENAME; virtual std::string getTypeName() const { return TYPENAME; } static bool isA(const FWObject *o) { return o && o->getTypeName()==TYPENAME; } static Interface* cast(FWObject *o) { return dynamic_cast<Interface*>(o); } static const Interface* constcast(const FWObject *o) { return dynamic_cast<const Interface*>(o); };
54090
54091 virtual void* dispatch(Dispatch* _d, void* _a1) {return _d->dispatch(this, _a1); } virtual void* dispatch(Dispatch* _d, const void* _a1) {return _d->dispatch(this, _a1); } virtual void* dispatch(Dispatch* _d, void* _a1) const {return _d->dispatch(this, _a1); } virtual void* dispatch(Dispatch* _d, const void* _a1) const {return _d->dispatch(this, _a1); } virtual const void* const_dispatch(Dispatch* _d, void* _a1) const {return _d->const_dispatch(this, _a1); } virtual const void* const_dispatch(Dispatch* _d, const void* _a1) const {return _d->const_dispatch(this, _a1); };
54092
54093
54094
54095
54096
54097
54098
54099 int getSecurityLevel() const;
54100 void setSecurityLevel(int level);
54101
54102
54103
54104
54105
54106 void setDyn(bool value);
54107 bool isDyn() const ;
54108
54109
54110
54111
54112 void setUnnumbered(bool value);
54113 bool isUnnumbered() const ;
54114 # 138 "../fwbuilder/Interface.h"
54115 bool isBridgePort() const;
54116
54117
54118
54119
54120
54121
54122
54123 bool isSlave() const;
54124
54125
54126
54127
54128
54129 bool isRegular() const
54130 { return (!isDyn() && !isUnnumbered() && !isBridgePort()); }
54131
54132
54133
54134
54135
54136 void setUnprotected(bool value);
54137 bool isUnprotected() const ;
54138
54139 void setDedicatedFailover(bool value);
54140 bool isDedicatedFailover() const;
54141
54142 void setManagement(bool value);
54143 bool isManagement() const;
54144
54145 bool isUp () const { return ostatus; }
54146 void setOStatus(bool value);
54147
54148 bool isFailoverInterface() const;
54149
54150 void setInterfaceType(int _snmp_type);
54151 int getInterfaceType() const { return snmp_type; }
54152
54153 void setBroadcastBits(int _val);
54154
54155
54156
54157
54158
54159 bool isLoopback() const;
54160
54161 IPv4* addIPv4();
54162 IPv6* addIPv6();
54163
54164 physAddress* getPhysicalAddress () const;
54165 void setPhysicalAddress(const std::string &pa);
54166
54167
54168 virtual FWObject& shallowDuplicate(const FWObject *obj,
54169 bool preserve_id = true) throw(FWException);
54170 virtual FWObject& duplicate(const FWObject *obj,
54171 bool preserve_id = true) throw(FWException);
54172
54173 virtual bool cmp(const FWObject *obj, bool recursive=false) throw(FWException);
54174
54175 void duplicateWithIdMapping(const FWObject *src,
54176 std::map<int,int> &id_mapping, bool preserve_id);
54177
54178 const std::string &getLabel() const;
54179 void setLabel(const std::string& n);
54180
54181 virtual const Address* getAddressObject() const;
54182
54183 virtual unsigned int dimension() const { return 1; }
54184
54185
54186
54187
54188 virtual int countInetAddresses(bool skip_loopback) const;
54189
54190 virtual bool isPrimaryObject() const { return false; }
54191
54192
54193
54194
54195
54196
54197
54198 static void findAllInterfaces(FWObject *obj, std::list<FWObject*> &interfaces);
54199
54200 };
54201
54202 }
54203 # 33 "Address.cpp" 2
54204
54205 # 1 "../fwbuilder/FWObjectReference.h" 1
54206 # 29 "../fwbuilder/FWObjectReference.h"
54207 #define __FWOBJECTREF_HH_FLAG__
54208
54209 # 1 "../fwbuilder/FWReference.h" 1
54210 # 29 "../fwbuilder/FWReference.h"
54211 #define __FWREF_HH_FLAG__
54212
54213
54214
54215 namespace libfwbuilder
54216 {
54217
54218
54219
54220
54221 class FWReference : public FWObject
54222 {
54223 private:
54224
54225 std::string str_ref;
54226 int int_ref;
54227
54228 protected:
54229
54230 FWReference();
54231
54232 public:
54233
54234 static const char *TYPENAME; virtual std::string getTypeName() const { return TYPENAME; } static bool isA(const FWObject *o) { return o && o->getTypeName()==TYPENAME; } static FWReference* cast(FWObject *o) { return dynamic_cast<FWReference*>(o); } static const FWReference* constcast(const FWObject *o) { return dynamic_cast<const FWReference*>(o); };
54235
54236 virtual void* dispatch(Dispatch* _d, void* _a1) {return _d->dispatch(this, _a1); } virtual void* dispatch(Dispatch* _d, const void* _a1) {return _d->dispatch(this, _a1); } virtual void* dispatch(Dispatch* _d, void* _a1) const {return _d->dispatch(this, _a1); } virtual void* dispatch(Dispatch* _d, const void* _a1) const {return _d->dispatch(this, _a1); } virtual const void* const_dispatch(Dispatch* _d, void* _a1) const {return _d->const_dispatch(this, _a1); } virtual const void* const_dispatch(Dispatch* _d, const void* _a1) const {return _d->const_dispatch(this, _a1); };
54237
54238 virtual ~FWReference();
54239
54240 virtual void fromXML(xmlNodePtr parent) throw(FWException);
54241 virtual xmlNodePtr toXML(xmlNodePtr parent) throw(FWException);
54242
54243 virtual FWObject& shallowDuplicate(
54244 const FWObject *obj, bool preserve_id = true) throw(FWException);
54245
54246 virtual bool cmp(const FWObject *obj, bool recursive=false) throw(FWException);
54247
54248 virtual void add(FWObject *obj);
54249
54250 virtual FWObject *getPointer();
54251 virtual int getPointerId();
54252
54253 void setPointer(FWObject *o);
54254 void setPointerId(int ref_id);
54255
54256 virtual void dump(std::ostream &f,bool recursive,bool brief,int offset=0) const;
54257
54258 virtual bool isPrimaryObject() const { return false; }
54259
54260
54261
54262
54263
54264
54265
54266 static FWObject* getObject(FWObject* obj);
54267
54268
54269
54270
54271
54272
54273
54274 int getPointerIdDirect() const { return int_ref; }
54275
54276 };
54277
54278 }
54279 # 32 "../fwbuilder/FWObjectReference.h" 2
54280
54281 namespace libfwbuilder
54282 {
54283
54284 class ObjectGroup;
54285
54286
54287
54288
54289 class FWObjectReference : public FWReference
54290 {
54291 public:
54292
54293 static const char *TYPENAME; virtual std::string getTypeName() const { return TYPENAME; } static bool isA(const FWObject *o) { return o && o->getTypeName()==TYPENAME; } static FWObjectReference* cast(FWObject *o) { return dynamic_cast<FWObjectReference*>(o); } static const FWObjectReference* constcast(const FWObject *o) { return dynamic_cast<const FWObjectReference*>(o); };
54294
54295 virtual void* dispatch(Dispatch* _d, void* _a1) {return _d->dispatch(this, _a1); } virtual void* dispatch(Dispatch* _d, const void* _a1) {return _d->dispatch(this, _a1); } virtual void* dispatch(Dispatch* _d, void* _a1) const {return _d->dispatch(this, _a1); } virtual void* dispatch(Dispatch* _d, const void* _a1) const {return _d->dispatch(this, _a1); } virtual const void* const_dispatch(Dispatch* _d, void* _a1) const {return _d->const_dispatch(this, _a1); } virtual const void* const_dispatch(Dispatch* _d, const void* _a1) const {return _d->const_dispatch(this, _a1); };
54296
54297 FWObjectReference();
54298
54299 void setPointer(FWObject *o);
54300 void setPointer(ObjectGroup *o);
54301
54302 };
54303
54304 }
54305 # 35 "Address.cpp" 2
54306 # 1 "../fwbuilder/FWObjectDatabase.h" 1
54307 # 28 "../fwbuilder/FWObjectDatabase.h"
54308 #define __FWOBJECTDATABASE_HH_FLAG__
54309
54310
54311
54312 # 1 "../fwbuilder/ThreadTools.h" 1
54313 # 28 "../fwbuilder/ThreadTools.h"
54314 #define __THREAD_TOOLS_H_FLAG__
54315
54316 # 1 "../fwbuilder/libfwbuilder-config.h" 1
54317
54318
54319
54320
54321
54322
54323 #define FWBUILDER_XML_VERSION "22"
54324
54325
54326
54327
54328
54329 #define RES_DIR "/usr/share/fwbuilder-5.0.1.3592"
54330 # 27 "../fwbuilder/libfwbuilder-config.h"
54331 #define HAVE_GETOPT_H 1
54332 # 44 "../fwbuilder/libfwbuilder-config.h"
54333 #define HAVE_XMLSAVEFORMATFILEENC 1
54334
54335 #define HAVE_LIBXSLT_XSLTCONFIG_H 1
54336
54337
54338 #define HAVE_STRTOK_R 1
54339
54340 #define WORDS_LITTLEENDIAN 1
54341 # 61 "../fwbuilder/libfwbuilder-config.h"
54342 #define SNPRINTF snprintf
54343 #define VSNPRINTF vsnprintf
54344 #define FS_SEPARATOR "/"
54345
54346
54347
54348
54349
54350
54351 #define FREEXMLBUFF(x) xmlFree((void*)(x))
54352 # 31 "../fwbuilder/ThreadTools.h" 2
54353
54354
54355
54356
54357
54358 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/queue" 1 3
54359 # 57 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/queue" 3
54360 #define _GLIBCXX_QUEUE 1
54361
54362
54363 # 60 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/queue" 3
54364
54365 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/deque" 1 3
54366 # 57 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/deque" 3
54367 #define _GLIBCXX_DEQUE 1
54368
54369
54370 # 60 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/deque" 3
54371
54372
54373
54374
54375
54376 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_deque.h" 1 3
54377 # 58 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_deque.h" 3
54378 #define _STL_DEQUE_H 1
54379
54380
54381
54382
54383
54384
54385 namespace std __attribute__ ((__visibility__ ("default"))) {
54386 # 82 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_deque.h" 3
54387 #define _GLIBCXX_DEQUE_BUF_SIZE 512
54388
54389
54390 inline size_t
54391 __deque_buf_size(size_t __size)
54392 { return (__size < 512
54393 ? size_t(512 / __size) : size_t(1)); }
54394 # 102 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_deque.h" 3
54395 template<typename _Tp, typename _Ref, typename _Ptr>
54396 struct _Deque_iterator
54397 {
54398 typedef _Deque_iterator<_Tp, _Tp&, _Tp*> iterator;
54399 typedef _Deque_iterator<_Tp, const _Tp&, const _Tp*> const_iterator;
54400
54401 static size_t _S_buffer_size()
54402 { return __deque_buf_size(sizeof(_Tp)); }
54403
54404 typedef std::random_access_iterator_tag iterator_category;
54405 typedef _Tp value_type;
54406 typedef _Ptr pointer;
54407 typedef _Ref reference;
54408 typedef size_t size_type;
54409 typedef ptrdiff_t difference_type;
54410 typedef _Tp** _Map_pointer;
54411 typedef _Deque_iterator _Self;
54412
54413 _Tp* _M_cur;
54414 _Tp* _M_first;
54415 _Tp* _M_last;
54416 _Map_pointer _M_node;
54417
54418 _Deque_iterator(_Tp* __x, _Map_pointer __y)
54419 : _M_cur(__x), _M_first(*__y),
54420 _M_last(*__y + _S_buffer_size()), _M_node(__y) { }
54421
54422 _Deque_iterator()
54423 : _M_cur(0), _M_first(0), _M_last(0), _M_node(0) { }
54424
54425 _Deque_iterator(const iterator& __x)
54426 : _M_cur(__x._M_cur), _M_first(__x._M_first),
54427 _M_last(__x._M_last), _M_node(__x._M_node) { }
54428
54429 reference
54430 operator*() const
54431 { return *_M_cur; }
54432
54433 pointer
54434 operator->() const
54435 { return _M_cur; }
54436
54437 _Self&
54438 operator++()
54439 {
54440 ++_M_cur;
54441 if (_M_cur == _M_last)
54442 {
54443 _M_set_node(_M_node + 1);
54444 _M_cur = _M_first;
54445 }
54446 return *this;
54447 }
54448
54449 _Self
54450 operator++(int)
54451 {
54452 _Self __tmp = *this;
54453 ++*this;
54454 return __tmp;
54455 }
54456
54457 _Self&
54458 operator--()
54459 {
54460 if (_M_cur == _M_first)
54461 {
54462 _M_set_node(_M_node - 1);
54463 _M_cur = _M_last;
54464 }
54465 --_M_cur;
54466 return *this;
54467 }
54468
54469 _Self
54470 operator--(int)
54471 {
54472 _Self __tmp = *this;
54473 --*this;
54474 return __tmp;
54475 }
54476
54477 _Self&
54478 operator+=(difference_type __n)
54479 {
54480 const difference_type __offset = __n + (_M_cur - _M_first);
54481 if (__offset >= 0 && __offset < difference_type(_S_buffer_size()))
54482 _M_cur += __n;
54483 else
54484 {
54485 const difference_type __node_offset =
54486 __offset > 0 ? __offset / difference_type(_S_buffer_size())
54487 : -difference_type((-__offset - 1)
54488 / _S_buffer_size()) - 1;
54489 _M_set_node(_M_node + __node_offset);
54490 _M_cur = _M_first + (__offset - __node_offset
54491 * difference_type(_S_buffer_size()));
54492 }
54493 return *this;
54494 }
54495
54496 _Self
54497 operator+(difference_type __n) const
54498 {
54499 _Self __tmp = *this;
54500 return __tmp += __n;
54501 }
54502
54503 _Self&
54504 operator-=(difference_type __n)
54505 { return *this += -__n; }
54506
54507 _Self
54508 operator-(difference_type __n) const
54509 {
54510 _Self __tmp = *this;
54511 return __tmp -= __n;
54512 }
54513
54514 reference
54515 operator[](difference_type __n) const
54516 { return *(*this + __n); }
54517
54518
54519
54520
54521
54522
54523 void
54524 _M_set_node(_Map_pointer __new_node)
54525 {
54526 _M_node = __new_node;
54527 _M_first = *__new_node;
54528 _M_last = _M_first + difference_type(_S_buffer_size());
54529 }
54530 };
54531
54532
54533
54534
54535 template<typename _Tp, typename _Ref, typename _Ptr>
54536 inline bool
54537 operator==(const _Deque_iterator<_Tp, _Ref, _Ptr>& __x,
54538 const _Deque_iterator<_Tp, _Ref, _Ptr>& __y)
54539 { return __x._M_cur == __y._M_cur; }
54540
54541 template<typename _Tp, typename _RefL, typename _PtrL,
54542 typename _RefR, typename _PtrR>
54543 inline bool
54544 operator==(const _Deque_iterator<_Tp, _RefL, _PtrL>& __x,
54545 const _Deque_iterator<_Tp, _RefR, _PtrR>& __y)
54546 { return __x._M_cur == __y._M_cur; }
54547
54548 template<typename _Tp, typename _Ref, typename _Ptr>
54549 inline bool
54550 operator!=(const _Deque_iterator<_Tp, _Ref, _Ptr>& __x,
54551 const _Deque_iterator<_Tp, _Ref, _Ptr>& __y)
54552 { return !(__x == __y); }
54553
54554 template<typename _Tp, typename _RefL, typename _PtrL,
54555 typename _RefR, typename _PtrR>
54556 inline bool
54557 operator!=(const _Deque_iterator<_Tp, _RefL, _PtrL>& __x,
54558 const _Deque_iterator<_Tp, _RefR, _PtrR>& __y)
54559 { return !(__x == __y); }
54560
54561 template<typename _Tp, typename _Ref, typename _Ptr>
54562 inline bool
54563 operator<(const _Deque_iterator<_Tp, _Ref, _Ptr>& __x,
54564 const _Deque_iterator<_Tp, _Ref, _Ptr>& __y)
54565 { return (__x._M_node == __y._M_node) ? (__x._M_cur < __y._M_cur)
54566 : (__x._M_node < __y._M_node); }
54567
54568 template<typename _Tp, typename _RefL, typename _PtrL,
54569 typename _RefR, typename _PtrR>
54570 inline bool
54571 operator<(const _Deque_iterator<_Tp, _RefL, _PtrL>& __x,
54572 const _Deque_iterator<_Tp, _RefR, _PtrR>& __y)
54573 { return (__x._M_node == __y._M_node) ? (__x._M_cur < __y._M_cur)
54574 : (__x._M_node < __y._M_node); }
54575
54576 template<typename _Tp, typename _Ref, typename _Ptr>
54577 inline bool
54578 operator>(const _Deque_iterator<_Tp, _Ref, _Ptr>& __x,
54579 const _Deque_iterator<_Tp, _Ref, _Ptr>& __y)
54580 { return __y < __x; }
54581
54582 template<typename _Tp, typename _RefL, typename _PtrL,
54583 typename _RefR, typename _PtrR>
54584 inline bool
54585 operator>(const _Deque_iterator<_Tp, _RefL, _PtrL>& __x,
54586 const _Deque_iterator<_Tp, _RefR, _PtrR>& __y)
54587 { return __y < __x; }
54588
54589 template<typename _Tp, typename _Ref, typename _Ptr>
54590 inline bool
54591 operator<=(const _Deque_iterator<_Tp, _Ref, _Ptr>& __x,
54592 const _Deque_iterator<_Tp, _Ref, _Ptr>& __y)
54593 { return !(__y < __x); }
54594
54595 template<typename _Tp, typename _RefL, typename _PtrL,
54596 typename _RefR, typename _PtrR>
54597 inline bool
54598 operator<=(const _Deque_iterator<_Tp, _RefL, _PtrL>& __x,
54599 const _Deque_iterator<_Tp, _RefR, _PtrR>& __y)
54600 { return !(__y < __x); }
54601
54602 template<typename _Tp, typename _Ref, typename _Ptr>
54603 inline bool
54604 operator>=(const _Deque_iterator<_Tp, _Ref, _Ptr>& __x,
54605 const _Deque_iterator<_Tp, _Ref, _Ptr>& __y)
54606 { return !(__x < __y); }
54607
54608 template<typename _Tp, typename _RefL, typename _PtrL,
54609 typename _RefR, typename _PtrR>
54610 inline bool
54611 operator>=(const _Deque_iterator<_Tp, _RefL, _PtrL>& __x,
54612 const _Deque_iterator<_Tp, _RefR, _PtrR>& __y)
54613 { return !(__x < __y); }
54614
54615
54616
54617
54618
54619 template<typename _Tp, typename _Ref, typename _Ptr>
54620 inline typename _Deque_iterator<_Tp, _Ref, _Ptr>::difference_type
54621 operator-(const _Deque_iterator<_Tp, _Ref, _Ptr>& __x,
54622 const _Deque_iterator<_Tp, _Ref, _Ptr>& __y)
54623 {
54624 return typename _Deque_iterator<_Tp, _Ref, _Ptr>::difference_type
54625 (_Deque_iterator<_Tp, _Ref, _Ptr>::_S_buffer_size())
54626 * (__x._M_node - __y._M_node - 1) + (__x._M_cur - __x._M_first)
54627 + (__y._M_last - __y._M_cur);
54628 }
54629
54630 template<typename _Tp, typename _RefL, typename _PtrL,
54631 typename _RefR, typename _PtrR>
54632 inline typename _Deque_iterator<_Tp, _RefL, _PtrL>::difference_type
54633 operator-(const _Deque_iterator<_Tp, _RefL, _PtrL>& __x,
54634 const _Deque_iterator<_Tp, _RefR, _PtrR>& __y)
54635 {
54636 return typename _Deque_iterator<_Tp, _RefL, _PtrL>::difference_type
54637 (_Deque_iterator<_Tp, _RefL, _PtrL>::_S_buffer_size())
54638 * (__x._M_node - __y._M_node - 1) + (__x._M_cur - __x._M_first)
54639 + (__y._M_last - __y._M_cur);
54640 }
54641
54642 template<typename _Tp, typename _Ref, typename _Ptr>
54643 inline _Deque_iterator<_Tp, _Ref, _Ptr>
54644 operator+(ptrdiff_t __n, const _Deque_iterator<_Tp, _Ref, _Ptr>& __x)
54645 { return __x + __n; }
54646
54647 template<typename _Tp>
54648 void
54649 fill(const _Deque_iterator<_Tp, _Tp&, _Tp*>&,
54650 const _Deque_iterator<_Tp, _Tp&, _Tp*>&, const _Tp&);
54651
54652 template<typename _Tp>
54653 _Deque_iterator<_Tp, _Tp&, _Tp*>
54654 copy(_Deque_iterator<_Tp, const _Tp&, const _Tp*>,
54655 _Deque_iterator<_Tp, const _Tp&, const _Tp*>,
54656 _Deque_iterator<_Tp, _Tp&, _Tp*>);
54657
54658 template<typename _Tp>
54659 inline _Deque_iterator<_Tp, _Tp&, _Tp*>
54660 copy(_Deque_iterator<_Tp, _Tp&, _Tp*> __first,
54661 _Deque_iterator<_Tp, _Tp&, _Tp*> __last,
54662 _Deque_iterator<_Tp, _Tp&, _Tp*> __result)
54663 { return std::copy(_Deque_iterator<_Tp, const _Tp&, const _Tp*>(__first),
54664 _Deque_iterator<_Tp, const _Tp&, const _Tp*>(__last),
54665 __result); }
54666
54667 template<typename _Tp>
54668 _Deque_iterator<_Tp, _Tp&, _Tp*>
54669 copy_backward(_Deque_iterator<_Tp, const _Tp&, const _Tp*>,
54670 _Deque_iterator<_Tp, const _Tp&, const _Tp*>,
54671 _Deque_iterator<_Tp, _Tp&, _Tp*>);
54672
54673 template<typename _Tp>
54674 inline _Deque_iterator<_Tp, _Tp&, _Tp*>
54675 copy_backward(_Deque_iterator<_Tp, _Tp&, _Tp*> __first,
54676 _Deque_iterator<_Tp, _Tp&, _Tp*> __last,
54677 _Deque_iterator<_Tp, _Tp&, _Tp*> __result)
54678 { return std::copy_backward(_Deque_iterator<_Tp,
54679 const _Tp&, const _Tp*>(__first),
54680 _Deque_iterator<_Tp,
54681 const _Tp&, const _Tp*>(__last),
54682 __result); }
54683 # 435 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_deque.h" 3
54684 template<typename _Tp, typename _Alloc>
54685 class _Deque_base
54686 {
54687 public:
54688 typedef _Alloc allocator_type;
54689
54690 allocator_type
54691 get_allocator() const
54692 { return allocator_type(_M_get_Tp_allocator()); }
54693
54694 typedef _Deque_iterator<_Tp, _Tp&, _Tp*> iterator;
54695 typedef _Deque_iterator<_Tp, const _Tp&, const _Tp*> const_iterator;
54696
54697 _Deque_base()
54698 : _M_impl()
54699 { _M_initialize_map(0); }
54700
54701 _Deque_base(const allocator_type& __a, size_t __num_elements)
54702 : _M_impl(__a)
54703 { _M_initialize_map(__num_elements); }
54704
54705 _Deque_base(const allocator_type& __a)
54706 : _M_impl(__a)
54707 { }
54708 # 475 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_deque.h" 3
54709 ~_Deque_base();
54710
54711 protected:
54712
54713
54714
54715 typedef typename _Alloc::template rebind<_Tp*>::other _Map_alloc_type;
54716
54717 typedef typename _Alloc::template rebind<_Tp>::other _Tp_alloc_type;
54718
54719 struct _Deque_impl
54720 : public _Tp_alloc_type
54721 {
54722 _Tp** _M_map;
54723 size_t _M_map_size;
54724 iterator _M_start;
54725 iterator _M_finish;
54726
54727 _Deque_impl()
54728 : _Tp_alloc_type(), _M_map(0), _M_map_size(0),
54729 _M_start(), _M_finish()
54730 { }
54731
54732 _Deque_impl(const _Tp_alloc_type& __a)
54733 : _Tp_alloc_type(__a), _M_map(0), _M_map_size(0),
54734 _M_start(), _M_finish()
54735 { }
54736 };
54737
54738 _Tp_alloc_type&
54739 _M_get_Tp_allocator()
54740 { return *static_cast<_Tp_alloc_type*>(&this->_M_impl); }
54741
54742 const _Tp_alloc_type&
54743 _M_get_Tp_allocator() const
54744 { return *static_cast<const _Tp_alloc_type*>(&this->_M_impl); }
54745
54746 _Map_alloc_type
54747 _M_get_map_allocator() const
54748 { return _Map_alloc_type(_M_get_Tp_allocator()); }
54749
54750 _Tp*
54751 _M_allocate_node()
54752 {
54753 return _M_impl._Tp_alloc_type::allocate(__deque_buf_size(sizeof(_Tp)));
54754 }
54755
54756 void
54757 _M_deallocate_node(_Tp* __p)
54758 {
54759 _M_impl._Tp_alloc_type::deallocate(__p, __deque_buf_size(sizeof(_Tp)));
54760 }
54761
54762 _Tp**
54763 _M_allocate_map(size_t __n)
54764 { return _M_get_map_allocator().allocate(__n); }
54765
54766 void
54767 _M_deallocate_map(_Tp** __p, size_t __n)
54768 { _M_get_map_allocator().deallocate(__p, __n); }
54769
54770 protected:
54771 void _M_initialize_map(size_t);
54772 void _M_create_nodes(_Tp** __nstart, _Tp** __nfinish);
54773 void _M_destroy_nodes(_Tp** __nstart, _Tp** __nfinish);
54774 enum { _S_initial_map_size = 8 };
54775
54776 _Deque_impl _M_impl;
54777 };
54778
54779 template<typename _Tp, typename _Alloc>
54780 _Deque_base<_Tp, _Alloc>::
54781 ~_Deque_base()
54782 {
54783 if (this->_M_impl._M_map)
54784 {
54785 _M_destroy_nodes(this->_M_impl._M_start._M_node,
54786 this->_M_impl._M_finish._M_node + 1);
54787 _M_deallocate_map(this->_M_impl._M_map, this->_M_impl._M_map_size);
54788 }
54789 }
54790 # 565 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_deque.h" 3
54791 template<typename _Tp, typename _Alloc>
54792 void
54793 _Deque_base<_Tp, _Alloc>::
54794 _M_initialize_map(size_t __num_elements)
54795 {
54796 const size_t __num_nodes = (__num_elements/ __deque_buf_size(sizeof(_Tp))
54797 + 1);
54798
54799 this->_M_impl._M_map_size = std::max((size_t) _S_initial_map_size,
54800 size_t(__num_nodes + 2));
54801 this->_M_impl._M_map = _M_allocate_map(this->_M_impl._M_map_size);
54802
54803
54804
54805
54806
54807
54808 _Tp** __nstart = (this->_M_impl._M_map
54809 + (this->_M_impl._M_map_size - __num_nodes) / 2);
54810 _Tp** __nfinish = __nstart + __num_nodes;
54811
54812 try
54813 { _M_create_nodes(__nstart, __nfinish); }
54814 catch(...)
54815 {
54816 _M_deallocate_map(this->_M_impl._M_map, this->_M_impl._M_map_size);
54817 this->_M_impl._M_map = 0;
54818 this->_M_impl._M_map_size = 0;
54819 throw;
54820 }
54821
54822 this->_M_impl._M_start._M_set_node(__nstart);
54823 this->_M_impl._M_finish._M_set_node(__nfinish - 1);
54824 this->_M_impl._M_start._M_cur = _M_impl._M_start._M_first;
54825 this->_M_impl._M_finish._M_cur = (this->_M_impl._M_finish._M_first
54826 + __num_elements
54827 % __deque_buf_size(sizeof(_Tp)));
54828 }
54829
54830 template<typename _Tp, typename _Alloc>
54831 void
54832 _Deque_base<_Tp, _Alloc>::
54833 _M_create_nodes(_Tp** __nstart, _Tp** __nfinish)
54834 {
54835 _Tp** __cur;
54836 try
54837 {
54838 for (__cur = __nstart; __cur < __nfinish; ++__cur)
54839 *__cur = this->_M_allocate_node();
54840 }
54841 catch(...)
54842 {
54843 _M_destroy_nodes(__nstart, __cur);
54844 throw;
54845 }
54846 }
54847
54848 template<typename _Tp, typename _Alloc>
54849 void
54850 _Deque_base<_Tp, _Alloc>::
54851 _M_destroy_nodes(_Tp** __nstart, _Tp** __nfinish)
54852 {
54853 for (_Tp** __n = __nstart; __n < __nfinish; ++__n)
54854 _M_deallocate_node(*__n);
54855 }
54856 # 712 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_deque.h" 3
54857 template<typename _Tp, typename _Alloc = std::allocator<_Tp> >
54858 class deque : protected _Deque_base<_Tp, _Alloc>
54859 {
54860
54861 typedef typename _Alloc::value_type _Alloc_value_type;
54862
54863
54864
54865 typedef _Deque_base<_Tp, _Alloc> _Base;
54866 typedef typename _Base::_Tp_alloc_type _Tp_alloc_type;
54867
54868 public:
54869 typedef _Tp value_type;
54870 typedef typename _Tp_alloc_type::pointer pointer;
54871 typedef typename _Tp_alloc_type::const_pointer const_pointer;
54872 typedef typename _Tp_alloc_type::reference reference;
54873 typedef typename _Tp_alloc_type::const_reference const_reference;
54874 typedef typename _Base::iterator iterator;
54875 typedef typename _Base::const_iterator const_iterator;
54876 typedef std::reverse_iterator<const_iterator> const_reverse_iterator;
54877 typedef std::reverse_iterator<iterator> reverse_iterator;
54878 typedef size_t size_type;
54879 typedef ptrdiff_t difference_type;
54880 typedef _Alloc allocator_type;
54881
54882 protected:
54883 typedef pointer* _Map_pointer;
54884
54885 static size_t _S_buffer_size()
54886 { return __deque_buf_size(sizeof(_Tp)); }
54887
54888
54889 using _Base::_M_initialize_map;
54890 using _Base::_M_create_nodes;
54891 using _Base::_M_destroy_nodes;
54892 using _Base::_M_allocate_node;
54893 using _Base::_M_deallocate_node;
54894 using _Base::_M_allocate_map;
54895 using _Base::_M_deallocate_map;
54896 using _Base::_M_get_Tp_allocator;
54897
54898
54899
54900
54901
54902 using _Base::_M_impl;
54903
54904 public:
54905
54906
54907
54908
54909
54910 deque()
54911 : _Base() { }
54912
54913
54914
54915
54916
54917 explicit
54918 deque(const allocator_type& __a)
54919 : _Base(__a, 0) { }
54920 # 784 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_deque.h" 3
54921 explicit
54922 deque(size_type __n, const value_type& __value = value_type(),
54923 const allocator_type& __a = allocator_type())
54924 : _Base(__a, __n)
54925 { _M_fill_initialize(__value); }
54926 # 797 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_deque.h" 3
54927 deque(const deque& __x)
54928 : _Base(__x._M_get_Tp_allocator(), __x.size())
54929 { std::__uninitialized_copy_a(__x.begin(), __x.end(),
54930 this->_M_impl._M_start,
54931 _M_get_Tp_allocator()); }
54932 # 849 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_deque.h" 3
54933 template<typename _InputIterator>
54934 deque(_InputIterator __first, _InputIterator __last,
54935 const allocator_type& __a = allocator_type())
54936 : _Base(__a)
54937 {
54938
54939 typedef typename std::__is_integer<_InputIterator>::__type _Integral;
54940 _M_initialize_dispatch(__first, __last, _Integral());
54941 }
54942
54943
54944
54945
54946
54947
54948 ~deque()
54949 { _M_destroy_data(begin(), end(), _M_get_Tp_allocator()); }
54950 # 874 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_deque.h" 3
54951 deque&
54952 operator=(const deque& __x);
54953 # 924 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_deque.h" 3
54954 void
54955 assign(size_type __n, const value_type& __val)
54956 { _M_fill_assign(__n, __val); }
54957 # 940 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_deque.h" 3
54958 template<typename _InputIterator>
54959 void
54960 assign(_InputIterator __first, _InputIterator __last)
54961 {
54962 typedef typename std::__is_integer<_InputIterator>::__type _Integral;
54963 _M_assign_dispatch(__first, __last, _Integral());
54964 }
54965 # 966 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_deque.h" 3
54966 allocator_type
54967 get_allocator() const
54968 { return _Base::get_allocator(); }
54969
54970
54971
54972
54973
54974
54975 iterator
54976 begin()
54977 { return this->_M_impl._M_start; }
54978
54979
54980
54981
54982
54983 const_iterator
54984 begin() const
54985 { return this->_M_impl._M_start; }
54986
54987
54988
54989
54990
54991
54992 iterator
54993 end()
54994 { return this->_M_impl._M_finish; }
54995
54996
54997
54998
54999
55000
55001 const_iterator
55002 end() const
55003 { return this->_M_impl._M_finish; }
55004
55005
55006
55007
55008
55009
55010 reverse_iterator
55011 rbegin()
55012 { return reverse_iterator(this->_M_impl._M_finish); }
55013
55014
55015
55016
55017
55018
55019 const_reverse_iterator
55020 rbegin() const
55021 { return const_reverse_iterator(this->_M_impl._M_finish); }
55022
55023
55024
55025
55026
55027
55028 reverse_iterator
55029 rend()
55030 { return reverse_iterator(this->_M_impl._M_start); }
55031
55032
55033
55034
55035
55036
55037 const_reverse_iterator
55038 rend() const
55039 { return const_reverse_iterator(this->_M_impl._M_start); }
55040 # 1080 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_deque.h" 3
55041 size_type
55042 size() const
55043 { return this->_M_impl._M_finish - this->_M_impl._M_start; }
55044
55045
55046 size_type
55047 max_size() const
55048 { return _M_get_Tp_allocator().max_size(); }
55049 # 1100 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_deque.h" 3
55050 void
55051 resize(size_type __new_size, value_type __x = value_type())
55052 {
55053 const size_type __len = size();
55054 if (__new_size < __len)
55055 _M_erase_at_end(this->_M_impl._M_start + difference_type(__new_size));
55056 else
55057 insert(this->_M_impl._M_finish, __new_size - __len, __x);
55058 }
55059 # 1121 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_deque.h" 3
55060 bool
55061 empty() const
55062 { return this->_M_impl._M_finish == this->_M_impl._M_start; }
55063 # 1137 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_deque.h" 3
55064 reference
55065 operator[](size_type __n)
55066 { return this->_M_impl._M_start[difference_type(__n)]; }
55067 # 1152 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_deque.h" 3
55068 const_reference
55069 operator[](size_type __n) const
55070 { return this->_M_impl._M_start[difference_type(__n)]; }
55071
55072 protected:
55073
55074 void
55075 _M_range_check(size_type __n) const
55076 {
55077 if (__n >= this->size())
55078 __throw_out_of_range(("deque::_M_range_check"));
55079 }
55080
55081 public:
55082 # 1177 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_deque.h" 3
55083 reference
55084 at(size_type __n)
55085 {
55086 _M_range_check(__n);
55087 return (*this)[__n];
55088 }
55089 # 1195 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_deque.h" 3
55090 const_reference
55091 at(size_type __n) const
55092 {
55093 _M_range_check(__n);
55094 return (*this)[__n];
55095 }
55096
55097
55098
55099
55100
55101 reference
55102 front()
55103 { return *begin(); }
55104
55105
55106
55107
55108
55109 const_reference
55110 front() const
55111 { return *begin(); }
55112
55113
55114
55115
55116
55117 reference
55118 back()
55119 {
55120 iterator __tmp = end();
55121 --__tmp;
55122 return *__tmp;
55123 }
55124
55125
55126
55127
55128
55129 const_reference
55130 back() const
55131 {
55132 const_iterator __tmp = end();
55133 --__tmp;
55134 return *__tmp;
55135 }
55136 # 1252 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_deque.h" 3
55137 void
55138 push_front(const value_type& __x)
55139 {
55140 if (this->_M_impl._M_start._M_cur != this->_M_impl._M_start._M_first)
55141 {
55142 this->_M_impl.construct(this->_M_impl._M_start._M_cur - 1, __x);
55143 --this->_M_impl._M_start._M_cur;
55144 }
55145 else
55146 _M_push_front_aux(__x);
55147 }
55148 # 1283 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_deque.h" 3
55149 void
55150 push_back(const value_type& __x)
55151 {
55152 if (this->_M_impl._M_finish._M_cur
55153 != this->_M_impl._M_finish._M_last - 1)
55154 {
55155 this->_M_impl.construct(this->_M_impl._M_finish._M_cur, __x);
55156 ++this->_M_impl._M_finish._M_cur;
55157 }
55158 else
55159 _M_push_back_aux(__x);
55160 }
55161 # 1314 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_deque.h" 3
55162 void
55163 pop_front()
55164 {
55165 if (this->_M_impl._M_start._M_cur
55166 != this->_M_impl._M_start._M_last - 1)
55167 {
55168 this->_M_impl.destroy(this->_M_impl._M_start._M_cur);
55169 ++this->_M_impl._M_start._M_cur;
55170 }
55171 else
55172 _M_pop_front_aux();
55173 }
55174 # 1335 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_deque.h" 3
55175 void
55176 pop_back()
55177 {
55178 if (this->_M_impl._M_finish._M_cur
55179 != this->_M_impl._M_finish._M_first)
55180 {
55181 --this->_M_impl._M_finish._M_cur;
55182 this->_M_impl.destroy(this->_M_impl._M_finish._M_cur);
55183 }
55184 else
55185 _M_pop_back_aux();
55186 }
55187 # 1372 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_deque.h" 3
55188 iterator
55189 insert(iterator __position, const value_type& __x);
55190 # 1412 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_deque.h" 3
55191 void
55192 insert(iterator __position, size_type __n, const value_type& __x)
55193 { _M_fill_insert(__position, __n, __x); }
55194 # 1426 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_deque.h" 3
55195 template<typename _InputIterator>
55196 void
55197 insert(iterator __position, _InputIterator __first,
55198 _InputIterator __last)
55199 {
55200
55201 typedef typename std::__is_integer<_InputIterator>::__type _Integral;
55202 _M_insert_dispatch(__position, __first, __last, _Integral());
55203 }
55204 # 1449 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_deque.h" 3
55205 iterator
55206 erase(iterator __position);
55207 # 1468 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_deque.h" 3
55208 iterator
55209 erase(iterator __first, iterator __last);
55210 # 1480 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_deque.h" 3
55211 void
55212 swap(deque& __x)
55213 {
55214 std::swap(this->_M_impl._M_start, __x._M_impl._M_start);
55215 std::swap(this->_M_impl._M_finish, __x._M_impl._M_finish);
55216 std::swap(this->_M_impl._M_map, __x._M_impl._M_map);
55217 std::swap(this->_M_impl._M_map_size, __x._M_impl._M_map_size);
55218
55219
55220
55221 std::__alloc_swap<_Tp_alloc_type>::_S_do_it(_M_get_Tp_allocator(),
55222 __x._M_get_Tp_allocator());
55223 }
55224
55225
55226
55227
55228
55229
55230
55231 void
55232 clear()
55233 { _M_erase_at_end(begin()); }
55234
55235 protected:
55236
55237
55238
55239
55240
55241
55242 template<typename _Integer>
55243 void
55244 _M_initialize_dispatch(_Integer __n, _Integer __x, __true_type)
55245 {
55246 _M_initialize_map(static_cast<size_type>(__n));
55247 _M_fill_initialize(__x);
55248 }
55249
55250
55251 template<typename _InputIterator>
55252 void
55253 _M_initialize_dispatch(_InputIterator __first, _InputIterator __last,
55254 __false_type)
55255 {
55256 typedef typename std::iterator_traits<_InputIterator>::
55257 iterator_category _IterCategory;
55258 _M_range_initialize(__first, __last, _IterCategory());
55259 }
55260 # 1542 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_deque.h" 3
55261 template<typename _InputIterator>
55262 void
55263 _M_range_initialize(_InputIterator __first, _InputIterator __last,
55264 std::input_iterator_tag);
55265
55266
55267 template<typename _ForwardIterator>
55268 void
55269 _M_range_initialize(_ForwardIterator __first, _ForwardIterator __last,
55270 std::forward_iterator_tag);
55271 # 1564 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_deque.h" 3
55272 void
55273 _M_fill_initialize(const value_type& __value);
55274 # 1574 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_deque.h" 3
55275 template<typename _Integer>
55276 void
55277 _M_assign_dispatch(_Integer __n, _Integer __val, __true_type)
55278 { _M_fill_assign(__n, __val); }
55279
55280
55281 template<typename _InputIterator>
55282 void
55283 _M_assign_dispatch(_InputIterator __first, _InputIterator __last,
55284 __false_type)
55285 {
55286 typedef typename std::iterator_traits<_InputIterator>::
55287 iterator_category _IterCategory;
55288 _M_assign_aux(__first, __last, _IterCategory());
55289 }
55290
55291
55292 template<typename _InputIterator>
55293 void
55294 _M_assign_aux(_InputIterator __first, _InputIterator __last,
55295 std::input_iterator_tag);
55296
55297
55298 template<typename _ForwardIterator>
55299 void
55300 _M_assign_aux(_ForwardIterator __first, _ForwardIterator __last,
55301 std::forward_iterator_tag)
55302 {
55303 const size_type __len = std::distance(__first, __last);
55304 if (__len > size())
55305 {
55306 _ForwardIterator __mid = __first;
55307 std::advance(__mid, size());
55308 std::copy(__first, __mid, begin());
55309 insert(end(), __mid, __last);
55310 }
55311 else
55312 _M_erase_at_end(std::copy(__first, __last, begin()));
55313 }
55314
55315
55316
55317 void
55318 _M_fill_assign(size_type __n, const value_type& __val)
55319 {
55320 if (__n > size())
55321 {
55322 std::fill(begin(), end(), __val);
55323 insert(end(), __n - size(), __val);
55324 }
55325 else
55326 {
55327 _M_erase_at_end(begin() + difference_type(__n));
55328 std::fill(begin(), end(), __val);
55329 }
55330 }
55331
55332
55333
55334
55335 void _M_push_back_aux(const value_type&);
55336
55337 void _M_push_front_aux(const value_type&);
55338 # 1645 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_deque.h" 3
55339 void _M_pop_back_aux();
55340
55341 void _M_pop_front_aux();
55342 # 1657 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_deque.h" 3
55343 template<typename _Integer>
55344 void
55345 _M_insert_dispatch(iterator __pos,
55346 _Integer __n, _Integer __x, __true_type)
55347 { _M_fill_insert(__pos, __n, __x); }
55348
55349
55350 template<typename _InputIterator>
55351 void
55352 _M_insert_dispatch(iterator __pos,
55353 _InputIterator __first, _InputIterator __last,
55354 __false_type)
55355 {
55356 typedef typename std::iterator_traits<_InputIterator>::
55357 iterator_category _IterCategory;
55358 _M_range_insert_aux(__pos, __first, __last, _IterCategory());
55359 }
55360
55361
55362 template<typename _InputIterator>
55363 void
55364 _M_range_insert_aux(iterator __pos, _InputIterator __first,
55365 _InputIterator __last, std::input_iterator_tag);
55366
55367
55368 template<typename _ForwardIterator>
55369 void
55370 _M_range_insert_aux(iterator __pos, _ForwardIterator __first,
55371 _ForwardIterator __last, std::forward_iterator_tag);
55372
55373
55374
55375
55376 void
55377 _M_fill_insert(iterator __pos, size_type __n, const value_type& __x);
55378
55379
55380
55381 iterator
55382 _M_insert_aux(iterator __pos, const value_type& __x);
55383
55384
55385
55386
55387
55388
55389
55390 void
55391 _M_insert_aux(iterator __pos, size_type __n, const value_type& __x);
55392
55393
55394 template<typename _ForwardIterator>
55395 void
55396 _M_insert_aux(iterator __pos,
55397 _ForwardIterator __first, _ForwardIterator __last,
55398 size_type __n);
55399
55400
55401
55402
55403 void
55404 _M_destroy_data_aux(iterator __first, iterator __last);
55405
55406
55407
55408 template<typename _Alloc1>
55409 void
55410 _M_destroy_data(iterator __first, iterator __last, const _Alloc1&)
55411 { _M_destroy_data_aux(__first, __last); }
55412
55413 void
55414 _M_destroy_data(iterator __first, iterator __last,
55415 const std::allocator<_Tp>&)
55416 {
55417 if (!__has_trivial_destructor(value_type))
55418 _M_destroy_data_aux(__first, __last);
55419 }
55420
55421
55422 void
55423 _M_erase_at_begin(iterator __pos)
55424 {
55425 _M_destroy_data(begin(), __pos, _M_get_Tp_allocator());
55426 _M_destroy_nodes(this->_M_impl._M_start._M_node, __pos._M_node);
55427 this->_M_impl._M_start = __pos;
55428 }
55429
55430
55431
55432 void
55433 _M_erase_at_end(iterator __pos)
55434 {
55435 _M_destroy_data(__pos, end(), _M_get_Tp_allocator());
55436 _M_destroy_nodes(__pos._M_node + 1,
55437 this->_M_impl._M_finish._M_node + 1);
55438 this->_M_impl._M_finish = __pos;
55439 }
55440
55441
55442
55443 iterator
55444 _M_reserve_elements_at_front(size_type __n)
55445 {
55446 const size_type __vacancies = this->_M_impl._M_start._M_cur
55447 - this->_M_impl._M_start._M_first;
55448 if (__n > __vacancies)
55449 _M_new_elements_at_front(__n - __vacancies);
55450 return this->_M_impl._M_start - difference_type(__n);
55451 }
55452
55453 iterator
55454 _M_reserve_elements_at_back(size_type __n)
55455 {
55456 const size_type __vacancies = (this->_M_impl._M_finish._M_last
55457 - this->_M_impl._M_finish._M_cur) - 1;
55458 if (__n > __vacancies)
55459 _M_new_elements_at_back(__n - __vacancies);
55460 return this->_M_impl._M_finish + difference_type(__n);
55461 }
55462
55463 void
55464 _M_new_elements_at_front(size_type __new_elements);
55465
55466 void
55467 _M_new_elements_at_back(size_type __new_elements);
55468 # 1793 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_deque.h" 3
55469 void
55470 _M_reserve_map_at_back(size_type __nodes_to_add = 1)
55471 {
55472 if (__nodes_to_add + 1 > this->_M_impl._M_map_size
55473 - (this->_M_impl._M_finish._M_node - this->_M_impl._M_map))
55474 _M_reallocate_map(__nodes_to_add, false);
55475 }
55476
55477 void
55478 _M_reserve_map_at_front(size_type __nodes_to_add = 1)
55479 {
55480 if (__nodes_to_add > size_type(this->_M_impl._M_start._M_node
55481 - this->_M_impl._M_map))
55482 _M_reallocate_map(__nodes_to_add, true);
55483 }
55484
55485 void
55486 _M_reallocate_map(size_type __nodes_to_add, bool __add_at_front);
55487
55488 };
55489 # 1825 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_deque.h" 3
55490 template<typename _Tp, typename _Alloc>
55491 inline bool
55492 operator==(const deque<_Tp, _Alloc>& __x,
55493 const deque<_Tp, _Alloc>& __y)
55494 { return __x.size() == __y.size()
55495 && std::equal(__x.begin(), __x.end(), __y.begin()); }
55496 # 1843 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_deque.h" 3
55497 template<typename _Tp, typename _Alloc>
55498 inline bool
55499 operator<(const deque<_Tp, _Alloc>& __x,
55500 const deque<_Tp, _Alloc>& __y)
55501 { return std::lexicographical_compare(__x.begin(), __x.end(),
55502 __y.begin(), __y.end()); }
55503
55504
55505 template<typename _Tp, typename _Alloc>
55506 inline bool
55507 operator!=(const deque<_Tp, _Alloc>& __x,
55508 const deque<_Tp, _Alloc>& __y)
55509 { return !(__x == __y); }
55510
55511
55512 template<typename _Tp, typename _Alloc>
55513 inline bool
55514 operator>(const deque<_Tp, _Alloc>& __x,
55515 const deque<_Tp, _Alloc>& __y)
55516 { return __y < __x; }
55517
55518
55519 template<typename _Tp, typename _Alloc>
55520 inline bool
55521 operator<=(const deque<_Tp, _Alloc>& __x,
55522 const deque<_Tp, _Alloc>& __y)
55523 { return !(__y < __x); }
55524
55525
55526 template<typename _Tp, typename _Alloc>
55527 inline bool
55528 operator>=(const deque<_Tp, _Alloc>& __x,
55529 const deque<_Tp, _Alloc>& __y)
55530 { return !(__x < __y); }
55531
55532
55533 template<typename _Tp, typename _Alloc>
55534 inline void
55535 swap(deque<_Tp,_Alloc>& __x, deque<_Tp,_Alloc>& __y)
55536 { __x.swap(__y); }
55537
55538 #undef _GLIBCXX_DEQUE_BUF_SIZE
55539
55540 }
55541 # 66 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/deque" 2 3
55542
55543
55544 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/deque.tcc" 1 3
55545 # 58 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/deque.tcc" 3
55546 #define _DEQUE_TCC 1
55547
55548 namespace std __attribute__ ((__visibility__ ("default"))) {
55549
55550 template <typename _Tp, typename _Alloc>
55551 deque<_Tp, _Alloc>&
55552 deque<_Tp, _Alloc>::
55553 operator=(const deque& __x)
55554 {
55555 const size_type __len = size();
55556 if (&__x != this)
55557 {
55558 if (__len >= __x.size())
55559 _M_erase_at_end(std::copy(__x.begin(), __x.end(),
55560 this->_M_impl._M_start));
55561 else
55562 {
55563 const_iterator __mid = __x.begin() + difference_type(__len);
55564 std::copy(__x.begin(), __mid, this->_M_impl._M_start);
55565 insert(this->_M_impl._M_finish, __mid, __x.end());
55566 }
55567 }
55568 return *this;
55569 }
55570 # 118 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/deque.tcc" 3
55571 template <typename _Tp, typename _Alloc>
55572 typename deque<_Tp, _Alloc>::iterator
55573 deque<_Tp, _Alloc>::
55574 insert(iterator __position, const value_type& __x)
55575 {
55576 if (__position._M_cur == this->_M_impl._M_start._M_cur)
55577 {
55578 push_front(__x);
55579 return this->_M_impl._M_start;
55580 }
55581 else if (__position._M_cur == this->_M_impl._M_finish._M_cur)
55582 {
55583 push_back(__x);
55584 iterator __tmp = this->_M_impl._M_finish;
55585 --__tmp;
55586 return __tmp;
55587 }
55588 else
55589 return _M_insert_aux(__position, __x);
55590 }
55591 # 163 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/deque.tcc" 3
55592 template <typename _Tp, typename _Alloc>
55593 typename deque<_Tp, _Alloc>::iterator
55594 deque<_Tp, _Alloc>::
55595 erase(iterator __position)
55596 {
55597 iterator __next = __position;
55598 ++__next;
55599 const difference_type __index = __position - begin();
55600 if (static_cast<size_type>(__index) < (size() >> 1))
55601 {
55602 if (__position != begin())
55603 std::copy_backward(begin(), __position, __next);
55604 pop_front();
55605 }
55606 else
55607 {
55608 if (__next != end())
55609 std::copy(__next, end(), __position);
55610 pop_back();
55611 }
55612 return begin() + __index;
55613 }
55614
55615 template <typename _Tp, typename _Alloc>
55616 typename deque<_Tp, _Alloc>::iterator
55617 deque<_Tp, _Alloc>::
55618 erase(iterator __first, iterator __last)
55619 {
55620 if (__first == begin() && __last == end())
55621 {
55622 clear();
55623 return end();
55624 }
55625 else
55626 {
55627 const difference_type __n = __last - __first;
55628 const difference_type __elems_before = __first - begin();
55629 if (static_cast<size_type>(__elems_before) <= (size() - __n) / 2)
55630 {
55631 if (__first != begin())
55632 std::copy_backward(begin(), __first, __last);
55633 _M_erase_at_begin(begin() + __n);
55634 }
55635 else
55636 {
55637 if (__last != end())
55638 std::copy(__last, end(), __first);
55639 _M_erase_at_end(end() - __n);
55640 }
55641 return begin() + __elems_before;
55642 }
55643 }
55644
55645 template <typename _Tp, class _Alloc>
55646 template <typename _InputIterator>
55647 void
55648 deque<_Tp, _Alloc>::
55649 _M_assign_aux(_InputIterator __first, _InputIterator __last,
55650 std::input_iterator_tag)
55651 {
55652 iterator __cur = begin();
55653 for (; __first != __last && __cur != end(); ++__cur, ++__first)
55654 *__cur = *__first;
55655 if (__first == __last)
55656 _M_erase_at_end(__cur);
55657 else
55658 insert(end(), __first, __last);
55659 }
55660
55661 template <typename _Tp, typename _Alloc>
55662 void
55663 deque<_Tp, _Alloc>::
55664 _M_fill_insert(iterator __pos, size_type __n, const value_type& __x)
55665 {
55666 if (__pos._M_cur == this->_M_impl._M_start._M_cur)
55667 {
55668 iterator __new_start = _M_reserve_elements_at_front(__n);
55669 try
55670 {
55671 std::__uninitialized_fill_a(__new_start, this->_M_impl._M_start,
55672 __x, _M_get_Tp_allocator());
55673 this->_M_impl._M_start = __new_start;
55674 }
55675 catch(...)
55676 {
55677 _M_destroy_nodes(__new_start._M_node,
55678 this->_M_impl._M_start._M_node);
55679 throw;
55680 }
55681 }
55682 else if (__pos._M_cur == this->_M_impl._M_finish._M_cur)
55683 {
55684 iterator __new_finish = _M_reserve_elements_at_back(__n);
55685 try
55686 {
55687 std::__uninitialized_fill_a(this->_M_impl._M_finish,
55688 __new_finish, __x,
55689 _M_get_Tp_allocator());
55690 this->_M_impl._M_finish = __new_finish;
55691 }
55692 catch(...)
55693 {
55694 _M_destroy_nodes(this->_M_impl._M_finish._M_node + 1,
55695 __new_finish._M_node + 1);
55696 throw;
55697 }
55698 }
55699 else
55700 _M_insert_aux(__pos, __n, __x);
55701 }
55702
55703 template <typename _Tp, typename _Alloc>
55704 void
55705 deque<_Tp, _Alloc>::
55706 _M_fill_initialize(const value_type& __value)
55707 {
55708 _Map_pointer __cur;
55709 try
55710 {
55711 for (__cur = this->_M_impl._M_start._M_node;
55712 __cur < this->_M_impl._M_finish._M_node;
55713 ++__cur)
55714 std::__uninitialized_fill_a(*__cur, *__cur + _S_buffer_size(),
55715 __value, _M_get_Tp_allocator());
55716 std::__uninitialized_fill_a(this->_M_impl._M_finish._M_first,
55717 this->_M_impl._M_finish._M_cur,
55718 __value, _M_get_Tp_allocator());
55719 }
55720 catch(...)
55721 {
55722 std::_Destroy(this->_M_impl._M_start, iterator(*__cur, __cur),
55723 _M_get_Tp_allocator());
55724 throw;
55725 }
55726 }
55727
55728 template <typename _Tp, typename _Alloc>
55729 template <typename _InputIterator>
55730 void
55731 deque<_Tp, _Alloc>::
55732 _M_range_initialize(_InputIterator __first, _InputIterator __last,
55733 std::input_iterator_tag)
55734 {
55735 this->_M_initialize_map(0);
55736 try
55737 {
55738 for (; __first != __last; ++__first)
55739 push_back(*__first);
55740 }
55741 catch(...)
55742 {
55743 clear();
55744 throw;
55745 }
55746 }
55747
55748 template <typename _Tp, typename _Alloc>
55749 template <typename _ForwardIterator>
55750 void
55751 deque<_Tp, _Alloc>::
55752 _M_range_initialize(_ForwardIterator __first, _ForwardIterator __last,
55753 std::forward_iterator_tag)
55754 {
55755 const size_type __n = std::distance(__first, __last);
55756 this->_M_initialize_map(__n);
55757
55758 _Map_pointer __cur_node;
55759 try
55760 {
55761 for (__cur_node = this->_M_impl._M_start._M_node;
55762 __cur_node < this->_M_impl._M_finish._M_node;
55763 ++__cur_node)
55764 {
55765 _ForwardIterator __mid = __first;
55766 std::advance(__mid, _S_buffer_size());
55767 std::__uninitialized_copy_a(__first, __mid, *__cur_node,
55768 _M_get_Tp_allocator());
55769 __first = __mid;
55770 }
55771 std::__uninitialized_copy_a(__first, __last,
55772 this->_M_impl._M_finish._M_first,
55773 _M_get_Tp_allocator());
55774 }
55775 catch(...)
55776 {
55777 std::_Destroy(this->_M_impl._M_start,
55778 iterator(*__cur_node, __cur_node),
55779 _M_get_Tp_allocator());
55780 throw;
55781 }
55782 }
55783
55784
55785 template<typename _Tp, typename _Alloc>
55786
55787
55788
55789
55790
55791
55792 void
55793 deque<_Tp, _Alloc>::
55794 _M_push_back_aux(const value_type& __t)
55795
55796 {
55797 _M_reserve_map_at_back();
55798 *(this->_M_impl._M_finish._M_node + 1) = this->_M_allocate_node();
55799 try
55800 {
55801
55802
55803
55804
55805 this->_M_impl.construct(this->_M_impl._M_finish._M_cur, __t);
55806
55807 this->_M_impl._M_finish._M_set_node(this->_M_impl._M_finish._M_node
55808 + 1);
55809 this->_M_impl._M_finish._M_cur = this->_M_impl._M_finish._M_first;
55810 }
55811 catch(...)
55812 {
55813 _M_deallocate_node(*(this->_M_impl._M_finish._M_node + 1));
55814 throw;
55815 }
55816 }
55817
55818
55819 template<typename _Tp, typename _Alloc>
55820
55821
55822
55823
55824
55825
55826 void
55827 deque<_Tp, _Alloc>::
55828 _M_push_front_aux(const value_type& __t)
55829
55830 {
55831 _M_reserve_map_at_front();
55832 *(this->_M_impl._M_start._M_node - 1) = this->_M_allocate_node();
55833 try
55834 {
55835 this->_M_impl._M_start._M_set_node(this->_M_impl._M_start._M_node
55836 - 1);
55837 this->_M_impl._M_start._M_cur = this->_M_impl._M_start._M_last - 1;
55838
55839
55840
55841
55842 this->_M_impl.construct(this->_M_impl._M_start._M_cur, __t);
55843
55844 }
55845 catch(...)
55846 {
55847 ++this->_M_impl._M_start;
55848 _M_deallocate_node(*(this->_M_impl._M_start._M_node - 1));
55849 throw;
55850 }
55851 }
55852
55853
55854 template <typename _Tp, typename _Alloc>
55855 void deque<_Tp, _Alloc>::
55856 _M_pop_back_aux()
55857 {
55858 _M_deallocate_node(this->_M_impl._M_finish._M_first);
55859 this->_M_impl._M_finish._M_set_node(this->_M_impl._M_finish._M_node - 1);
55860 this->_M_impl._M_finish._M_cur = this->_M_impl._M_finish._M_last - 1;
55861 this->_M_impl.destroy(this->_M_impl._M_finish._M_cur);
55862 }
55863
55864
55865
55866
55867
55868
55869 template <typename _Tp, typename _Alloc>
55870 void deque<_Tp, _Alloc>::
55871 _M_pop_front_aux()
55872 {
55873 this->_M_impl.destroy(this->_M_impl._M_start._M_cur);
55874 _M_deallocate_node(this->_M_impl._M_start._M_first);
55875 this->_M_impl._M_start._M_set_node(this->_M_impl._M_start._M_node + 1);
55876 this->_M_impl._M_start._M_cur = this->_M_impl._M_start._M_first;
55877 }
55878
55879 template <typename _Tp, typename _Alloc>
55880 template <typename _InputIterator>
55881 void
55882 deque<_Tp, _Alloc>::
55883 _M_range_insert_aux(iterator __pos,
55884 _InputIterator __first, _InputIterator __last,
55885 std::input_iterator_tag)
55886 { std::copy(__first, __last, std::inserter(*this, __pos)); }
55887
55888 template <typename _Tp, typename _Alloc>
55889 template <typename _ForwardIterator>
55890 void
55891 deque<_Tp, _Alloc>::
55892 _M_range_insert_aux(iterator __pos,
55893 _ForwardIterator __first, _ForwardIterator __last,
55894 std::forward_iterator_tag)
55895 {
55896 const size_type __n = std::distance(__first, __last);
55897 if (__pos._M_cur == this->_M_impl._M_start._M_cur)
55898 {
55899 iterator __new_start = _M_reserve_elements_at_front(__n);
55900 try
55901 {
55902 std::__uninitialized_copy_a(__first, __last, __new_start,
55903 _M_get_Tp_allocator());
55904 this->_M_impl._M_start = __new_start;
55905 }
55906 catch(...)
55907 {
55908 _M_destroy_nodes(__new_start._M_node,
55909 this->_M_impl._M_start._M_node);
55910 throw;
55911 }
55912 }
55913 else if (__pos._M_cur == this->_M_impl._M_finish._M_cur)
55914 {
55915 iterator __new_finish = _M_reserve_elements_at_back(__n);
55916 try
55917 {
55918 std::__uninitialized_copy_a(__first, __last,
55919 this->_M_impl._M_finish,
55920 _M_get_Tp_allocator());
55921 this->_M_impl._M_finish = __new_finish;
55922 }
55923 catch(...)
55924 {
55925 _M_destroy_nodes(this->_M_impl._M_finish._M_node + 1,
55926 __new_finish._M_node + 1);
55927 throw;
55928 }
55929 }
55930 else
55931 _M_insert_aux(__pos, __first, __last, __n);
55932 }
55933
55934 template<typename _Tp, typename _Alloc>
55935 # 514 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/deque.tcc" 3
55936 typename deque<_Tp, _Alloc>::iterator
55937 deque<_Tp, _Alloc>::
55938 _M_insert_aux(iterator __pos, const value_type& __x)
55939 {
55940 value_type __x_copy = __x;
55941
55942 difference_type __index = __pos - this->_M_impl._M_start;
55943 if (static_cast<size_type>(__index) < size() / 2)
55944 {
55945 push_front((front()));
55946 iterator __front1 = this->_M_impl._M_start;
55947 ++__front1;
55948 iterator __front2 = __front1;
55949 ++__front2;
55950 __pos = this->_M_impl._M_start + __index;
55951 iterator __pos1 = __pos;
55952 ++__pos1;
55953 std::copy(__front2, __pos1, __front1);
55954 }
55955 else
55956 {
55957 push_back((back()));
55958 iterator __back1 = this->_M_impl._M_finish;
55959 --__back1;
55960 iterator __back2 = __back1;
55961 --__back2;
55962 __pos = this->_M_impl._M_start + __index;
55963 std::copy_backward(__pos, __back2, __back1);
55964 }
55965 *__pos = (__x_copy);
55966 return __pos;
55967 }
55968
55969 template <typename _Tp, typename _Alloc>
55970 void
55971 deque<_Tp, _Alloc>::
55972 _M_insert_aux(iterator __pos, size_type __n, const value_type& __x)
55973 {
55974 const difference_type __elems_before = __pos - this->_M_impl._M_start;
55975 const size_type __length = this->size();
55976 value_type __x_copy = __x;
55977 if (__elems_before < difference_type(__length / 2))
55978 {
55979 iterator __new_start = _M_reserve_elements_at_front(__n);
55980 iterator __old_start = this->_M_impl._M_start;
55981 __pos = this->_M_impl._M_start + __elems_before;
55982 try
55983 {
55984 if (__elems_before >= difference_type(__n))
55985 {
55986 iterator __start_n = (this->_M_impl._M_start
55987 + difference_type(__n));
55988 std::__uninitialized_move_a(this->_M_impl._M_start,
55989 __start_n, __new_start,
55990 _M_get_Tp_allocator());
55991 this->_M_impl._M_start = __new_start;
55992 std::copy(__start_n, __pos, __old_start);
55993 std::fill(__pos - difference_type(__n), __pos, __x_copy);
55994 }
55995 else
55996 {
55997 std::__uninitialized_move_fill(this->_M_impl._M_start,
55998 __pos, __new_start,
55999 this->_M_impl._M_start,
56000 __x_copy,
56001 _M_get_Tp_allocator());
56002 this->_M_impl._M_start = __new_start;
56003 std::fill(__old_start, __pos, __x_copy);
56004 }
56005 }
56006 catch(...)
56007 {
56008 _M_destroy_nodes(__new_start._M_node,
56009 this->_M_impl._M_start._M_node);
56010 throw;
56011 }
56012 }
56013 else
56014 {
56015 iterator __new_finish = _M_reserve_elements_at_back(__n);
56016 iterator __old_finish = this->_M_impl._M_finish;
56017 const difference_type __elems_after =
56018 difference_type(__length) - __elems_before;
56019 __pos = this->_M_impl._M_finish - __elems_after;
56020 try
56021 {
56022 if (__elems_after > difference_type(__n))
56023 {
56024 iterator __finish_n = (this->_M_impl._M_finish
56025 - difference_type(__n));
56026 std::__uninitialized_move_a(__finish_n,
56027 this->_M_impl._M_finish,
56028 this->_M_impl._M_finish,
56029 _M_get_Tp_allocator());
56030 this->_M_impl._M_finish = __new_finish;
56031 std::copy_backward(__pos, __finish_n, __old_finish);
56032 std::fill(__pos, __pos + difference_type(__n), __x_copy);
56033 }
56034 else
56035 {
56036 std::__uninitialized_fill_move(this->_M_impl._M_finish,
56037 __pos + difference_type(__n),
56038 __x_copy, __pos,
56039 this->_M_impl._M_finish,
56040 _M_get_Tp_allocator());
56041 this->_M_impl._M_finish = __new_finish;
56042 std::fill(__pos, __old_finish, __x_copy);
56043 }
56044 }
56045 catch(...)
56046 {
56047 _M_destroy_nodes(this->_M_impl._M_finish._M_node + 1,
56048 __new_finish._M_node + 1);
56049 throw;
56050 }
56051 }
56052 }
56053
56054 template <typename _Tp, typename _Alloc>
56055 template <typename _ForwardIterator>
56056 void
56057 deque<_Tp, _Alloc>::
56058 _M_insert_aux(iterator __pos,
56059 _ForwardIterator __first, _ForwardIterator __last,
56060 size_type __n)
56061 {
56062 const difference_type __elemsbefore = __pos - this->_M_impl._M_start;
56063 const size_type __length = size();
56064 if (static_cast<size_type>(__elemsbefore) < __length / 2)
56065 {
56066 iterator __new_start = _M_reserve_elements_at_front(__n);
56067 iterator __old_start = this->_M_impl._M_start;
56068 __pos = this->_M_impl._M_start + __elemsbefore;
56069 try
56070 {
56071 if (__elemsbefore >= difference_type(__n))
56072 {
56073 iterator __start_n = (this->_M_impl._M_start
56074 + difference_type(__n));
56075 std::__uninitialized_move_a(this->_M_impl._M_start,
56076 __start_n, __new_start,
56077 _M_get_Tp_allocator());
56078 this->_M_impl._M_start = __new_start;
56079 std::copy(__start_n, __pos, __old_start);
56080 std::copy(__first, __last, __pos - difference_type(__n));
56081 }
56082 else
56083 {
56084 _ForwardIterator __mid = __first;
56085 std::advance(__mid, difference_type(__n) - __elemsbefore);
56086 std::__uninitialized_move_copy(this->_M_impl._M_start,
56087 __pos, __first, __mid,
56088 __new_start,
56089 _M_get_Tp_allocator());
56090 this->_M_impl._M_start = __new_start;
56091 std::copy(__mid, __last, __old_start);
56092 }
56093 }
56094 catch(...)
56095 {
56096 _M_destroy_nodes(__new_start._M_node,
56097 this->_M_impl._M_start._M_node);
56098 throw;
56099 }
56100 }
56101 else
56102 {
56103 iterator __new_finish = _M_reserve_elements_at_back(__n);
56104 iterator __old_finish = this->_M_impl._M_finish;
56105 const difference_type __elemsafter =
56106 difference_type(__length) - __elemsbefore;
56107 __pos = this->_M_impl._M_finish - __elemsafter;
56108 try
56109 {
56110 if (__elemsafter > difference_type(__n))
56111 {
56112 iterator __finish_n = (this->_M_impl._M_finish
56113 - difference_type(__n));
56114 std::__uninitialized_move_a(__finish_n,
56115 this->_M_impl._M_finish,
56116 this->_M_impl._M_finish,
56117 _M_get_Tp_allocator());
56118 this->_M_impl._M_finish = __new_finish;
56119 std::copy_backward(__pos, __finish_n, __old_finish);
56120 std::copy(__first, __last, __pos);
56121 }
56122 else
56123 {
56124 _ForwardIterator __mid = __first;
56125 std::advance(__mid, __elemsafter);
56126 std::__uninitialized_copy_move(__mid, __last, __pos,
56127 this->_M_impl._M_finish,
56128 this->_M_impl._M_finish,
56129 _M_get_Tp_allocator());
56130 this->_M_impl._M_finish = __new_finish;
56131 std::copy(__first, __mid, __pos);
56132 }
56133 }
56134 catch(...)
56135 {
56136 _M_destroy_nodes(this->_M_impl._M_finish._M_node + 1,
56137 __new_finish._M_node + 1);
56138 throw;
56139 }
56140 }
56141 }
56142
56143 template<typename _Tp, typename _Alloc>
56144 void
56145 deque<_Tp, _Alloc>::
56146 _M_destroy_data_aux(iterator __first, iterator __last)
56147 {
56148 for (_Map_pointer __node = __first._M_node + 1;
56149 __node < __last._M_node; ++__node)
56150 std::_Destroy(*__node, *__node + _S_buffer_size(),
56151 _M_get_Tp_allocator());
56152
56153 if (__first._M_node != __last._M_node)
56154 {
56155 std::_Destroy(__first._M_cur, __first._M_last,
56156 _M_get_Tp_allocator());
56157 std::_Destroy(__last._M_first, __last._M_cur,
56158 _M_get_Tp_allocator());
56159 }
56160 else
56161 std::_Destroy(__first._M_cur, __last._M_cur,
56162 _M_get_Tp_allocator());
56163 }
56164
56165 template <typename _Tp, typename _Alloc>
56166 void
56167 deque<_Tp, _Alloc>::
56168 _M_new_elements_at_front(size_type __new_elems)
56169 {
56170 if (this->max_size() - this->size() < __new_elems)
56171 __throw_length_error(("deque::_M_new_elements_at_front"));
56172
56173 const size_type __new_nodes = ((__new_elems + _S_buffer_size() - 1)
56174 / _S_buffer_size());
56175 _M_reserve_map_at_front(__new_nodes);
56176 size_type __i;
56177 try
56178 {
56179 for (__i = 1; __i <= __new_nodes; ++__i)
56180 *(this->_M_impl._M_start._M_node - __i) = this->_M_allocate_node();
56181 }
56182 catch(...)
56183 {
56184 for (size_type __j = 1; __j < __i; ++__j)
56185 _M_deallocate_node(*(this->_M_impl._M_start._M_node - __j));
56186 throw;
56187 }
56188 }
56189
56190 template <typename _Tp, typename _Alloc>
56191 void
56192 deque<_Tp, _Alloc>::
56193 _M_new_elements_at_back(size_type __new_elems)
56194 {
56195 if (this->max_size() - this->size() < __new_elems)
56196 __throw_length_error(("deque::_M_new_elements_at_back"));
56197
56198 const size_type __new_nodes = ((__new_elems + _S_buffer_size() - 1)
56199 / _S_buffer_size());
56200 _M_reserve_map_at_back(__new_nodes);
56201 size_type __i;
56202 try
56203 {
56204 for (__i = 1; __i <= __new_nodes; ++__i)
56205 *(this->_M_impl._M_finish._M_node + __i) = this->_M_allocate_node();
56206 }
56207 catch(...)
56208 {
56209 for (size_type __j = 1; __j < __i; ++__j)
56210 _M_deallocate_node(*(this->_M_impl._M_finish._M_node + __j));
56211 throw;
56212 }
56213 }
56214
56215 template <typename _Tp, typename _Alloc>
56216 void
56217 deque<_Tp, _Alloc>::
56218 _M_reallocate_map(size_type __nodes_to_add, bool __add_at_front)
56219 {
56220 const size_type __old_num_nodes
56221 = this->_M_impl._M_finish._M_node - this->_M_impl._M_start._M_node + 1;
56222 const size_type __new_num_nodes = __old_num_nodes + __nodes_to_add;
56223
56224 _Map_pointer __new_nstart;
56225 if (this->_M_impl._M_map_size > 2 * __new_num_nodes)
56226 {
56227 __new_nstart = this->_M_impl._M_map + (this->_M_impl._M_map_size
56228 - __new_num_nodes) / 2
56229 + (__add_at_front ? __nodes_to_add : 0);
56230 if (__new_nstart < this->_M_impl._M_start._M_node)
56231 std::copy(this->_M_impl._M_start._M_node,
56232 this->_M_impl._M_finish._M_node + 1,
56233 __new_nstart);
56234 else
56235 std::copy_backward(this->_M_impl._M_start._M_node,
56236 this->_M_impl._M_finish._M_node + 1,
56237 __new_nstart + __old_num_nodes);
56238 }
56239 else
56240 {
56241 size_type __new_map_size = this->_M_impl._M_map_size
56242 + std::max(this->_M_impl._M_map_size,
56243 __nodes_to_add) + 2;
56244
56245 _Map_pointer __new_map = this->_M_allocate_map(__new_map_size);
56246 __new_nstart = __new_map + (__new_map_size - __new_num_nodes) / 2
56247 + (__add_at_front ? __nodes_to_add : 0);
56248 std::copy(this->_M_impl._M_start._M_node,
56249 this->_M_impl._M_finish._M_node + 1,
56250 __new_nstart);
56251 _M_deallocate_map(this->_M_impl._M_map, this->_M_impl._M_map_size);
56252
56253 this->_M_impl._M_map = __new_map;
56254 this->_M_impl._M_map_size = __new_map_size;
56255 }
56256
56257 this->_M_impl._M_start._M_set_node(__new_nstart);
56258 this->_M_impl._M_finish._M_set_node(__new_nstart + __old_num_nodes - 1);
56259 }
56260
56261
56262
56263 template<typename _Tp>
56264 void
56265 fill(const _Deque_iterator<_Tp, _Tp&, _Tp*>& __first,
56266 const _Deque_iterator<_Tp, _Tp&, _Tp*>& __last, const _Tp& __value)
56267 {
56268 typedef typename _Deque_iterator<_Tp, _Tp&, _Tp*>::_Self _Self;
56269
56270 for (typename _Self::_Map_pointer __node = __first._M_node + 1;
56271 __node < __last._M_node; ++__node)
56272 std::fill(*__node, *__node + _Self::_S_buffer_size(), __value);
56273
56274 if (__first._M_node != __last._M_node)
56275 {
56276 std::fill(__first._M_cur, __first._M_last, __value);
56277 std::fill(__last._M_first, __last._M_cur, __value);
56278 }
56279 else
56280 std::fill(__first._M_cur, __last._M_cur, __value);
56281 }
56282
56283 template<typename _Tp>
56284 _Deque_iterator<_Tp, _Tp&, _Tp*>
56285 copy(_Deque_iterator<_Tp, const _Tp&, const _Tp*> __first,
56286 _Deque_iterator<_Tp, const _Tp&, const _Tp*> __last,
56287 _Deque_iterator<_Tp, _Tp&, _Tp*> __result)
56288 {
56289 typedef typename _Deque_iterator<_Tp, _Tp&, _Tp*>::_Self _Self;
56290 typedef typename _Self::difference_type difference_type;
56291
56292 difference_type __len = __last - __first;
56293 while (__len > 0)
56294 {
56295 const difference_type __clen
56296 = std::min(__len, std::min(__first._M_last - __first._M_cur,
56297 __result._M_last - __result._M_cur));
56298 std::copy(__first._M_cur, __first._M_cur + __clen, __result._M_cur);
56299 __first += __clen;
56300 __result += __clen;
56301 __len -= __clen;
56302 }
56303 return __result;
56304 }
56305
56306 template<typename _Tp>
56307 _Deque_iterator<_Tp, _Tp&, _Tp*>
56308 copy_backward(_Deque_iterator<_Tp, const _Tp&, const _Tp*> __first,
56309 _Deque_iterator<_Tp, const _Tp&, const _Tp*> __last,
56310 _Deque_iterator<_Tp, _Tp&, _Tp*> __result)
56311 {
56312 typedef typename _Deque_iterator<_Tp, _Tp&, _Tp*>::_Self _Self;
56313 typedef typename _Self::difference_type difference_type;
56314
56315 difference_type __len = __last - __first;
56316 while (__len > 0)
56317 {
56318 difference_type __llen = __last._M_cur - __last._M_first;
56319 _Tp* __lend = __last._M_cur;
56320
56321 difference_type __rlen = __result._M_cur - __result._M_first;
56322 _Tp* __rend = __result._M_cur;
56323
56324 if (!__llen)
56325 {
56326 __llen = _Self::_S_buffer_size();
56327 __lend = *(__last._M_node - 1) + __llen;
56328 }
56329 if (!__rlen)
56330 {
56331 __rlen = _Self::_S_buffer_size();
56332 __rend = *(__result._M_node - 1) + __rlen;
56333 }
56334
56335 const difference_type __clen = std::min(__len,
56336 std::min(__llen, __rlen));
56337 std::copy_backward(__lend - __clen, __lend, __rend);
56338 __last -= __clen;
56339 __result -= __clen;
56340 __len -= __clen;
56341 }
56342 return __result;
56343 }
56344 # 987 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/deque.tcc" 3
56345 }
56346 # 69 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/deque" 2 3
56347 # 62 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/queue" 2 3
56348
56349 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_heap.h" 1 3
56350 # 57 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_heap.h" 3
56351 #define _STL_HEAP_H 1
56352
56353
56354
56355
56356 namespace std __attribute__ ((__visibility__ ("default"))) {
56357
56358
56359
56360
56361
56362
56363 template<typename _RandomAccessIterator, typename _Distance>
56364 _Distance
56365 __is_heap_until(_RandomAccessIterator __first, _Distance __n)
56366 {
56367 _Distance __parent = 0;
56368 for (_Distance __child = 1; __child < __n; ++__child)
56369 {
56370 if (__first[__parent] < __first[__child])
56371 return __child;
56372 if ((__child & 1) == 0)
56373 ++__parent;
56374 }
56375 return __n;
56376 }
56377
56378 template<typename _RandomAccessIterator, typename _Distance,
56379 typename _Compare>
56380 _Distance
56381 __is_heap_until(_RandomAccessIterator __first, _Distance __n,
56382 _Compare __comp)
56383 {
56384 _Distance __parent = 0;
56385 for (_Distance __child = 1; __child < __n; ++__child)
56386 {
56387 if (__comp(__first[__parent], __first[__child]))
56388 return __child;
56389 if ((__child & 1) == 0)
56390 ++__parent;
56391 }
56392 return __n;
56393 }
56394
56395
56396
56397 template<typename _RandomAccessIterator, typename _Distance>
56398 inline bool
56399 __is_heap(_RandomAccessIterator __first, _Distance __n)
56400 { return std::__is_heap_until(__first, __n) == __n; }
56401
56402 template<typename _RandomAccessIterator, typename _Compare,
56403 typename _Distance>
56404 inline bool
56405 __is_heap(_RandomAccessIterator __first, _Compare __comp, _Distance __n)
56406 { return std::__is_heap_until(__first, __n, __comp) == __n; }
56407
56408 template<typename _RandomAccessIterator>
56409 inline bool
56410 __is_heap(_RandomAccessIterator __first, _RandomAccessIterator __last)
56411 { return std::__is_heap(__first, std::distance(__first, __last)); }
56412
56413 template<typename _RandomAccessIterator, typename _Compare>
56414 inline bool
56415 __is_heap(_RandomAccessIterator __first, _RandomAccessIterator __last,
56416 _Compare __comp)
56417 { return std::__is_heap(__first, __comp, std::distance(__first, __last)); }
56418
56419
56420
56421
56422 template<typename _RandomAccessIterator, typename _Distance, typename _Tp>
56423 void
56424 __push_heap(_RandomAccessIterator __first,
56425 _Distance __holeIndex, _Distance __topIndex, _Tp __value)
56426 {
56427 _Distance __parent = (__holeIndex - 1) / 2;
56428 while (__holeIndex > __topIndex && *(__first + __parent) < __value)
56429 {
56430 *(__first + __holeIndex) = (*(__first + __parent));
56431 __holeIndex = __parent;
56432 __parent = (__holeIndex - 1) / 2;
56433 }
56434 *(__first + __holeIndex) = (__value);
56435 }
56436 # 152 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_heap.h" 3
56437 template<typename _RandomAccessIterator>
56438 inline void
56439 push_heap(_RandomAccessIterator __first, _RandomAccessIterator __last)
56440 {
56441 typedef typename iterator_traits<_RandomAccessIterator>::value_type
56442 _ValueType;
56443 typedef typename iterator_traits<_RandomAccessIterator>::difference_type
56444 _DistanceType;
56445
56446
56447
56448
56449
56450 ;
56451 ;
56452
56453 _ValueType __value = (*(__last - 1));
56454 std::__push_heap(__first, _DistanceType((__last - __first) - 1),
56455 _DistanceType(0), (__value));
56456 }
56457
56458 template<typename _RandomAccessIterator, typename _Distance, typename _Tp,
56459 typename _Compare>
56460 void
56461 __push_heap(_RandomAccessIterator __first, _Distance __holeIndex,
56462 _Distance __topIndex, _Tp __value, _Compare __comp)
56463 {
56464 _Distance __parent = (__holeIndex - 1) / 2;
56465 while (__holeIndex > __topIndex
56466 && __comp(*(__first + __parent), __value))
56467 {
56468 *(__first + __holeIndex) = (*(__first + __parent));
56469 __holeIndex = __parent;
56470 __parent = (__holeIndex - 1) / 2;
56471 }
56472 *(__first + __holeIndex) = (__value);
56473 }
56474 # 201 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_heap.h" 3
56475 template<typename _RandomAccessIterator, typename _Compare>
56476 inline void
56477 push_heap(_RandomAccessIterator __first, _RandomAccessIterator __last,
56478 _Compare __comp)
56479 {
56480 typedef typename iterator_traits<_RandomAccessIterator>::value_type
56481 _ValueType;
56482 typedef typename iterator_traits<_RandomAccessIterator>::difference_type
56483 _DistanceType;
56484
56485
56486
56487
56488 ;
56489 ;
56490
56491 _ValueType __value = (*(__last - 1));
56492 std::__push_heap(__first, _DistanceType((__last - __first) - 1),
56493 _DistanceType(0), (__value), __comp);
56494 }
56495
56496 template<typename _RandomAccessIterator, typename _Distance, typename _Tp>
56497 void
56498 __adjust_heap(_RandomAccessIterator __first, _Distance __holeIndex,
56499 _Distance __len, _Tp __value)
56500 {
56501 const _Distance __topIndex = __holeIndex;
56502 _Distance __secondChild = __holeIndex;
56503 while (__secondChild < (__len - 1) / 2)
56504 {
56505 __secondChild = 2 * (__secondChild + 1);
56506 if (*(__first + __secondChild) < *(__first + (__secondChild - 1)))
56507 __secondChild--;
56508 *(__first + __holeIndex) = (*(__first + __secondChild));
56509 __holeIndex = __secondChild;
56510 }
56511 if ((__len & 1) == 0 && __secondChild == (__len - 2) / 2)
56512 {
56513 __secondChild = 2 * (__secondChild + 1);
56514 *(__first + __holeIndex) = (*(__first + (__secondChild - 1)))
56515 ;
56516 __holeIndex = __secondChild - 1;
56517 }
56518 std::__push_heap(__first, __holeIndex, __topIndex,
56519 (__value));
56520 }
56521
56522 template<typename _RandomAccessIterator>
56523 inline void
56524 __pop_heap(_RandomAccessIterator __first, _RandomAccessIterator __last,
56525 _RandomAccessIterator __result)
56526 {
56527 typedef typename iterator_traits<_RandomAccessIterator>::value_type
56528 _ValueType;
56529 typedef typename iterator_traits<_RandomAccessIterator>::difference_type
56530 _DistanceType;
56531
56532 _ValueType __value = (*__result);
56533 *__result = (*__first);
56534 std::__adjust_heap(__first, _DistanceType(0),
56535 _DistanceType(__last - __first),
56536 (__value));
56537 }
56538 # 274 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_heap.h" 3
56539 template<typename _RandomAccessIterator>
56540 inline void
56541 pop_heap(_RandomAccessIterator __first, _RandomAccessIterator __last)
56542 {
56543 typedef typename iterator_traits<_RandomAccessIterator>::value_type
56544 _ValueType;
56545
56546
56547
56548
56549
56550 ;
56551 ;
56552
56553 --__last;
56554 std::__pop_heap(__first, __last, __last);
56555 }
56556
56557 template<typename _RandomAccessIterator, typename _Distance,
56558 typename _Tp, typename _Compare>
56559 void
56560 __adjust_heap(_RandomAccessIterator __first, _Distance __holeIndex,
56561 _Distance __len, _Tp __value, _Compare __comp)
56562 {
56563 const _Distance __topIndex = __holeIndex;
56564 _Distance __secondChild = __holeIndex;
56565 while (__secondChild < (__len - 1) / 2)
56566 {
56567 __secondChild = 2 * (__secondChild + 1);
56568 if (__comp(*(__first + __secondChild),
56569 *(__first + (__secondChild - 1))))
56570 __secondChild--;
56571 *(__first + __holeIndex) = (*(__first + __secondChild));
56572 __holeIndex = __secondChild;
56573 }
56574 if ((__len & 1) == 0 && __secondChild == (__len - 2) / 2)
56575 {
56576 __secondChild = 2 * (__secondChild + 1);
56577 *(__first + __holeIndex) = (*(__first + (__secondChild - 1)))
56578 ;
56579 __holeIndex = __secondChild - 1;
56580 }
56581 std::__push_heap(__first, __holeIndex, __topIndex,
56582 (__value), __comp);
56583 }
56584
56585 template<typename _RandomAccessIterator, typename _Compare>
56586 inline void
56587 __pop_heap(_RandomAccessIterator __first, _RandomAccessIterator __last,
56588 _RandomAccessIterator __result, _Compare __comp)
56589 {
56590 typedef typename iterator_traits<_RandomAccessIterator>::value_type
56591 _ValueType;
56592 typedef typename iterator_traits<_RandomAccessIterator>::difference_type
56593 _DistanceType;
56594
56595 _ValueType __value = (*__result);
56596 *__result = (*__first);
56597 std::__adjust_heap(__first, _DistanceType(0),
56598 _DistanceType(__last - __first),
56599 (__value), __comp);
56600 }
56601 # 348 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_heap.h" 3
56602 template<typename _RandomAccessIterator, typename _Compare>
56603 inline void
56604 pop_heap(_RandomAccessIterator __first,
56605 _RandomAccessIterator __last, _Compare __comp)
56606 {
56607
56608
56609
56610 ;
56611 ;
56612
56613 --__last;
56614 std::__pop_heap(__first, __last, __last, __comp);
56615 }
56616 # 371 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_heap.h" 3
56617 template<typename _RandomAccessIterator>
56618 void
56619 make_heap(_RandomAccessIterator __first, _RandomAccessIterator __last)
56620 {
56621 typedef typename iterator_traits<_RandomAccessIterator>::value_type
56622 _ValueType;
56623 typedef typename iterator_traits<_RandomAccessIterator>::difference_type
56624 _DistanceType;
56625
56626
56627
56628
56629
56630 ;
56631
56632 if (__last - __first < 2)
56633 return;
56634
56635 const _DistanceType __len = __last - __first;
56636 _DistanceType __parent = (__len - 2) / 2;
56637 while (true)
56638 {
56639 _ValueType __value = (*(__first + __parent));
56640 std::__adjust_heap(__first, __parent, __len, (__value));
56641 if (__parent == 0)
56642 return;
56643 __parent--;
56644 }
56645 }
56646 # 411 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_heap.h" 3
56647 template<typename _RandomAccessIterator, typename _Compare>
56648 void
56649 make_heap(_RandomAccessIterator __first, _RandomAccessIterator __last,
56650 _Compare __comp)
56651 {
56652 typedef typename iterator_traits<_RandomAccessIterator>::value_type
56653 _ValueType;
56654 typedef typename iterator_traits<_RandomAccessIterator>::difference_type
56655 _DistanceType;
56656
56657
56658
56659
56660 ;
56661
56662 if (__last - __first < 2)
56663 return;
56664
56665 const _DistanceType __len = __last - __first;
56666 _DistanceType __parent = (__len - 2) / 2;
56667 while (true)
56668 {
56669 _ValueType __value = (*(__first + __parent));
56670 std::__adjust_heap(__first, __parent, __len, (__value),
56671 __comp);
56672 if (__parent == 0)
56673 return;
56674 __parent--;
56675 }
56676 }
56677 # 450 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_heap.h" 3
56678 template<typename _RandomAccessIterator>
56679 void
56680 sort_heap(_RandomAccessIterator __first, _RandomAccessIterator __last)
56681 {
56682
56683
56684
56685
56686
56687 ;
56688 ;
56689
56690 while (__last - __first > 1)
56691 {
56692 --__last;
56693 std::__pop_heap(__first, __last, __last);
56694 }
56695 }
56696 # 479 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_heap.h" 3
56697 template<typename _RandomAccessIterator, typename _Compare>
56698 void
56699 sort_heap(_RandomAccessIterator __first, _RandomAccessIterator __last,
56700 _Compare __comp)
56701 {
56702
56703
56704
56705 ;
56706 ;
56707
56708 while (__last - __first > 1)
56709 {
56710 --__last;
56711 std::__pop_heap(__first, __last, __last, __comp);
56712 }
56713 }
56714 # 576 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_heap.h" 3
56715 }
56716 # 64 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/queue" 2 3
56717
56718 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_queue.h" 1 3
56719 # 58 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_queue.h" 3
56720 #define _STL_QUEUE_H 1
56721
56722
56723
56724
56725 namespace std __attribute__ ((__visibility__ ("default"))) {
56726 # 88 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_queue.h" 3
56727 template<typename _Tp, typename _Sequence = deque<_Tp> >
56728 class queue
56729 {
56730
56731 typedef typename _Sequence::value_type _Sequence_value_type;
56732
56733
56734
56735
56736
56737 template<typename _Tp1, typename _Seq1>
56738 friend bool
56739 operator==(const queue<_Tp1, _Seq1>&, const queue<_Tp1, _Seq1>&);
56740
56741 template<typename _Tp1, typename _Seq1>
56742 friend bool
56743 operator<(const queue<_Tp1, _Seq1>&, const queue<_Tp1, _Seq1>&);
56744
56745 public:
56746 typedef typename _Sequence::value_type value_type;
56747 typedef typename _Sequence::reference reference;
56748 typedef typename _Sequence::const_reference const_reference;
56749 typedef typename _Sequence::size_type size_type;
56750 typedef _Sequence container_type;
56751
56752 protected:
56753 # 122 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_queue.h" 3
56754 _Sequence c;
56755
56756 public:
56757
56758
56759
56760
56761 explicit
56762 queue(const _Sequence& __c = _Sequence())
56763 : c(__c) { }
56764 # 155 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_queue.h" 3
56765 bool
56766 empty() const
56767 { return c.empty(); }
56768
56769
56770 size_type
56771 size() const
56772 { return c.size(); }
56773
56774
56775
56776
56777
56778 reference
56779 front()
56780 {
56781 ;
56782 return c.front();
56783 }
56784
56785
56786
56787
56788
56789 const_reference
56790 front() const
56791 {
56792 ;
56793 return c.front();
56794 }
56795
56796
56797
56798
56799
56800 reference
56801 back()
56802 {
56803 ;
56804 return c.back();
56805 }
56806
56807
56808
56809
56810
56811 const_reference
56812 back() const
56813 {
56814 ;
56815 return c.back();
56816 }
56817 # 217 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_queue.h" 3
56818 void
56819 push(const value_type& __x)
56820 { c.push_back(__x); }
56821 # 243 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_queue.h" 3
56822 void
56823 pop()
56824 {
56825 ;
56826 c.pop_front();
56827 }
56828
56829
56830
56831
56832
56833
56834 };
56835 # 268 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_queue.h" 3
56836 template<typename _Tp, typename _Seq>
56837 inline bool
56838 operator==(const queue<_Tp, _Seq>& __x, const queue<_Tp, _Seq>& __y)
56839 { return __x.c == __y.c; }
56840 # 286 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_queue.h" 3
56841 template<typename _Tp, typename _Seq>
56842 inline bool
56843 operator<(const queue<_Tp, _Seq>& __x, const queue<_Tp, _Seq>& __y)
56844 { return __x.c < __y.c; }
56845
56846
56847 template<typename _Tp, typename _Seq>
56848 inline bool
56849 operator!=(const queue<_Tp, _Seq>& __x, const queue<_Tp, _Seq>& __y)
56850 { return !(__x == __y); }
56851
56852
56853 template<typename _Tp, typename _Seq>
56854 inline bool
56855 operator>(const queue<_Tp, _Seq>& __x, const queue<_Tp, _Seq>& __y)
56856 { return __y < __x; }
56857
56858
56859 template<typename _Tp, typename _Seq>
56860 inline bool
56861 operator<=(const queue<_Tp, _Seq>& __x, const queue<_Tp, _Seq>& __y)
56862 { return !(__y < __x); }
56863
56864
56865 template<typename _Tp, typename _Seq>
56866 inline bool
56867 operator>=(const queue<_Tp, _Seq>& __x, const queue<_Tp, _Seq>& __y)
56868 { return !(__x < __y); }
56869 # 357 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_queue.h" 3
56870 template<typename _Tp, typename _Sequence = vector<_Tp>,
56871 typename _Compare = less<typename _Sequence::value_type> >
56872 class priority_queue
56873 {
56874
56875 typedef typename _Sequence::value_type _Sequence_value_type;
56876
56877
56878
56879
56880
56881
56882
56883 public:
56884 typedef typename _Sequence::value_type value_type;
56885 typedef typename _Sequence::reference reference;
56886 typedef typename _Sequence::const_reference const_reference;
56887 typedef typename _Sequence::size_type size_type;
56888 typedef _Sequence container_type;
56889
56890 protected:
56891
56892 _Sequence c;
56893 _Compare comp;
56894
56895 public:
56896
56897
56898
56899
56900 explicit
56901 priority_queue(const _Compare& __x = _Compare(),
56902 const _Sequence& __s = _Sequence())
56903 : c(__s), comp(__x)
56904 { std::make_heap(c.begin(), c.end(), comp); }
56905 # 422 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_queue.h" 3
56906 template<typename _InputIterator>
56907 priority_queue(_InputIterator __first, _InputIterator __last,
56908 const _Compare& __x = _Compare(),
56909 const _Sequence& __s = _Sequence())
56910 : c(__s), comp(__x)
56911 {
56912 ;
56913 c.insert(c.end(), __first, __last);
56914 std::make_heap(c.begin(), c.end(), comp);
56915 }
56916 # 470 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_queue.h" 3
56917 bool
56918 empty() const
56919 { return c.empty(); }
56920
56921
56922 size_type
56923 size() const
56924 { return c.size(); }
56925
56926
56927
56928
56929
56930 const_reference
56931 top() const
56932 {
56933 ;
56934 return c.front();
56935 }
56936 # 498 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_queue.h" 3
56937 void
56938 push(const value_type& __x)
56939 {
56940 c.push_back(__x);
56941 std::push_heap(c.begin(), c.end(), comp);
56942 }
56943 # 533 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_queue.h" 3
56944 void
56945 pop()
56946 {
56947 ;
56948 std::pop_heap(c.begin(), c.end(), comp);
56949 c.pop_back();
56950 }
56951 # 550 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_queue.h" 3
56952 };
56953 # 562 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/bits/stl_queue.h" 3
56954 }
56955 # 66 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/queue" 2 3
56956 # 37 "../fwbuilder/ThreadTools.h" 2
56957
56958
56959
56960 namespace libfwbuilder
56961 {
56962
56963
56964
56965
56966 class Mutex
56967 {
56968 friend class Cond;
56969
56970 protected:
56971
56972 pthread_mutex_t mutex;
56973
56974 public:
56975
56976 Mutex();
56977 virtual ~Mutex();
56978
56979 void lock() const;
56980 void unlock() const;
56981
56982 };
56983
56984
56985
56986
56987 class Cond
56988 {
56989 protected:
56990
56991 pthread_cond_t cond;
56992
56993 public:
56994
56995 Cond();
56996 virtual ~Cond();
56997
56998 bool wait(const Mutex &mutex) const;
56999 void signal () const;
57000 void broadcast() const;
57001
57002 };
57003
57004
57005
57006
57007
57008 class SyncFlag: public Mutex
57009 {
57010 private:
57011
57012 bool value;
57013
57014 public:
57015
57016 SyncFlag(bool v=false);
57017
57018
57019
57020
57021
57022 bool peek() const;
57023
57024
57025
57026
57027
57028 void modify(bool v);
57029
57030 bool get() const;
57031 void set(bool v);
57032
57033 operator bool() const;
57034 SyncFlag& operator=(const SyncFlag &o);
57035 SyncFlag& operator=(bool v);
57036 };
57037
57038
57039
57040
57041
57042 class TimeoutCounter
57043 {
57044 private:
57045
57046 unsigned int timeout ;
57047 std::string name ;
57048 time_t finish ;
57049
57050 public:
57051 # 139 "../fwbuilder/ThreadTools.h"
57052 TimeoutCounter(unsigned int timeout, const std::string &name);
57053
57054
57055
57056
57057
57058
57059 void start();
57060
57061
57062
57063
57064
57065 unsigned int timeLeft() const;
57066
57067
57068
57069
57070 bool isExpired() const;
57071
57072
57073
57074
57075 void check() const throw(FWException) ;
57076
57077
57078
57079
57080
57081 ssize_t read(int fd, void *buf, size_t n) const throw(FWException);
57082
57083 };
57084
57085
57086
57087
57088
57089 }
57090 # 33 "../fwbuilder/FWObjectDatabase.h" 2
57091 # 45 "../fwbuilder/FWObjectDatabase.h"
57092 #define DECLARE_CREATE_OBJ_METHOD(classname) FWObject* create_ ##classname(int id=-1);
57093
57094
57095 #define DECLARE_CREATE_OBJ_CLASS_METHOD(classname) classname * create ##classname(int id=-1);
57096
57097
57098
57099 namespace libfwbuilder
57100 {
57101 class Group;
57102
57103
57104 class AddressRange;
57105 class AddressTable;
57106 class AttachedNetworks;
57107 class Cluster;
57108 class StateSyncClusterGroup;
57109 class FailoverClusterGroup;
57110 class ClusterGroupOptions;
57111 class CustomService;
57112 class DNSName;
57113 class DynamicGroup;
57114 class FWBDManagement;
57115 class FWIntervalReference;
57116 class FWObjectReference;
57117 class FWServiceReference;
57118 class Firewall;
57119 class FirewallOptions;
57120 class Host;
57121 class HostOptions;
57122 class ICMP6Service;
57123 class ICMPService;
57124 class IPService;
57125 class IPv4;
57126 class IPv6;
57127 class Interface;
57128 class InterfaceOptions;
57129 class Interval;
57130 class IntervalGroup;
57131 class Library;
57132 class Management;
57133 class NAT;
57134 class NATRule;
57135 class NATRuleOptions;
57136 class Network;
57137 class NetworkIPv6;
57138 class ObjectGroup;
57139 class Policy;
57140 class PolicyInstallScript;
57141 class PolicyRule;
57142 class PolicyRuleOptions;
57143 class Routing;
57144 class RoutingRule;
57145 class RoutingRuleOptions;
57146 class RuleElementDst;
57147 class RuleElementInterval;
57148 class RuleElementItf;
57149 class RuleElementItfInb;
57150 class RuleElementItfOutb;
57151 class RuleElementODst;
57152 class RuleElementOSrc;
57153 class RuleElementOSrv;
57154 class RuleElementRDst;
57155 class RuleElementRGtw;
57156 class RuleElementRItf;
57157 class RuleElementSrc;
57158 class RuleElementSrv;
57159 class RuleElementTDst;
57160 class RuleElementTSrc;
57161 class RuleElementTSrv;
57162 class RuleSetOptions;
57163 class SNMPManagement;
57164 class ServiceGroup;
57165 class TCPService;
57166 class TagService;
57167 class UDPService;
57168 class UserService;
57169 class physAddress;
57170
57171
57172
57173 FWObject* create_AddressRange(int id=-1);;
57174 FWObject* create_AddressTable(int id=-1);;
57175 FWObject* create_AttachedNetworks(int id=-1);;
57176 FWObject* create_Cluster(int id=-1);;
57177 FWObject* create_StateSyncClusterGroup(int id=-1);;
57178 FWObject* create_FailoverClusterGroup(int id=-1);;
57179 FWObject* create_ClusterGroupOptions(int id=-1);;
57180 FWObject* create_CustomService(int id=-1);;
57181 FWObject* create_DNSName(int id=-1);;
57182 FWObject* create_DynamicGroup(int id=-1);;
57183 FWObject* create_FWBDManagement(int id=-1);;
57184 FWObject* create_FWIntervalReference(int id=-1);;
57185 FWObject* create_FWObjectReference(int id=-1);;
57186 FWObject* create_FWServiceReference(int id=-1);;
57187 FWObject* create_Firewall(int id=-1);;
57188 FWObject* create_FirewallOptions(int id=-1);;
57189 FWObject* create_Host(int id=-1);;
57190 FWObject* create_HostOptions(int id=-1);;
57191 FWObject* create_ICMP6Service(int id=-1);;
57192 FWObject* create_ICMPService(int id=-1);;
57193 FWObject* create_IPService(int id=-1);;
57194 FWObject* create_IPv4(int id=-1);;
57195 FWObject* create_IPv6(int id=-1);;
57196 FWObject* create_Interface(int id=-1);;
57197 FWObject* create_InterfaceOptions(int id=-1);;
57198 FWObject* create_Interval(int id=-1);;
57199 FWObject* create_IntervalGroup(int id=-1);;
57200 FWObject* create_Library(int id=-1);;
57201 FWObject* create_Management(int id=-1);;
57202 FWObject* create_NAT(int id=-1);;
57203 FWObject* create_NATRule(int id=-1);;
57204 FWObject* create_NATRuleOptions(int id=-1);;
57205 FWObject* create_Network(int id=-1);;
57206 FWObject* create_NetworkIPv6(int id=-1);;
57207 FWObject* create_ObjectGroup(int id=-1);;
57208 FWObject* create_Policy(int id=-1);;
57209 FWObject* create_PolicyInstallScript(int id=-1);;
57210 FWObject* create_PolicyRule(int id=-1);;
57211 FWObject* create_PolicyRuleOptions(int id=-1);;
57212 FWObject* create_Routing(int id=-1);;
57213 FWObject* create_RoutingRule(int id=-1);;
57214 FWObject* create_RoutingRuleOptions(int id=-1);;
57215 FWObject* create_RuleElementDst(int id=-1);;
57216 FWObject* create_RuleElementInterval(int id=-1);;
57217 FWObject* create_RuleElementItf(int id=-1);;
57218 FWObject* create_RuleElementItfInb(int id=-1);;
57219 FWObject* create_RuleElementItfOutb(int id=-1);;
57220 FWObject* create_RuleElementODst(int id=-1);;
57221 FWObject* create_RuleElementOSrc(int id=-1);;
57222 FWObject* create_RuleElementOSrv(int id=-1);;
57223 FWObject* create_RuleElementRDst(int id=-1);;
57224 FWObject* create_RuleElementRGtw(int id=-1);;
57225 FWObject* create_RuleElementRItf(int id=-1);;
57226 FWObject* create_RuleElementSrc(int id=-1);;
57227 FWObject* create_RuleElementSrv(int id=-1);;
57228 FWObject* create_RuleElementTDst(int id=-1);;
57229 FWObject* create_RuleElementTSrc(int id=-1);;
57230 FWObject* create_RuleElementTSrv(int id=-1);;
57231 FWObject* create_RuleSetOptions(int id=-1);;
57232 FWObject* create_SNMPManagement(int id=-1);;
57233 FWObject* create_ServiceGroup(int id=-1);;
57234 FWObject* create_TCPService(int id=-1);;
57235 FWObject* create_TagService(int id=-1);;
57236 FWObject* create_UDPService(int id=-1);;
57237 FWObject* create_UserService(int id=-1);;
57238 FWObject* create_physAddress(int id=-1);;
57239 FWObject* create_Group(int id=-1);;
57240
57241
57242 class IDcounter {
57243
57244 protected:
57245 long cntr;
57246
57247 public:
57248 IDcounter();
57249 long get() { ++cntr; return cntr; }
57250 };
57251
57252 class FWObjectDatabase;
57253 typedef FWObject*(*create_function_ptr)(int);
57254
57255
57256
57257
57258 class FWObjectDatabase : public FWObject
57259 {
57260
57261 private:
57262 void _clearReferenceCounters(FWObject *o);
57263 void _fixReferenceCounters(FWObject *o);
57264 bool _isInIgnoreList(FWObject *o);
57265
57266
57267
57268
57269
57270
57271 bool _findWhereObjectIsUsed(libfwbuilder::FWObject *o,
57272 libfwbuilder::FWObject *p,
57273 std::set<libfwbuilder::FWObject *> &resset,
57274 int search_id);
57275
57276 void _findObjectsInGroup(
57277 libfwbuilder::Group *g,
57278 std::set<libfwbuilder::FWObject *> &res);
57279 Firewall* _findFirewallByNameRecursive(
57280 FWObject* db, const std::string &name) throw(FWException);
57281 FWObject* _recursively_copy_subtree(FWObject *target,
57282 FWObject *source,
57283 std::map<int,int> &id_map,
57284 const std::string &dedup_attribute);
57285 void _copy_foreign_obj_aux(FWObject *target, FWObject *source,
57286 std::map<int,int> &id_map,
57287 const std::string &dedup_attribute);
57288
57289 void _setPredictableStrIdsRecursively(FWObject *obj);
57290 void _updateNonStandardObjectReferencesRecursively(FWObject *obj);
57291
57292 protected:
57293
57294 static const std::string DTD_FILE_NAME ;
57295
57296 time_t lastModified;
57297 int index_hits;
57298 int index_misses;
57299 std::string data_file;
57300 std::map<int, FWObject*> obj_index;
57301 int searchId;
57302 int predictable_id_tracker;
57303 bool ignore_read_only;
57304
57305 void init_create_methods_table();
57306 void init_id_dict();
57307
57308 public:
57309
57310 static const char *TYPENAME; virtual std::string getTypeName() const { return TYPENAME; } static bool isA(const FWObject *o) { return o && o->getTypeName()==TYPENAME; } static FWObjectDatabase* cast(FWObject *o) { return dynamic_cast<FWObjectDatabase*>(o); } static const FWObjectDatabase* constcast(const FWObject *o) { return dynamic_cast<const FWObjectDatabase*>(o); };
57311
57312 virtual void* dispatch(Dispatch* _d, void* _a1) {return _d->dispatch(this, _a1); } virtual void* dispatch(Dispatch* _d, const void* _a1) {return _d->dispatch(this, _a1); } virtual void* dispatch(Dispatch* _d, void* _a1) const {return _d->dispatch(this, _a1); } virtual void* dispatch(Dispatch* _d, const void* _a1) const {return _d->dispatch(this, _a1); } virtual const void* const_dispatch(Dispatch* _d, void* _a1) const {return _d->const_dispatch(this, _a1); } virtual const void* const_dispatch(Dispatch* _d, const void* _a1) const {return _d->const_dispatch(this, _a1); };
57313
57314 enum {ROOT_ID = 0,
57315 ANY_ADDRESS_ID = 1,
57316 ANY_SERVICE_ID = 2,
57317 ANY_INTERVAL_ID = 3,
57318 STANDARD_LIB_ID = 4,
57319 USER_LIB_ID = 5,
57320 TEMPLATE_LIB_ID = 6,
57321 DELETED_OBJECTS_ID = 7
57322 } standard_ids;
57323
57324 static void registerObjectType(const std::string &type_name,
57325 create_function_ptr create_function);
57326
57327
57328
57329
57330 FWObjectDatabase();
57331
57332
57333
57334
57335 FWObjectDatabase(FWObjectDatabase& d);
57336
57337 virtual ~FWObjectDatabase();
57338
57339
57340
57341 void addToIndexRecursive(FWObject *o);
57342
57343
57344
57345
57346 void addToIndex(FWObject* obj);
57347
57348
57349
57350
57351 void removeFromIndex(int id);
57352
57353
57354
57355
57356 FWObject* checkIndex(int id);
57357
57358
57359
57360
57361 FWObject* findInIndex(int id);
57362
57363
57364
57365
57366 void buildIndex();
57367
57368
57369
57370
57371 void clearIndex();
57372
57373
57374
57375
57376
57377
57378 void reIndex();
57379
57380
57381
57382
57383 void getIndexStats(int &index_size, int &hit_counter, int &miss_counter);
57384
57385
57386
57387
57388 void validateIndex();
57389
57390
57391
57392
57393
57394 bool getIgnoreReadOnlyFlag() { return ignore_read_only; }
57395 void setIgnoreReadOnlyFlag(bool f) { ignore_read_only = f; }
57396
57397
57398
57399 virtual void fromXML(xmlNodePtr xml_parent_node) throw(FWException);
57400 virtual xmlNodePtr toXML(xmlNodePtr parent) throw(FWException);
57401
57402 time_t getTimeLastModified() { return lastModified; }
57403 void resetTimeLastModified(time_t t) { lastModified=t; }
57404
57405
57406
57407 virtual void saveFile(const std::string &filename) throw(FWException);
57408 virtual void saveToBuffer(xmlChar **buffer,int *size) throw(FWException);
57409 virtual void load( const std::string &filename,
57410 XMLTools::UpgradePredicate *upgrade,
57411 const std::string &template_dir) throw(FWException);
57412 virtual void setDirty(bool f);
57413
57414 Firewall* findFirewallByName(const std::string &name) throw(FWException);
57415
57416 FWObjectDatabase* exportSubtree( FWObject *lib );
57417 FWObjectDatabase* exportSubtree( const std::list<FWObject*> &libs );
57418 # 385 "../fwbuilder/FWObjectDatabase.h"
57419 void findWhereObjectIsUsed(
57420 libfwbuilder::FWObject *o,
57421 libfwbuilder::FWObject *p,
57422 std::set<libfwbuilder::FWObject *> &resset);
57423
57424
57425
57426
57427
57428
57429 void findObjectsInGroup(
57430 libfwbuilder::Group *g,
57431 std::set<libfwbuilder::FWObject *> &resset);
57432
57433
57434
57435
57436
57437 virtual FWObject& duplicate(const FWObject *obj,
57438 bool preserve_id = true) throw(FWException);
57439
57440
57441 void recursivelyRemoveObjFromTree(FWObject* obj, bool remove_ref=false);
57442
57443
57444
57445
57446
57447
57448
57449 FWObject* recursivelyCopySubtree(FWObject *target,
57450 FWObject *source,
57451 std::map<int,int> &id_map);
57452
57453
57454
57455
57456
57457
57458
57459 FWObject* reproduceRelativePath(FWObject *lib, const FWObject *source);
57460
57461
57462
57463
57464
57465 int fixReferences(FWObject *obj, const std::map<int,int> &map_ids);
57466
57467
57468
57469
57470
57471
57472 class ConflictResolutionPredicate
57473 {
57474 public:
57475 virtual ~ConflictResolutionPredicate() {}
57476 virtual bool askUser(FWObject*,FWObject*)
57477 {
57478 return true;
57479 }
57480 };
57481
57482 void merge(FWObjectDatabase *ndb, ConflictResolutionPredicate *mp=__null);
57483 void findDuplicateIds(FWObjectDatabase *ndb, std::set<int> &dupids);
57484
57485 void setFileName(const std::string &filename);
57486 const std::string& getFileName ();
57487 const std::string getFileDir ();
57488
57489 static int generateUniqueId();
57490 static int registerStringId(const std::string &s_id);
57491 static int getIntId(const std::string &s_id);
57492 static std::string getStringId(int i_id);
57493
57494
57495
57496
57497
57498 std::string getPredictableId(const std::string &prefix);
57499 # 475 "../fwbuilder/FWObjectDatabase.h"
57500 virtual void setPredictableIds();
57501 # 485 "../fwbuilder/FWObjectDatabase.h"
57502 FWObject *create(const std::string &type, int id=-1, bool init=true);
57503
57504
57505
57506
57507 virtual FWObject *createFromXML(xmlNodePtr data);
57508 # 499 "../fwbuilder/FWObjectDatabase.h"
57509 AddressRange * createAddressRange(int id=-1);;
57510 AddressTable * createAddressTable(int id=-1);;
57511 AttachedNetworks * createAttachedNetworks(int id=-1);;
57512 Cluster * createCluster(int id=-1);;
57513 StateSyncClusterGroup * createStateSyncClusterGroup(int id=-1);;
57514 FailoverClusterGroup * createFailoverClusterGroup(int id=-1);;
57515 ClusterGroupOptions * createClusterGroupOptions(int id=-1);;
57516 CustomService * createCustomService(int id=-1);;
57517 DNSName * createDNSName(int id=-1);;
57518 DynamicGroup * createDynamicGroup(int id=-1);;
57519 FWBDManagement * createFWBDManagement(int id=-1);;
57520 FWIntervalReference * createFWIntervalReference(int id=-1);;
57521 FWObjectReference * createFWObjectReference(int id=-1);;
57522 FWServiceReference * createFWServiceReference(int id=-1);;
57523 Firewall * createFirewall(int id=-1);;
57524 FirewallOptions * createFirewallOptions(int id=-1);;
57525 Host * createHost(int id=-1);;
57526 HostOptions * createHostOptions(int id=-1);;
57527 ICMP6Service * createICMP6Service(int id=-1);;
57528 ICMPService * createICMPService(int id=-1);;
57529 IPService * createIPService(int id=-1);;
57530 IPv4 * createIPv4(int id=-1);;
57531 IPv6 * createIPv6(int id=-1);;
57532 Interface * createInterface(int id=-1);;
57533 InterfaceOptions * createInterfaceOptions(int id=-1);;
57534 Interval * createInterval(int id=-1);;
57535 IntervalGroup * createIntervalGroup(int id=-1);;
57536 Library * createLibrary(int id=-1);;
57537 Management * createManagement(int id=-1);;
57538 NAT * createNAT(int id=-1);;
57539 NATRule * createNATRule(int id=-1);;
57540 NATRuleOptions * createNATRuleOptions(int id=-1);;
57541 Network * createNetwork(int id=-1);;
57542 NetworkIPv6 * createNetworkIPv6(int id=-1);;
57543 ObjectGroup * createObjectGroup(int id=-1);;
57544 Policy * createPolicy(int id=-1);;
57545 PolicyInstallScript * createPolicyInstallScript(int id=-1);;
57546 PolicyRule * createPolicyRule(int id=-1);;
57547 PolicyRuleOptions * createPolicyRuleOptions(int id=-1);;
57548 Routing * createRouting(int id=-1);;
57549 RoutingRule * createRoutingRule(int id=-1);;
57550 RoutingRuleOptions * createRoutingRuleOptions(int id=-1);;
57551 RuleElementDst * createRuleElementDst(int id=-1);;
57552 RuleElementInterval * createRuleElementInterval(int id=-1);;
57553 RuleElementItf * createRuleElementItf(int id=-1);;
57554 RuleElementItfInb * createRuleElementItfInb(int id=-1);;
57555 RuleElementItfOutb * createRuleElementItfOutb(int id=-1);;
57556 RuleElementODst * createRuleElementODst(int id=-1);;
57557 RuleElementOSrc * createRuleElementOSrc(int id=-1);;
57558 RuleElementOSrv * createRuleElementOSrv(int id=-1);;
57559 RuleElementRDst * createRuleElementRDst(int id=-1);;
57560 RuleElementRGtw * createRuleElementRGtw(int id=-1);;
57561 RuleElementRItf * createRuleElementRItf(int id=-1);;
57562 RuleElementSrc * createRuleElementSrc(int id=-1);;
57563 RuleElementSrv * createRuleElementSrv(int id=-1);;
57564 RuleElementTDst * createRuleElementTDst(int id=-1);;
57565 RuleElementTSrc * createRuleElementTSrc(int id=-1);;
57566 RuleElementTSrv * createRuleElementTSrv(int id=-1);;
57567 RuleSetOptions * createRuleSetOptions(int id=-1);;
57568 SNMPManagement * createSNMPManagement(int id=-1);;
57569 ServiceGroup * createServiceGroup(int id=-1);;
57570 TCPService * createTCPService(int id=-1);;
57571 TagService * createTagService(int id=-1);;
57572 UDPService * createUDPService(int id=-1);;
57573 UserService * createUserService(int id=-1);;
57574 physAddress * createphysAddress(int id=-1);;
57575 Group * createGroup(int id=-1);;
57576
57577
57578 };
57579
57580 }
57581 # 36 "Address.cpp" 2
57582
57583 using namespace libfwbuilder;
57584 using namespace std;
57585
57586 const char *Address::TYPENAME={"Address"};
57587
57588 Address::Address() : FWObject()
57589 {
57590 inet_addr_mask = new InetAddrMask();
57591 setName("address");
57592 }
57593
57594 Address::Address(const Address& other) : FWObject(other)
57595 {
57596 inet_addr_mask = new InetAddrMask(*(other.inet_addr_mask));
57597 }
57598
57599 Address::~Address()
57600 {
57601 delete inet_addr_mask;
57602 }
57603
57604 FWObject& Address::shallowDuplicate(const FWObject *other,
57605 bool preserve_id) throw(FWException)
57606 {
57607 const Address* a_other = Address::constcast(other);
57608 delete inet_addr_mask;
57609 inet_addr_mask = new InetAddrMask(*(a_other->inet_addr_mask));
57610 return FWObject::shallowDuplicate(other, preserve_id);
57611 }
57612
57613 FWReference* Address::createRef()
57614 {
57615 FWObjectReference *ref = getRoot()->createFWObjectReference();
57616 ref->setPointer(this);
57617 return ref;
57618 }
57619
57620 bool Address::isAny() const
57621 {
57622 return getId()==FWObjectDatabase::ANY_ADDRESS_ID;
57623 }
57624
57625 const Address* Address::getAddressObject() const
57626 {
57627 return __null;
57628 }
57629
57630 const InetAddrMask* Address::getInetAddrMaskObjectPtr() const
57631 {
57632 const Address *addr_obj = getAddressObject();
57633 if (addr_obj) return addr_obj->inet_addr_mask;
57634 return __null;
57635 }
57636
57637 bool Address::hasInetAddress() const
57638 {
57639 return false;
57640 }
57641
57642 int Address::countInetAddresses(bool ) const
57643 {
57644 return 0;
57645 }
57646
57647 const InetAddr* Address::getAddressPtr() const
57648 {
57649 const InetAddrMask *inet_addr_mask = getInetAddrMaskObjectPtr();
57650 if (inet_addr_mask) return inet_addr_mask->getAddressPtr();
57651 return __null;
57652 }
57653
57654 const InetAddr* Address::getNetmaskPtr() const
57655 {
57656 const InetAddrMask *inet_addr_mask = getInetAddrMaskObjectPtr();
57657 if (inet_addr_mask) return inet_addr_mask->getNetmaskPtr();
57658 return __null;
57659 }
57660
57661 const InetAddr* Address::getNetworkAddressPtr() const
57662 {
57663 const InetAddrMask *inet_addr_mask = getInetAddrMaskObjectPtr();
57664 if (inet_addr_mask) return inet_addr_mask->getNetworkAddressPtr();
57665 return __null;
57666 }
57667
57668 const InetAddr* Address::getBroadcastAddressPtr() const
57669 {
57670 const InetAddrMask *inet_addr_mask = getInetAddrMaskObjectPtr();
57671 if (inet_addr_mask) return inet_addr_mask->getBroadcastAddressPtr();
57672 return __null;
57673 }
57674
57675 void Address::setAddress(const InetAddr& a)
57676 {
57677 inet_addr_mask->setAddress(a);
57678 }
57679
57680 void Address::setNetmask(const InetAddr& nm)
57681 {
57682 inet_addr_mask->setNetmask(nm);
57683 }
57684
57685 void Address::setAddressNetmask(const std::string&)
57686 {
57687 }
57688
57689
57690
57691
57692
57693 unsigned int Address::dimension() const
57694 {
57695 const InetAddrMask *addr_obj = getInetAddrMaskObjectPtr();
57696 if (addr_obj!=__null) return addr_obj->dimension();
57697 return 1;
57698 }
57699
57700 bool Address::belongs(const InetAddr &other) const
57701 {
57702 const InetAddrMask *addr_obj = getInetAddrMaskObjectPtr();
57703 if (addr_obj!=__null) return addr_obj->belongs(other);
57704 return false;
57705 }
57706
57707 bool Address::cmp(const FWObject *obj, bool recursive) throw(FWException)
57708 {
57709 if (Address::constcast(obj)==__null) return false;
57710 if (!FWObject::cmp(obj, recursive)) return false;
57711 if (hasInetAddress()!=Address::constcast(obj)->hasInetAddress()) return false;
57712 if (!hasInetAddress()) return true;
57713
57714 return (*inet_addr_mask == *(Address::constcast(obj)->inet_addr_mask));
57715 }