~ubuntu-branches/debian/sid/eclipse-cdt/sid

« back to all changes in this revision

Viewing changes to core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/refactoring/includes/GCCHeaderSubstitutionMaps.java

  • Committer: Package Import Robot
  • Author(s): Jakub Adam
  • Date: 2013-10-03 20:30:16 UTC
  • mfrom: (1.1.11)
  • Revision ID: package-import@ubuntu.com-20131003203016-d4ug6l0xgosasumq
Tags: 8.2.1-1
* New upstream release.
* Updated autotools documentation sources.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/*******************************************************************************
 
2
 * Copyright (c) 2013 Google, Inc and others.
 
3
 * All rights reserved. This program and the accompanying materials
 
4
 * are made available under the terms of the Eclipse Public License v1.0
 
5
 * which accompanies this distribution, and is available at
 
6
 * http://www.eclipse.org/legal/epl-v10.html
 
7
 *
 
8
 * Contributors:
 
9
 *         Sergey Prigogin (Google) - initial API and implementation
 
10
 *******************************************************************************/
 
11
package org.eclipse.cdt.internal.ui.refactoring.includes;
 
12
 
 
13
import java.util.Arrays;
 
14
import java.util.List;
 
15
 
 
16
public class GCCHeaderSubstitutionMaps {
 
17
        @SuppressWarnings("nls")
 
18
        private static final String[] symbolExportMap = new String[] {
 
19
                        "EOF", "<stdio.h>",
 
20
                        "EOF", "<cstdio>",
 
21
                        "EOF", "<libio.h>",
 
22
                        "NULL", "<stddef.h>",
 
23
                        "NULL", "<cstddef>",
 
24
                        "NULL", "<stdlib.h>",
 
25
                        "NULL", "<cstdlib>",
 
26
                        "NULL", "<stdio.h>",
 
27
                        "NULL", "<cstdio>",
 
28
                        "NULL", "<string.h>",
 
29
                        "NULL", "<cstring>",
 
30
                        "NULL", "<string>",
 
31
                        "NULL", "<wchar.h>",
 
32
                        "NULL", "<cwchar>",
 
33
                        "NULL", "<locale.h>",
 
34
                        "NULL", "<time.h>",
 
35
                        "NULL", "<ctime>",
 
36
                        "blkcnt_t", "<sys/stat.h>",
 
37
                        "blkcnt_t", "<sys/types.h>",
 
38
                        "blksize_t", "<sys/types.h>",
 
39
                        "blksize_t", "<sys/stat.h>",
 
40
                        "calloc", "<stdlib.h>",
 
41
                        "calloc", "<cstdlib>",
 
42
                        "daddr_t", "<sys/types.h>",
 
43
                        "daddr_t", "<rpc/types.h>",
 
44
                        "dev_t", "<sys/types.h>",
 
45
                        "dev_t", "<sys/stat.h>",
 
46
                        "error_t", "<errno.h>",
 
47
                        "error_t", "<argp.h>",
 
48
                        "error_t", "<argz.h>",
 
49
                        "free", "<stdlib.h>",
 
50
                        "free", "<cstdlib>",
 
51
                        "fsblkcnt_t", "<sys/types.h>",
 
52
                        "fsblkcnt_t", "<sys/statvfs.h>",
 
53
                        "fsfilcnt_t", "<sys/types.h>",
 
54
                        "fsfilcnt_t", "<sys/statvfs.h>",
 
55
                        "gid_t", "<sys/types.h>",
 
56
                        "gid_t", "<grp.h>",
 
57
                        "gid_t", "<pwd.h>",
 
58
                        "gid_t", "<stropts.h>",
 
59
                        "gid_t", "<sys/ipc.h>",
 
60
                        "gid_t", "<sys/stat.h>",
 
61
                        "gid_t", "<unistd.h>",
 
62
                        "id_t", "<sys/types.h>",
 
63
                        "id_t", "<sys/resource.h>",
 
64
                        "ino64_t", "<sys/types.h>",
 
65
                        "ino64_t", "<dirent.h>",
 
66
                        "ino_t", "<sys/types.h>",
 
67
                        "ino_t", "<dirent.h>",
 
68
                        "ino_t", "<sys/stat.h>",
 
69
                        "int8_t", "<sys/types.h>",
 
70
                        "int8_t", "<stdint.h>",
 
71
                        "intptr_t", "<stdint.h>",
 
72
                        "intptr_t", "<unistd.h>",
 
73
                        "key_t", "<sys/types.h>",
 
74
                        "key_t", "<sys/ipc.h>",
 
75
                        "malloc", "<stdlib.h>",
 
76
                        "malloc", "<cstdlib>",
 
77
                        "mode_t", "<sys/types.h>",
 
78
                        "mode_t", "<sys/stat.h>",
 
79
                        "mode_t", "<sys/ipc.h>",
 
80
                        "mode_t", "<sys/mman.h>",
 
81
                        "nlink_t", "<sys/types.h>",
 
82
                        "nlink_t", "<sys/stat.h>",
 
83
                        "off64_t", "<sys/types.h>",
 
84
                        "off64_t", "<unistd.h>",
 
85
                        "off_t", "<sys/types.h>",
 
86
                        "off_t", "<unistd.h>",
 
87
                        "off_t", "<sys/stat.h>",
 
88
                        "off_t", "<sys/mman.h>",
 
89
                        "pid_t", "<sys/types.h>",
 
90
                        "pid_t", "<unistd.h>",
 
91
                        "pid_t", "<signal.h>",
 
92
                        "pid_t", "<sys/msg.h>",
 
93
                        "pid_t", "<sys/shm.h>",
 
94
                        "pid_t", "<termios.h>",
 
95
                        "pid_t", "<time.h>",
 
96
                        "pid_t", "<ctime>",
 
97
                        "pid_t", "<utmpx.h>",
 
98
                        "realloc", "<stdlib.h>",
 
99
                        "realloc", "<cstdlib>",
 
100
                        "sigset_t", "<signal.h>",
 
101
                        "sigset_t", "<sys/epoll.h>",
 
102
                        "sigset_t", "<sys/select.h>",
 
103
                        "size_t", "<stddef.h>",
 
104
                        "size_t", "<cstddef>",
 
105
                        "socklen_t", "<bits/socket.h>",
 
106
                        "socklen_t", "<unistd.h>",
 
107
                        "socklen_t", "<arpa/inet.h>",
 
108
                        "ssize_t", "<sys/types.h>",
 
109
                        "ssize_t", "<unistd.h>",
 
110
                        "ssize_t", "<monetary.h>",
 
111
                        "ssize_t", "<sys/msg.h>",
 
112
                        "std::allocator", "<memory>",
 
113
                        "std::allocator", "<string>",
 
114
                        "std::allocator", "<vector>",
 
115
                        "std::allocator", "<map>",
 
116
                        "std::allocator", "<set>",
 
117
                        "std::char_traits", "<string>",
 
118
                        "std::char_traits", "<ostream>",
 
119
                        "std::char_traits", "<istream>",
 
120
                        "suseconds_t", "<sys/types.h>",
 
121
                        "suseconds_t", "<sys/time.h>",
 
122
                        "suseconds_t", "<sys/select.h>",
 
123
                        "u_char", "<sys/types.h>",
 
124
                        "u_char", "<rpc/types.h>",
 
125
                        "uid_t", "<sys/types.h>",
 
126
                        "uid_t", "<unistd.h>",
 
127
                        "uid_t", "<pwd.h>",
 
128
                        "uid_t", "<signal.h>",
 
129
                        "uid_t", "<stropts.h>",
 
130
                        "uid_t", "<sys/ipc.h>",
 
131
                        "uid_t", "<sys/stat.h>",
 
132
                        "useconds_t", "<sys/types.h>",
 
133
                        "useconds_t", "<unistd.h>",
 
134
                        "va_list", "<stdarg.h>",
 
135
                        "va_list", "<cstdarg>",
 
136
                };
 
137
 
 
138
        @SuppressWarnings("nls")
 
139
        private static final String[] cIncludeMap = new String[] {
 
140
                        "<asm/errno-base.h>", "<errno.h>",
 
141
                        "<asm/errno.h>", "<errno.h>",
 
142
                        "<asm/ioctls.h>", "<sys/ioctl.h>",
 
143
                        "<asm/posix_types_32.h>", "<asm/posix_types.h>",
 
144
                        "<asm/posix_types_64.h>", "<asm/posix_types.h>",
 
145
                        "<asm/ptrace-abi.h>", "<asm/ptrace.h>",
 
146
                        "<asm/socket.h>", "<sys/socket.h>",
 
147
                        "<asm/unistd.h>", "<syscall.h>",
 
148
                        "<asm/unistd_32.h>", "<syscall.h>",
 
149
                        "<asm/unistd_64.h>", "<syscall.h>",
 
150
                        "<bits/a.out.h>", "<a.out.h>",
 
151
                        "<bits/byteswap.h>", "<byteswap.h>",
 
152
                        "<bits/cmathcalls.h>", "<complex.h>",
 
153
                        "<bits/confname.h>", "<unistd.h>",
 
154
                        "<bits/dirent.h>", "<dirent.h>",
 
155
                        "<bits/dlfcn.h>", "<dlfcn.h>",
 
156
                        "<bits/elfclass.h>", "<link.h>",
 
157
                        "<bits/endian.h>", "<endian.h>",
 
158
                        "<bits/environments.h>", "<unistd.h>",
 
159
                        "<bits/errno.h>", "<errno.h>",
 
160
                        "<bits/error.h>", "<error.h>",
 
161
                        "<bits/fcntl.h>", "<fcntl.h>",
 
162
                        "<bits/fcntl2.h>", "<fcntl.h>",
 
163
                        "<bits/fenv.h>", "<fenv.h>",
 
164
                        "<bits/fenvinline.h>", "<fenv.h>",
 
165
                        "<bits/huge_val.h>", "<math.h>",
 
166
                        "<bits/huge_valf.h>", "<math.h>",
 
167
                        "<bits/huge_vall.h>", "<math.h>",
 
168
                        "<bits/in.h>", "<netinet/in.h>",
 
169
                        "<bits/inf.h>", "<math.h>",
 
170
                        "<bits/ioctl-types.h>", "<sys/ioctl.h>",
 
171
                        "<bits/ioctls.h>", "<sys/ioctl.h>",
 
172
                        "<bits/ipc.h>", "<sys/ipc.h>",
 
173
                        "<bits/ipctypes.h>", "<sys/ipc.h>",
 
174
                        "<bits/libio-ldbl.h>", "<libio.h>",
 
175
                        "<bits/link.h>", "<link.h>",
 
176
                        "<bits/locale.h>", "<locale.h>",
 
177
                        "<bits/mathcalls.h>", "<math.h>",
 
178
                        "<bits/mathdef.h>", "<math.h>",
 
179
                        "<bits/mathinline.h>", "<math.h>",
 
180
                        "<bits/mman.h>", "<sys/mman.h>",
 
181
                        "<bits/monetary-ldbl.h>", "<monetary.h>",
 
182
                        "<bits/mqueue.h>", "<mqueue.h>",
 
183
                        "<bits/mqueue2.h>", "<mqueue.h>",
 
184
                        "<bits/msq.h>", "<sys/msg.h>",
 
185
                        "<bits/nan.h>", "<math.h>",
 
186
                        "<bits/netdb.h>", "<netdb.h>",
 
187
                        "<bits/poll.h>", "<poll.h>",
 
188
                        "<bits/posix1_lim.h>", "<limits.h>",
 
189
                        "<bits/posix2_lim.h>", "<limits.h>",
 
190
                        "<bits/posix_opt.h>", "<unistd.h>",
 
191
                        "<bits/predefs.h>", "<features.h>",
 
192
                        "<bits/printf-ldbl.h>", "<printf.h>",
 
193
                        "<bits/pthreadtypes.h>", "<pthread.h>",
 
194
                        "<bits/resource.h>", "<sys/resource.h>",
 
195
                        "<bits/sched.h>", "<sched.h>",
 
196
                        "<bits/select.h>", "<sys/select.h>",
 
197
                        "<bits/sem.h>", "<sys/sem.h>",
 
198
                        "<bits/semaphore.h>", "<semaphore.h>",
 
199
                        "<bits/setjmp.h>", "<setjmp.h>",
 
200
                        "<bits/shm.h>", "<sys/shm.h>",
 
201
                        "<bits/sigaction.h>", "<signal.h>",
 
202
                        "<bits/sigcontext.h>", "<signal.h>",
 
203
                        "<bits/siginfo.h>", "<signal.h>",
 
204
                        "<bits/signum.h>", "<signal.h>",
 
205
                        "<bits/sigset.h>", "<signal.h>",
 
206
                        "<bits/sigstack.h>", "<signal.h>",
 
207
                        "<bits/sigthread.h>", "<signal.h>",
 
208
                        "<bits/sockaddr.h>", "<sys/un.h>",
 
209
                        "<bits/socket.h>", "<sys/socket.h>",
 
210
                        "<bits/stab.def>", "<stab.h>",
 
211
                        "<bits/stat.h>", "<sys/stat.h>",
 
212
                        "<bits/statfs.h>", "<sys/statfs.h>",
 
213
                        "<bits/statvfs.h>", "<sys/statvfs.h>",
 
214
                        "<bits/stdio-ldbl.h>", "<stdio.h>",
 
215
                        "<bits/stdio-lock.h>", "<libio.h>",
 
216
                        "<bits/stdio.h>", "<stdio.h>",
 
217
                        "<bits/stdio2.h>", "<stdio.h>",
 
218
                        "<bits/stdio_lim.h>", "<stdio.h>",
 
219
                        "<bits/stdlib-ldbl.h>", "<stdlib.h>",
 
220
                        "<bits/stdlib.h>", "<stdlib.h>",
 
221
                        "<bits/string.h>", "<string.h>",
 
222
                        "<bits/string2.h>", "<string.h>",
 
223
                        "<bits/string3.h>", "<string.h>",
 
224
                        "<bits/stropts.h>", "<stropts.h>",
 
225
                        "<bits/sys_errlist.h>", "<stdio.h>",
 
226
                        "<bits/syscall.h>", "<syscall.h>",
 
227
                        "<bits/syslog-ldbl.h>", "<syslog.h>",
 
228
                        "<bits/syslog-path.h>", "<syslog.h>",
 
229
                        "<bits/syslog.h>", "<syslog.h>",
 
230
                        "<bits/termios.h>", "<termios.h>",
 
231
                        "<bits/time.h>", "<sys/time.h>",
 
232
                        "<bits/types.h>", "<sys/types.h>",
 
233
                        "<bits/uio.h>", "<sys/uio.h>",
 
234
                        "<bits/unistd.h>", "<unistd.h>",
 
235
                        "<bits/ustat.h>", "<ustat.h>",
 
236
                        "<bits/utmp.h>", "<utmp.h>",
 
237
                        "<bits/utmpx.h>", "<utmpx.h>",
 
238
                        "<bits/utsname.h>", "<sys/utsname.h>",
 
239
                        "<bits/waitflags.h>", "<sys/wait.h>",
 
240
                        "<bits/waitstatus.h>", "<sys/wait.h>",
 
241
                        "<bits/wchar-ldbl.h>", "<wchar.h>",
 
242
                        "<bits/wchar.h>", "<wchar.h>",
 
243
                        "<bits/wchar2.h>", "<wchar.h>",
 
244
                        "<bits/xopen_lim.h>", "<limits.h>",
 
245
                        "<bits/xtitypes.h>", "<stropts.h>",
 
246
                        "<linux/errno.h>", "<errno.h>",
 
247
                        "<linux/limits.h>", "<limits.h>",
 
248
                        "<linux/socket.h>", "<sys/socket.h>",
 
249
                        "<sys/poll.h>", "<poll.h>",
 
250
                        "<sys/syscall.h>", "<syscall.h>",
 
251
                        "<sys/syslog.h>", "<syslog.h>",
 
252
                        "<sys/ucontext.h>", "<ucontext.h>",
 
253
                        "<sys/ustat.h>", "<ustat.h>",
 
254
                        "<wait.h>", "<sys/wait.h>",
 
255
                };
 
256
 
 
257
        private static final String[] cIncludeMapWeak = new String[] {
 
258
                };
 
259
 
 
260
        @SuppressWarnings("nls")
 
261
        private static final String[] cppIncludeMap = new String[] {
 
262
                        "<auto_ptr.h>", "<memory>",
 
263
                        "<backward/auto_ptr.h>", "<memory>",
 
264
                        "<backward/binders.h>", "<functional>",
 
265
                        "<backward/hash_fun.h>", "<hash_map>",
 
266
                        "<backward/hash_fun.h>", "<hash_set>",
 
267
                        "<backward/hashtable.h>", "<hash_map>",
 
268
                        "<backward/hashtable.h>", "<hash_set>",
 
269
                        "<backward/strstream>", "<strstream>",
 
270
                        "<binders.h>", "<functional>",
 
271
                        "<bits/algorithmfwd.h>", "<algorithm>",
 
272
                        "<bits/allocator.h>", "<memory>",
 
273
                        "<bits/atomic_word.h>", "<ext/atomicity.h>",
 
274
                        "<bits/basic_file.h>", "<fstream>",
 
275
                        "<bits/basic_ios.h>", "<ios>",
 
276
                        "<bits/basic_string.h>", "<string>",
 
277
                        "<bits/basic_string.tcc>", "<string>",
 
278
                        "<bits/boost_concept_check.h>", "<bits/concept_check.h>",
 
279
                        "<bits/boost_sp_shared_count.h>", "<memory>",
 
280
                        "<bits/c++allocator.h>", "<memory>",
 
281
                        "<bits/c++config.h>", "<cstddef>",
 
282
                        "<bits/c++io.h>", "<ext/stdio_sync_filebuf.h>",
 
283
                        "<bits/char_traits.h>", "<string>",
 
284
                        "<bits/cmath.tcc>", "<cmath>",
 
285
                        "<bits/codecvt.h>", "<fstream>",
 
286
                        "<bits/codecvt.h>", "<locale>",
 
287
                        "<bits/ctype_base.h>", "<locale>",
 
288
                        "<bits/ctype_base.h>", "<ios>",
 
289
                        "<bits/ctype_inline.h>", "<locale>",
 
290
                        "<bits/ctype_inline.h>", "<ios>",
 
291
                        "<bits/cxxabi_tweaks.h>", "<cxxabi.h>",
 
292
                        "<bits/deque.tcc>", "<deque>",
 
293
                        "<bits/exception_defines.h>", "<exception>",
 
294
                        "<bits/fstream.tcc>", "<fstream>",
 
295
                        "<bits/functexcept.h>", "<algorithm>",
 
296
                        "<bits/functional_hash.h>", "<unordered_map>",
 
297
                        "<bits/gslice.h>", "<valarray>",
 
298
                        "<bits/gslice_array.h>", "<valarray>",
 
299
                        "<bits/hashtable.h>", "<unordered_map>",
 
300
                        "<bits/hashtable.h>", "<unordered_set>",
 
301
                        "<bits/indirect_array.h>", "<valarray>",
 
302
                        "<bits/ios_base.h>", "<iostream>",
 
303
                        "<bits/ios_base.h>", "<ios>",
 
304
                        "<bits/ios_base.h>", "<iomanip>",
 
305
                        "<bits/istream.tcc>", "<istream>",
 
306
                        "<bits/list.tcc>", "<list>",
 
307
                        "<bits/locale_classes.h>", "<locale>",
 
308
                        "<bits/locale_classes.h>", "<ios>",
 
309
                        "<bits/locale_classes.tcc>", "<locale>",
 
310
                        "<bits/locale_classes.tcc>", "<ios>",
 
311
                        "<bits/locale_facets.h>", "<locale>",
 
312
                        "<bits/locale_facets.h>", "<ios>",
 
313
                        "<bits/locale_facets.tcc>", "<locale>",
 
314
                        "<bits/locale_facets.tcc>", "<ios>",
 
315
                        "<bits/locale_facets_nonio.h>", "<locale>",
 
316
                        "<bits/locale_facets_nonio.tcc>", "<locale>",
 
317
                        "<bits/localefwd.h>", "<locale>",
 
318
                        "<bits/mask_array.h>", "<valarray>",
 
319
                        "<bits/messages_members.h>", "<locale>",
 
320
                        "<bits/move.h>", "<algorithm>",
 
321
                        "<bits/ostream.tcc>", "<ostream>",
 
322
                        "<bits/ostream_insert.h>", "<ostream>",
 
323
                        "<bits/postypes.h>", "<iostream>",
 
324
                        "<bits/postypes.h>", "<string>",
 
325
                        "<bits/shared_ptr.h>", "<memory>",
 
326
                        "<bits/slice_array.h>", "<valarray>",
 
327
                        "<bits/sstream.tcc>", "<sstream>",
 
328
                        "<bits/stl_algo.h>", "<algorithm>",
 
329
                        "<bits/stl_algobase.h>", "<algorithm>",
 
330
                        "<bits/stl_bvector.h>", "<vector>",
 
331
                        "<bits/stl_construct.h>", "<memory>",
 
332
                        "<bits/stl_deque.h>", "<deque>",
 
333
                        "<bits/stl_function.h>", "<functional>",
 
334
                        "<bits/stl_heap.h>", "<queue>",
 
335
                        "<bits/stl_iterator.h>", "<iterator>",
 
336
                        "<bits/stl_iterator_base_funcs.h>", "<iterator>",
 
337
                        "<bits/stl_iterator_base_types.h>", "<iterator>",
 
338
                        "<bits/stl_list.h>", "<list>",
 
339
                        "<bits/stl_map.h>", "<map>",
 
340
                        "<bits/stl_move.h>", "<algorithm>",
 
341
                        "<bits/stl_multimap.h>", "<map>",
 
342
                        "<bits/stl_multiset.h>", "<set>",
 
343
                        "<bits/stl_numeric.h>", "<numeric>",
 
344
                        "<bits/stl_pair.h>", "<utility>",
 
345
                        "<bits/stl_pair.h>", "<tr1/utility>",
 
346
                        "<bits/stl_queue.h>", "<queue>",
 
347
                        "<bits/stl_raw_storage_iter.h>", "<memory>",
 
348
                        "<bits/stl_relops.h>", "<utility>",
 
349
                        "<bits/stl_set.h>", "<set>",
 
350
                        "<bits/stl_stack.h>", "<stack>",
 
351
                        "<bits/stl_tempbuf.h>", "<memory>",
 
352
                        "<bits/stl_tree.h>", "<map>",
 
353
                        "<bits/stl_tree.h>", "<set>",
 
354
                        "<bits/stl_uninitialized.h>", "<memory>",
 
355
                        "<bits/stl_vector.h>", "<vector>",
 
356
                        "<bits/stream_iterator.h>", "<iterator>",
 
357
                        "<bits/streambuf.tcc>", "<streambuf>",
 
358
                        "<bits/streambuf_iterator.h>", "<iterator>",
 
359
                        "<bits/streambuf_iterator.h>", "<ios>",
 
360
                        "<bits/stringfwd.h>", "<string>",
 
361
                        "<bits/unique_ptr.h>", "<memory>",
 
362
                        "<bits/valarray_after.h>", "<valarray>",
 
363
                        "<bits/valarray_array.h>", "<valarray>",
 
364
                        "<bits/valarray_array.tcc>", "<valarray>",
 
365
                        "<bits/valarray_before.h>", "<valarray>",
 
366
                        "<bits/vector.tcc>", "<vector>",
 
367
                        "<debug/safe_iterator.tcc>", "<debug/safe_iterator.h>",
 
368
                        "<exception_defines.h>", "<exception>",
 
369
                        "<ext/algorithm>", "<algorithm>",
 
370
                        "<ext/functional>", "<functional>",
 
371
                        "<ext/hash_map>", "<hash_map>",
 
372
                        "<ext/hash_set>", "<hash_set>",
 
373
                        "<ext/numeric>", "<numeric>",
 
374
                        "<ext/slist>", "<slist>",
 
375
                        "<ext/sso_string_base.h>", "<string>",
 
376
                        "<ext/vstring.h>", "<string>",
 
377
                        "<ext/vstring.tcc>", "<string>",
 
378
                        "<ext/vstring_fwd.h>", "<string>",
 
379
                        "<hash_fun.h>", "<hash_map>",
 
380
                        "<hash_fun.h>", "<hash_set>",
 
381
                        "<hashtable.h>", "<hash_map>",
 
382
                        "<hashtable.h>", "<hash_set>",
 
383
                        "<tr1/bessel_function.tcc>", "<tr1/cmath>",
 
384
                        "<tr1/beta_function.tcc>", "<tr1/cmath>",
 
385
                        "<tr1/ell_integral.tcc>", "<tr1/cmath>",
 
386
                        "<tr1/exp_integral.tcc>", "<tr1/cmath>",
 
387
                        "<tr1/gamma.tcc>", "<tr1/cmath>",
 
388
                        "<tr1/hypergeometric.tcc>", "<tr1/cmath>",
 
389
                        "<tr1/legendre_function.tcc>", "<tr1/cmath>",
 
390
                        "<tr1/modified_bessel_func.tcc>", "<tr1/cmath>",
 
391
                        "<tr1/poly_hermite.tcc>", "<tr1/cmath>",
 
392
                        "<tr1/poly_laguerre.tcc>", "<tr1/cmath>",
 
393
                        "<tr1/riemann_zeta.tcc>", "<tr1/cmath>",
 
394
                        "<tr1_impl/array>", "<array>",
 
395
                        "<tr1_impl/array>", "<tr1/array>",
 
396
                        "<tr1_impl/boost_shared_ptr.h>", "<memory>",
 
397
                        "<tr1_impl/boost_shared_ptr.h>", "<tr1/memory>",
 
398
                        "<tr1_impl/boost_sp_counted_base.h>", "<memory>",
 
399
                        "<tr1_impl/boost_sp_counted_base.h>", "<tr1/memory>",
 
400
                        "<tr1_impl/cctype>", "<cctype>",
 
401
                        "<tr1_impl/cctype>", "<tr1/cctype>",
 
402
                        "<tr1_impl/cfenv>", "<cfenv>",
 
403
                        "<tr1_impl/cfenv>", "<tr1/cfenv>",
 
404
                        "<tr1_impl/cinttypes>", "<cinttypes>",
 
405
                        "<tr1_impl/cinttypes>", "<tr1/cinttypes>",
 
406
                        "<tr1_impl/cmath>", "<cmath>",
 
407
                        "<tr1_impl/cmath>", "<tr1/cmath>",
 
408
                        "<tr1_impl/complex>", "<complex>",
 
409
                        "<tr1_impl/complex>", "<tr1/complex>",
 
410
                        "<tr1_impl/cstdint>", "<cstdint>",
 
411
                        "<tr1_impl/cstdint>", "<tr1/cstdint>",
 
412
                        "<tr1_impl/cstdio>", "<cstdio>",
 
413
                        "<tr1_impl/cstdio>", "<tr1/cstdio>",
 
414
                        "<tr1_impl/cstdlib>", "<cstdlib>",
 
415
                        "<tr1_impl/cstdlib>", "<tr1/cstdlib>",
 
416
                        "<tr1_impl/cwchar>", "<cwchar>",
 
417
                        "<tr1_impl/cwchar>", "<tr1/cwchar>",
 
418
                        "<tr1_impl/cwctype>", "<cwctype>",
 
419
                        "<tr1_impl/cwctype>", "<tr1/cwctype>",
 
420
                        "<tr1_impl/functional>", "<functional>",
 
421
                        "<tr1_impl/functional>", "<tr1/functional>",
 
422
                        "<tr1_impl/functional_hash.h>", "<tr1/functional_hash.h>",
 
423
                        "<tr1_impl/hashtable>", "<tr1/hashtable.h>",
 
424
                        "<tr1_impl/random.tcc>", "<random>",
 
425
                        "<tr1_impl/random.tcc>", "<tr1/random>",
 
426
                        "<tr1_impl/random>", "<random>",
 
427
                        "<tr1_impl/random>", "<tr1/random>",
 
428
                        "<tr1_impl/regex>", "<regex>",
 
429
                        "<tr1_impl/regex>", "<tr1/regex>",
 
430
                        "<tr1_impl/type_traits>", "<tr1/type_traits>",
 
431
                        "<tr1_impl/type_traits>", "<type_traits>",
 
432
                        "<tr1_impl/unordered_map>", "<tr1/unordered_map>",
 
433
                        "<tr1_impl/unordered_map>", "<unordered_map>",
 
434
                        "<tr1_impl/unordered_set>", "<tr1/unordered_set>",
 
435
                        "<tr1_impl/unordered_set>", "<unordered_set>",
 
436
                        "<tr1_impl/utility>", "<tr1/utility>",
 
437
                        "<tr1_impl/utility>", "<utility>",
 
438
                };
 
439
 
 
440
        @SuppressWarnings("nls")
 
441
        private static final String[] cppIncludeMapWeak = new String[] {
 
442
                        "<assert.h>", "<cassert>",
 
443
                        "<complex.h>", "<ccomplex>",
 
444
                        "<ctype.h>", "<cctype>",
 
445
                        "<errno.h>", "<cerrno>",
 
446
                        "<fenv.h>", "<cfenv>",
 
447
                        "<float.h>", "<cfloat>",
 
448
                        "<inttypes.h>", "<cinttypes>",
 
449
                        "<iso646.h>", "<ciso646>",
 
450
                        "<limits.h>", "<climits>",
 
451
                        "<locale.h>", "<clocale>",
 
452
                        "<math.h>", "<cmath>",
 
453
                        "<setjmp.h>", "<csetjmp>",
 
454
                        "<signal.h>", "<csignal>",
 
455
                        "<stdarg.h>", "<cstdarg>",
 
456
                        "<stdbool.h>", "<cstdbool>",
 
457
                        "<stddef.h>", "<cstddef>",
 
458
                        "<stdint.h>", "<cstdint>",
 
459
                        "<stdio.h>", "<cstdio>",
 
460
                        "<stdlib.h>", "<cstdlib>",
 
461
                        "<string.h>", "<cstring>",
 
462
                        "<tgmath.h>", "<ctgmath>",
 
463
                        "<time.h>", "<ctime>",
 
464
                        "<wchar.h>", "<cwchar>",
 
465
                        "<wctype.h>", "<cwctype>",
 
466
                        "<ios>", "<iostream>",
 
467
                        "<ios>", "<istream>",
 
468
                        "<ios>", "<ostream>",
 
469
                        "<iosfwd>", "<ios>",
 
470
                        "<iosfwd>", "<streambuf>",
 
471
                        "<istream>", "<iostream>",
 
472
                        "<istream>", "<fstream>",
 
473
                        "<istream>", "<sstream>",
 
474
                        "<ostream>", "<iostream>",
 
475
                        "<ostream>", "<fstream>",
 
476
                        "<ostream>", "<istream>",
 
477
                        "<ostream>", "<sstream>",
 
478
                        "<streambuf>", "<ios>",
 
479
                };
 
480
 
 
481
        public static List<HeaderSubstitutionMap> getDefaultMaps() {
 
482
                return Arrays.asList(new HeaderSubstitutionMap[] {
 
483
                                new HeaderSubstitutionMap(Messages.GCCHeaderSubstitutionMaps_c_map, false,
 
484
                                                new IncludeMap(true, cIncludeMap),
 
485
                                                new IncludeMap(false, cIncludeMapWeak)),
 
486
                                new HeaderSubstitutionMap(Messages.GCCHeaderSubstitutionMaps_cpp_map, true,
 
487
                                                new IncludeMap(true, cppIncludeMap),
 
488
                                                new IncludeMap(false, cppIncludeMapWeak)),
 
489
                });
 
490
        }
 
491
 
 
492
        public static SymbolExportMap getSymbolExportMap() {
 
493
                return new SymbolExportMap(symbolExportMap);
 
494
        }
 
495
}