source: webkit/trunk/JavaScriptCore/API/WebKitAvailability.h@ 34361

Last change on this file since 34361 was 33053, checked in by [email protected], 17 years ago

<rdar://problem/4859666> WebKit needs availability macros in order to deprecate APIs

Create WebKit availability macros that key off the Mac OS X version being targeted to
determine the WebKit version being targeted. Applications can define
WEBKIT_VERSION_MIN_REQUIRED before including WebKit headers in order to target a specific
version of WebKit.

The availability header is being added to JavaScriptCore rather than WebKit as JavaScriptCore
is the lowest-level portion of the public WebKit API.

Reviewed by Tim Hatcher.

  • API/WebKitAvailability.h: Added.
  • JavaScriptCore.xcodeproj/project.pbxproj:
File size: 25.8 KB
Line 
1/*
2 * Copyright (C) 2008 Apple Inc. All Rights Reserved.
3 *
4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions
6 * are met:
7 * 1. Redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer.
9 * 2. Redistributions in binary form must reproduce the above copyright
10 * notice, this list of conditions and the following disclaimer in the
11 * documentation and/or other materials provided with the distribution.
12 *
13 * THIS SOFTWARE IS PROVIDED BY APPLE INC. ``AS IS'' AND ANY
14 * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
15 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
16 * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR
17 * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
18 * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
19 * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
20 * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
21 * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
22 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
23 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
24 */
25
26#ifndef __WebKitAvailability__
27#define __WebKitAvailability__
28
29#import <AvailabilityMacros.h>
30
31/* The structure of this header is based on AvailabilityMacros.h. The major difference is that the availability
32 macros are defined in terms of WebKit version numbers rather than Mac OS X system version numbers, as WebKit
33 releases span multiple versions of Mac OS X.
34*/
35
36#define WEBKIT_VERSION_1_0 0x0100
37#define WEBKIT_VERSION_1_1 0x0110
38#define WEBKIT_VERSION_1_2 0x0120
39#define WEBKIT_VERSION_1_3 0x0130
40#define WEBKIT_VERSION_2_0 0x0200
41#define WEBKIT_VERSION_3_0 0x0300
42#define WEBKIT_VERSION_3_1 0x0310
43#define WEBKIT_VERSION_LATEST 0x9999
44
45
46
47/* If minimum WebKit version is not specified, assume the version that shipped with the target Mac OS X version */
48#ifndef WEBKIT_VERSION_MIN_REQUIRED
49 #if !defined(MAC_OS_X_VERSION_10_2) || MAC_OS_X_VERSION_MIN_REQUIRED < MAC_OS_X_VERSION_10_2
50 #error WebKit was not available prior to Mac OS X 10.2
51 #elif !defined(MAC_OS_X_VERSION_10_3) || MAC_OS_X_VERSION_MIN_REQUIRED < MAC_OS_X_VERSION_10_3
52 /* WebKit 1.0 is the only version available on Mac OS X 10.2. */
53 #define WEBKIT_VERSION_MIN_REQUIRED WEBKIT_VERSION_1_0
54 #elif !defined(MAC_OS_X_VERSION_10_4) || MAC_OS_X_VERSION_MIN_REQUIRED < MAC_OS_X_VERSION_10_4
55 /* WebKit 1.1 is the version that shipped on Mac OS X 10.3. */
56 #define WEBKIT_VERSION_MIN_REQUIRED WEBKIT_VERSION_1_1
57 #elif !defined(MAC_OS_X_VERSION_10_5) || MAC_OS_X_VERSION_MIN_REQUIRED < MAC_OS_X_VERSION_10_5
58 /* WebKit 2.0 is the version that shipped on Mac OS X 10.4. */
59 #define WEBKIT_VERSION_MIN_REQUIRED WEBKIT_VERSION_2_0
60 #elif !defined(MAC_OS_X_VERSION_10_6) || MAC_OS_X_VERSION_MIN_REQUIRED < MAC_OS_X_VERSION_10_6
61 /* WebKit 3.0 is the version that shipped on Mac OS X 10.5. */
62 #define WEBKIT_VERSION_MIN_REQUIRED WEBKIT_VERSION_3_0
63 #else
64 #define WEBKIT_VERSION_MIN_REQUIRED WEBKIT_VERSION_LATEST
65 #endif
66#endif
67
68
69/* If maximum WebKit version is not specified, assume largerof(latest, minimum) */
70#ifndef WEBKIT_VERSION_MAX_ALLOWED
71 #if WEBKIT_VERSION_MIN_REQUIRED > WEBKIT_VERSION_LATEST
72 #define WEBKIT_VERSION_MAX_ALLOWED WEBKIT_VERSION_MIN_REQUIRED
73 #else
74 #define WEBKIT_VERSION_MAX_ALLOWED WEBKIT_VERSION_LATEST
75 #endif
76#endif
77
78
79/* Sanity check the configured values */
80#if WEBKIT_VERSION_MAX_ALLOWED < WEBKIT_VERSION_MIN_REQUIRED
81 #error WEBKIT_VERSION_MAX_ALLOWED must be >= WEBKIT_VERSION_MIN_REQUIRED
82#endif
83#if WEBKIT_VERSION_MIN_REQUIRED < WEBKIT_VERSION_1_0
84 #error WEBKIT_VERSION_MIN_REQUIRED must be >= WEBKIT_VERSION_1_0
85#endif
86
87
88
89
90
91
92/*
93 * AVAILABLE_WEBKIT_VERSION_1_0_AND_LATER
94 *
95 * Used on functions introduced in WebKit 1.0
96 */
97#define AVAILABLE_WEBKIT_VERSION_1_0_AND_LATER
98
99/*
100 * AVAILABLE_WEBKIT_VERSION_1_0_AND_LATER_BUT_DEPRECATED
101 *
102 * Used on functions introduced in WebKit 1.0,
103 * and deprecated in WebKit 1.0
104 */
105#define AVAILABLE_WEBKIT_VERSION_1_0_AND_LATER_BUT_DEPRECATED DEPRECATED_ATTRIBUTE
106
107/*
108 * DEPRECATED_IN_WEBKIT_VERSION_1_0_AND_LATER
109 *
110 * Used on types deprecated in WebKit 1.0
111 */
112#define DEPRECATED_IN_WEBKIT_VERSION_1_0_AND_LATER DEPRECATED_ATTRIBUTE
113
114
115
116
117
118
119/*
120 * AVAILABLE_WEBKIT_VERSION_1_1_AND_LATER
121 *
122 * Used on declarations introduced in WebKit 1.1
123 */
124#if WEBKIT_VERSION_MAX_ALLOWED < WEBKIT_VERSION_1_1
125 #define AVAILABLE_WEBKIT_VERSION_1_1_AND_LATER UNAVAILABLE_ATTRIBUTE
126#elif WEBKIT_VERSION_MIN_REQUIRED < WEBKIT_VERSION_1_1
127 #define AVAILABLE_WEBKIT_VERSION_1_1_AND_LATER WEAK_IMPORT_ATTRIBUTE
128#else
129 #define AVAILABLE_WEBKIT_VERSION_1_1_AND_LATER
130#endif
131
132/*
133 * AVAILABLE_WEBKIT_VERSION_1_1_AND_LATER_BUT_DEPRECATED
134 *
135 * Used on declarations introduced in WebKit 1.1,
136 * and deprecated in WebKit 1.1
137 */
138#if WEBKIT_VERSION_MIN_REQUIRED >= WEBKIT_VERSION_1_1
139 #define AVAILABLE_WEBKIT_VERSION_1_1_AND_LATER_BUT_DEPRECATED DEPRECATED_ATTRIBUTE
140#else
141 #define AVAILABLE_WEBKIT_VERSION_1_1_AND_LATER_BUT_DEPRECATED AVAILABLE_WEBKIT_VERSION_1_1_AND_LATER
142#endif
143
144/*
145 * AVAILABLE_WEBKIT_VERSION_1_0_AND_LATER_BUT_DEPRECATED_IN_WEBKIT_VERSION_1_1
146 *
147 * Used on declarations introduced in WebKit 1.0,
148 * but later deprecated in WebKit 1.1
149 */
150#if WEBKIT_VERSION_MIN_REQUIRED >= WEBKIT_VERSION_1_1
151 #define AVAILABLE_WEBKIT_VERSION_1_0_AND_LATER_BUT_DEPRECATED_IN_WEBKIT_VERSION_1_1 DEPRECATED_ATTRIBUTE
152#else
153 #define AVAILABLE_WEBKIT_VERSION_1_0_AND_LATER_BUT_DEPRECATED_IN_WEBKIT_VERSION_1_1 AVAILABLE_WEBKIT_VERSION_1_0_AND_LATER
154#endif
155
156/*
157 * DEPRECATED_IN_WEBKIT_VERSION_1_1_AND_LATER
158 *
159 * Used on types deprecated in WebKit 1.1
160 */
161#if WEBKIT_VERSION_MIN_REQUIRED >= WEBKIT_VERSION_1_1
162 #define DEPRECATED_IN_WEBKIT_VERSION_1_1_AND_LATER DEPRECATED_ATTRIBUTE
163#else
164 #define DEPRECATED_IN_WEBKIT_VERSION_1_1_AND_LATER
165#endif
166
167
168
169
170
171
172/*
173 * AVAILABLE_WEBKIT_VERSION_1_2_AND_LATER
174 *
175 * Used on declarations introduced in WebKit 1.2
176 */
177#if WEBKIT_VERSION_MAX_ALLOWED < WEBKIT_VERSION_1_2
178 #define AVAILABLE_WEBKIT_VERSION_1_2_AND_LATER UNAVAILABLE_ATTRIBUTE
179#elif WEBKIT_VERSION_MIN_REQUIRED < WEBKIT_VERSION_1_2
180 #define AVAILABLE_WEBKIT_VERSION_1_2_AND_LATER WEAK_IMPORT_ATTRIBUTE
181#else
182 #define AVAILABLE_WEBKIT_VERSION_1_2_AND_LATER
183#endif
184
185/*
186 * AVAILABLE_WEBKIT_VERSION_1_2_AND_LATER_BUT_DEPRECATED
187 *
188 * Used on declarations introduced in WebKit 1.2,
189 * and deprecated in WebKit 1.2
190 */
191#if WEBKIT_VERSION_MIN_REQUIRED >= WEBKIT_VERSION_1_2
192 #define AVAILABLE_WEBKIT_VERSION_1_2_AND_LATER_BUT_DEPRECATED DEPRECATED_ATTRIBUTE
193#else
194 #define AVAILABLE_WEBKIT_VERSION_1_2_AND_LATER_BUT_DEPRECATED AVAILABLE_WEBKIT_VERSION_1_2_AND_LATER
195#endif
196
197/*
198 * AVAILABLE_WEBKIT_VERSION_1_0_AND_LATER_BUT_DEPRECATED_IN_WEBKIT_VERSION_1_2
199 *
200 * Used on declarations introduced in WebKit 1.0,
201 * but later deprecated in WebKit 1.2
202 */
203#if WEBKIT_VERSION_MIN_REQUIRED >= WEBKIT_VERSION_1_2
204 #define AVAILABLE_WEBKIT_VERSION_1_0_AND_LATER_BUT_DEPRECATED_IN_WEBKIT_VERSION_1_2 DEPRECATED_ATTRIBUTE
205#else
206 #define AVAILABLE_WEBKIT_VERSION_1_0_AND_LATER_BUT_DEPRECATED_IN_WEBKIT_VERSION_1_2 AVAILABLE_WEBKIT_VERSION_1_0_AND_LATER
207#endif
208
209/*
210 * AVAILABLE_WEBKIT_VERSION_1_1_AND_LATER_BUT_DEPRECATED_IN_WEBKIT_VERSION_1_2
211 *
212 * Used on declarations introduced in WebKit 1.1,
213 * but later deprecated in WebKit 1.2
214 */
215#if WEBKIT_VERSION_MIN_REQUIRED >= WEBKIT_VERSION_1_2
216 #define AVAILABLE_WEBKIT_VERSION_1_1_AND_LATER_BUT_DEPRECATED_IN_WEBKIT_VERSION_1_2 DEPRECATED_ATTRIBUTE
217#else
218 #define AVAILABLE_WEBKIT_VERSION_1_1_AND_LATER_BUT_DEPRECATED_IN_WEBKIT_VERSION_1_2 AVAILABLE_WEBKIT_VERSION_1_1_AND_LATER
219#endif
220
221/*
222 * DEPRECATED_IN_WEBKIT_VERSION_1_2_AND_LATER
223 *
224 * Used on types deprecated in WebKit 1.2
225 */
226#if WEBKIT_VERSION_MIN_REQUIRED >= WEBKIT_VERSION_1_2
227 #define DEPRECATED_IN_WEBKIT_VERSION_1_2_AND_LATER DEPRECATED_ATTRIBUTE
228#else
229 #define DEPRECATED_IN_WEBKIT_VERSION_1_2_AND_LATER
230#endif
231
232
233
234
235
236
237/*
238 * AVAILABLE_WEBKIT_VERSION_1_3_AND_LATER
239 *
240 * Used on declarations introduced in WebKit 1.3
241 */
242#if WEBKIT_VERSION_MAX_ALLOWED < WEBKIT_VERSION_1_3
243 #define AVAILABLE_WEBKIT_VERSION_1_3_AND_LATER UNAVAILABLE_ATTRIBUTE
244#elif WEBKIT_VERSION_MIN_REQUIRED < WEBKIT_VERSION_1_3
245 #define AVAILABLE_WEBKIT_VERSION_1_3_AND_LATER WEAK_IMPORT_ATTRIBUTE
246#else
247 #define AVAILABLE_WEBKIT_VERSION_1_3_AND_LATER
248#endif
249
250/*
251 * AVAILABLE_WEBKIT_VERSION_1_3_AND_LATER_BUT_DEPRECATED
252 *
253 * Used on declarations introduced in WebKit 1.3,
254 * and deprecated in WebKit 1.3
255 */
256#if WEBKIT_VERSION_MIN_REQUIRED >= WEBKIT_VERSION_1_3
257 #define AVAILABLE_WEBKIT_VERSION_1_3_AND_LATER_BUT_DEPRECATED DEPRECATED_ATTRIBUTE
258#else
259 #define AVAILABLE_WEBKIT_VERSION_1_3_AND_LATER_BUT_DEPRECATED AVAILABLE_WEBKIT_VERSION_1_3_AND_LATER
260#endif
261
262/*
263 * AVAILABLE_WEBKIT_VERSION_1_0_AND_LATER_BUT_DEPRECATED_IN_WEBKIT_VERSION_1_3
264 *
265 * Used on declarations introduced in WebKit 1.0,
266 * but later deprecated in WebKit 1.3
267 */
268#if WEBKIT_VERSION_MIN_REQUIRED >= WEBKIT_VERSION_1_3
269 #define AVAILABLE_WEBKIT_VERSION_1_0_AND_LATER_BUT_DEPRECATED_IN_WEBKIT_VERSION_1_3 DEPRECATED_ATTRIBUTE
270#else
271 #define AVAILABLE_WEBKIT_VERSION_1_0_AND_LATER_BUT_DEPRECATED_IN_WEBKIT_VERSION_1_3 AVAILABLE_WEBKIT_VERSION_1_0_AND_LATER
272#endif
273
274/*
275 * AVAILABLE_WEBKIT_VERSION_1_1_AND_LATER_BUT_DEPRECATED_IN_WEBKIT_VERSION_1_3
276 *
277 * Used on declarations introduced in WebKit 1.1,
278 * but later deprecated in WebKit 1.3
279 */
280#if WEBKIT_VERSION_MIN_REQUIRED >= WEBKIT_VERSION_1_3
281 #define AVAILABLE_WEBKIT_VERSION_1_1_AND_LATER_BUT_DEPRECATED_IN_WEBKIT_VERSION_1_3 DEPRECATED_ATTRIBUTE
282#else
283 #define AVAILABLE_WEBKIT_VERSION_1_1_AND_LATER_BUT_DEPRECATED_IN_WEBKIT_VERSION_1_3 AVAILABLE_WEBKIT_VERSION_1_1_AND_LATER
284#endif
285
286/*
287 * AVAILABLE_WEBKIT_VERSION_1_2_AND_LATER_BUT_DEPRECATED_IN_WEBKIT_VERSION_1_3
288 *
289 * Used on declarations introduced in WebKit 1.2,
290 * but later deprecated in WebKit 1.3
291 */
292#if WEBKIT_VERSION_MIN_REQUIRED >= WEBKIT_VERSION_1_3
293 #define AVAILABLE_WEBKIT_VERSION_1_2_AND_LATER_BUT_DEPRECATED_IN_WEBKIT_VERSION_1_3 DEPRECATED_ATTRIBUTE
294#else
295 #define AVAILABLE_WEBKIT_VERSION_1_2_AND_LATER_BUT_DEPRECATED_IN_WEBKIT_VERSION_1_3 AVAILABLE_WEBKIT_VERSION_1_2_AND_LATER
296#endif
297
298/*
299 * DEPRECATED_IN_WEBKIT_VERSION_1_3_AND_LATER
300 *
301 * Used on types deprecated in WebKit 1.3
302 */
303#if WEBKIT_VERSION_MIN_REQUIRED >= WEBKIT_VERSION_1_3
304 #define DEPRECATED_IN_WEBKIT_VERSION_1_3_AND_LATER DEPRECATED_ATTRIBUTE
305#else
306 #define DEPRECATED_IN_WEBKIT_VERSION_1_3_AND_LATER
307#endif
308
309
310
311
312
313
314/*
315 * AVAILABLE_WEBKIT_VERSION_2_0_AND_LATER
316 *
317 * Used on declarations introduced in WebKit 2.0
318 */
319#if WEBKIT_VERSION_MAX_ALLOWED < WEBKIT_VERSION_2_0
320 #define AVAILABLE_WEBKIT_VERSION_2_0_AND_LATER UNAVAILABLE_ATTRIBUTE
321#elif WEBKIT_VERSION_MIN_REQUIRED < WEBKIT_VERSION_2_0
322 #define AVAILABLE_WEBKIT_VERSION_2_0_AND_LATER WEAK_IMPORT_ATTRIBUTE
323#else
324 #define AVAILABLE_WEBKIT_VERSION_2_0_AND_LATER
325#endif
326
327/*
328 * AVAILABLE_WEBKIT_VERSION_2_0_AND_LATER_BUT_DEPRECATED
329 *
330 * Used on declarations introduced in WebKit 2.0,
331 * and deprecated in WebKit 2.0
332 */
333#if WEBKIT_VERSION_MIN_REQUIRED >= WEBKIT_VERSION_2_0
334 #define AVAILABLE_WEBKIT_VERSION_2_0_AND_LATER_BUT_DEPRECATED DEPRECATED_ATTRIBUTE
335#else
336 #define AVAILABLE_WEBKIT_VERSION_2_0_AND_LATER_BUT_DEPRECATED AVAILABLE_WEBKIT_VERSION_2_0_AND_LATER
337#endif
338
339/*
340 * AVAILABLE_WEBKIT_VERSION_1_0_AND_LATER_BUT_DEPRECATED_IN_WEBKIT_VERSION_2_0
341 *
342 * Used on declarations introduced in WebKit 1.0,
343 * but later deprecated in WebKit 2.0
344 */
345#if WEBKIT_VERSION_MIN_REQUIRED >= WEBKIT_VERSION_2_0
346 #define AVAILABLE_WEBKIT_VERSION_1_0_AND_LATER_BUT_DEPRECATED_IN_WEBKIT_VERSION_2_0 DEPRECATED_ATTRIBUTE
347#else
348 #define AVAILABLE_WEBKIT_VERSION_1_0_AND_LATER_BUT_DEPRECATED_IN_WEBKIT_VERSION_2_0 AVAILABLE_WEBKIT_VERSION_1_0_AND_LATER
349#endif
350
351/*
352 * AVAILABLE_WEBKIT_VERSION_1_1_AND_LATER_BUT_DEPRECATED_IN_WEBKIT_VERSION_2_0
353 *
354 * Used on declarations introduced in WebKit 1.1,
355 * but later deprecated in WebKit 2.0
356 */
357#if WEBKIT_VERSION_MIN_REQUIRED >= WEBKIT_VERSION_2_0
358 #define AVAILABLE_WEBKIT_VERSION_1_1_AND_LATER_BUT_DEPRECATED_IN_WEBKIT_VERSION_2_0 DEPRECATED_ATTRIBUTE
359#else
360 #define AVAILABLE_WEBKIT_VERSION_1_1_AND_LATER_BUT_DEPRECATED_IN_WEBKIT_VERSION_2_0 AVAILABLE_WEBKIT_VERSION_1_1_AND_LATER
361#endif
362
363/*
364 * AVAILABLE_WEBKIT_VERSION_1_2_AND_LATER_BUT_DEPRECATED_IN_WEBKIT_VERSION_2_0
365 *
366 * Used on declarations introduced in WebKit 1.2,
367 * but later deprecated in WebKit 2.0
368 */
369#if WEBKIT_VERSION_MIN_REQUIRED >= WEBKIT_VERSION_2_0
370 #define AVAILABLE_WEBKIT_VERSION_1_2_AND_LATER_BUT_DEPRECATED_IN_WEBKIT_VERSION_2_0 DEPRECATED_ATTRIBUTE
371#else
372 #define AVAILABLE_WEBKIT_VERSION_1_2_AND_LATER_BUT_DEPRECATED_IN_WEBKIT_VERSION_2_0 AVAILABLE_WEBKIT_VERSION_1_2_AND_LATER
373#endif
374
375/*
376 * AVAILABLE_WEBKIT_VERSION_1_3_AND_LATER_BUT_DEPRECATED_IN_WEBKIT_VERSION_2_0
377 *
378 * Used on declarations introduced in WebKit 1.3,
379 * but later deprecated in WebKit 2.0
380 */
381#if WEBKIT_VERSION_MIN_REQUIRED >= WEBKIT_VERSION_2_0
382 #define AVAILABLE_WEBKIT_VERSION_1_3_AND_LATER_BUT_DEPRECATED_IN_WEBKIT_VERSION_2_0 DEPRECATED_ATTRIBUTE
383#else
384 #define AVAILABLE_WEBKIT_VERSION_1_3_AND_LATER_BUT_DEPRECATED_IN_WEBKIT_VERSION_2_0 AVAILABLE_WEBKIT_VERSION_1_3_AND_LATER
385#endif
386
387/*
388 * DEPRECATED_IN_WEBKIT_VERSION_2_0_AND_LATER
389 *
390 * Used on types deprecated in WebKit 2.0
391 */
392#if WEBKIT_VERSION_MIN_REQUIRED >= WEBKIT_VERSION_2_0
393 #define DEPRECATED_IN_WEBKIT_VERSION_2_0_AND_LATER DEPRECATED_ATTRIBUTE
394#else
395 #define DEPRECATED_IN_WEBKIT_VERSION_2_0_AND_LATER
396#endif
397
398
399
400
401
402
403/*
404 * AVAILABLE_WEBKIT_VERSION_3_0_AND_LATER
405 *
406 * Used on declarations introduced in WebKit 3.0
407 */
408#if WEBKIT_VERSION_MAX_ALLOWED < WEBKIT_VERSION_3_0
409 #define AVAILABLE_WEBKIT_VERSION_3_0_AND_LATER UNAVAILABLE_ATTRIBUTE
410#elif WEBKIT_VERSION_MIN_REQUIRED < WEBKIT_VERSION_3_0
411 #define AVAILABLE_WEBKIT_VERSION_3_0_AND_LATER WEAK_IMPORT_ATTRIBUTE
412#else
413 #define AVAILABLE_WEBKIT_VERSION_3_0_AND_LATER
414#endif
415
416/*
417 * AVAILABLE_WEBKIT_VERSION_3_0_AND_LATER_BUT_DEPRECATED
418 *
419 * Used on declarations introduced in WebKit 3.0,
420 * and deprecated in WebKit 3.0
421 */
422#if WEBKIT_VERSION_MIN_REQUIRED >= WEBKIT_VERSION_3_0
423 #define AVAILABLE_WEBKIT_VERSION_3_0_AND_LATER_BUT_DEPRECATED DEPRECATED_ATTRIBUTE
424#else
425 #define AVAILABLE_WEBKIT_VERSION_3_0_AND_LATER_BUT_DEPRECATED AVAILABLE_WEBKIT_VERSION_3_0_AND_LATER
426#endif
427
428/*
429 * AVAILABLE_WEBKIT_VERSION_1_0_AND_LATER_BUT_DEPRECATED_IN_WEBKIT_VERSION_3_0
430 *
431 * Used on declarations introduced in WebKit 1.0,
432 * but later deprecated in WebKit 3.0
433 */
434#if WEBKIT_VERSION_MIN_REQUIRED >= WEBKIT_VERSION_3_0
435 #define AVAILABLE_WEBKIT_VERSION_1_0_AND_LATER_BUT_DEPRECATED_IN_WEBKIT_VERSION_3_0 DEPRECATED_ATTRIBUTE
436#else
437 #define AVAILABLE_WEBKIT_VERSION_1_0_AND_LATER_BUT_DEPRECATED_IN_WEBKIT_VERSION_3_0 AVAILABLE_WEBKIT_VERSION_1_0_AND_LATER
438#endif
439
440/*
441 * AVAILABLE_WEBKIT_VERSION_1_1_AND_LATER_BUT_DEPRECATED_IN_WEBKIT_VERSION_3_0
442 *
443 * Used on declarations introduced in WebKit 1.1,
444 * but later deprecated in WebKit 3.0
445 */
446#if WEBKIT_VERSION_MIN_REQUIRED >= WEBKIT_VERSION_3_0
447 #define AVAILABLE_WEBKIT_VERSION_1_1_AND_LATER_BUT_DEPRECATED_IN_WEBKIT_VERSION_3_0 DEPRECATED_ATTRIBUTE
448#else
449 #define AVAILABLE_WEBKIT_VERSION_1_1_AND_LATER_BUT_DEPRECATED_IN_WEBKIT_VERSION_3_0 AVAILABLE_WEBKIT_VERSION_1_1_AND_LATER
450#endif
451
452/*
453 * AVAILABLE_WEBKIT_VERSION_1_2_AND_LATER_BUT_DEPRECATED_IN_WEBKIT_VERSION_3_0
454 *
455 * Used on declarations introduced in WebKit 1.2,
456 * but later deprecated in WebKit 3.0
457 */
458#if WEBKIT_VERSION_MIN_REQUIRED >= WEBKIT_VERSION_3_0
459 #define AVAILABLE_WEBKIT_VERSION_1_2_AND_LATER_BUT_DEPRECATED_IN_WEBKIT_VERSION_3_0 DEPRECATED_ATTRIBUTE
460#else
461 #define AVAILABLE_WEBKIT_VERSION_1_2_AND_LATER_BUT_DEPRECATED_IN_WEBKIT_VERSION_3_0 AVAILABLE_WEBKIT_VERSION_1_2_AND_LATER
462#endif
463
464/*
465 * AVAILABLE_WEBKIT_VERSION_1_3_AND_LATER_BUT_DEPRECATED_IN_WEBKIT_VERSION_3_0
466 *
467 * Used on declarations introduced in WebKit 1.3,
468 * but later deprecated in WebKit 3.0
469 */
470#if WEBKIT_VERSION_MIN_REQUIRED >= WEBKIT_VERSION_3_0
471 #define AVAILABLE_WEBKIT_VERSION_1_3_AND_LATER_BUT_DEPRECATED_IN_WEBKIT_VERSION_3_0 DEPRECATED_ATTRIBUTE
472#else
473 #define AVAILABLE_WEBKIT_VERSION_1_3_AND_LATER_BUT_DEPRECATED_IN_WEBKIT_VERSION_3_0 AVAILABLE_WEBKIT_VERSION_1_3_AND_LATER
474#endif
475
476/*
477 * AVAILABLE_WEBKIT_VERSION_2_0_AND_LATER_BUT_DEPRECATED_IN_WEBKIT_VERSION_3_0
478 *
479 * Used on declarations introduced in WebKit 2.0,
480 * but later deprecated in WebKit 3.0
481 */
482#if WEBKIT_VERSION_MIN_REQUIRED >= WEBKIT_VERSION_3_0
483 #define AVAILABLE_WEBKIT_VERSION_2_0_AND_LATER_BUT_DEPRECATED_IN_WEBKIT_VERSION_3_0 DEPRECATED_ATTRIBUTE
484#else
485 #define AVAILABLE_WEBKIT_VERSION_2_0_AND_LATER_BUT_DEPRECATED_IN_WEBKIT_VERSION_3_0 AVAILABLE_WEBKIT_VERSION_2_0_AND_LATER
486#endif
487
488/*
489 * DEPRECATED_IN_WEBKIT_VERSION_3_0_AND_LATER
490 *
491 * Used on types deprecated in WebKit 3.0
492 */
493#if WEBKIT_VERSION_MIN_REQUIRED >= WEBKIT_VERSION_3_0
494 #define DEPRECATED_IN_WEBKIT_VERSION_3_0_AND_LATER DEPRECATED_ATTRIBUTE
495#else
496 #define DEPRECATED_IN_WEBKIT_VERSION_3_0_AND_LATER
497#endif
498
499
500
501
502
503
504/*
505 * AVAILABLE_WEBKIT_VERSION_3_1_AND_LATER
506 *
507 * Used on declarations introduced in WebKit 3.1
508 */
509#if WEBKIT_VERSION_MAX_ALLOWED < WEBKIT_VERSION_3_1
510 #define AVAILABLE_WEBKIT_VERSION_3_1_AND_LATER UNAVAILABLE_ATTRIBUTE
511#elif WEBKIT_VERSION_MIN_REQUIRED < WEBKIT_VERSION_3_1
512 #define AVAILABLE_WEBKIT_VERSION_3_1_AND_LATER WEAK_IMPORT_ATTRIBUTE
513#else
514 #define AVAILABLE_WEBKIT_VERSION_3_1_AND_LATER
515#endif
516
517/*
518 * AVAILABLE_WEBKIT_VERSION_3_1_AND_LATER_BUT_DEPRECATED
519 *
520 * Used on declarations introduced in WebKit 3.1,
521 * and deprecated in WebKit 3.1
522 */
523#if WEBKIT_VERSION_MIN_REQUIRED >= WEBKIT_VERSION_3_1
524 #define AVAILABLE_WEBKIT_VERSION_3_1_AND_LATER_BUT_DEPRECATED DEPRECATED_ATTRIBUTE
525#else
526 #define AVAILABLE_WEBKIT_VERSION_3_1_AND_LATER_BUT_DEPRECATED AVAILABLE_WEBKIT_VERSION_3_1_AND_LATER
527#endif
528
529/*
530 * AVAILABLE_WEBKIT_VERSION_1_0_AND_LATER_BUT_DEPRECATED_IN_WEBKIT_VERSION_3_1
531 *
532 * Used on declarations introduced in WebKit 1.0,
533 * but later deprecated in WebKit 3.1
534 */
535#if WEBKIT_VERSION_MIN_REQUIRED >= WEBKIT_VERSION_3_1
536 #define AVAILABLE_WEBKIT_VERSION_1_0_AND_LATER_BUT_DEPRECATED_IN_WEBKIT_VERSION_3_1 DEPRECATED_ATTRIBUTE
537#else
538 #define AVAILABLE_WEBKIT_VERSION_1_0_AND_LATER_BUT_DEPRECATED_IN_WEBKIT_VERSION_3_1 AVAILABLE_WEBKIT_VERSION_1_0_AND_LATER
539#endif
540
541/*
542 * AVAILABLE_WEBKIT_VERSION_1_1_AND_LATER_BUT_DEPRECATED_IN_WEBKIT_VERSION_3_1
543 *
544 * Used on declarations introduced in WebKit 1.1,
545 * but later deprecated in WebKit 3.1
546 */
547#if WEBKIT_VERSION_MIN_REQUIRED >= WEBKIT_VERSION_3_1
548 #define AVAILABLE_WEBKIT_VERSION_1_1_AND_LATER_BUT_DEPRECATED_IN_WEBKIT_VERSION_3_1 DEPRECATED_ATTRIBUTE
549#else
550 #define AVAILABLE_WEBKIT_VERSION_1_1_AND_LATER_BUT_DEPRECATED_IN_WEBKIT_VERSION_3_1 AVAILABLE_WEBKIT_VERSION_1_1_AND_LATER
551#endif
552
553/*
554 * AVAILABLE_WEBKIT_VERSION_1_2_AND_LATER_BUT_DEPRECATED_IN_WEBKIT_VERSION_3_1
555 *
556 * Used on declarations introduced in WebKit 1.2,
557 * but later deprecated in WebKit 3.1
558 */
559#if WEBKIT_VERSION_MIN_REQUIRED >= WEBKIT_VERSION_3_1
560 #define AVAILABLE_WEBKIT_VERSION_1_2_AND_LATER_BUT_DEPRECATED_IN_WEBKIT_VERSION_3_1 DEPRECATED_ATTRIBUTE
561#else
562 #define AVAILABLE_WEBKIT_VERSION_1_2_AND_LATER_BUT_DEPRECATED_IN_WEBKIT_VERSION_3_1 AVAILABLE_WEBKIT_VERSION_1_2_AND_LATER
563#endif
564
565/*
566 * AVAILABLE_WEBKIT_VERSION_1_3_AND_LATER_BUT_DEPRECATED_IN_WEBKIT_VERSION_3_1
567 *
568 * Used on declarations introduced in WebKit 1.3,
569 * but later deprecated in WebKit 3.1
570 */
571#if WEBKIT_VERSION_MIN_REQUIRED >= WEBKIT_VERSION_3_1
572 #define AVAILABLE_WEBKIT_VERSION_1_3_AND_LATER_BUT_DEPRECATED_IN_WEBKIT_VERSION_3_1 DEPRECATED_ATTRIBUTE
573#else
574 #define AVAILABLE_WEBKIT_VERSION_1_3_AND_LATER_BUT_DEPRECATED_IN_WEBKIT_VERSION_3_1 AVAILABLE_WEBKIT_VERSION_1_3_AND_LATER
575#endif
576
577/*
578 * AVAILABLE_WEBKIT_VERSION_2_0_AND_LATER_BUT_DEPRECATED_IN_WEBKIT_VERSION_3_1
579 *
580 * Used on declarations introduced in WebKit 2.0,
581 * but later deprecated in WebKit 3.1
582 */
583#if WEBKIT_VERSION_MIN_REQUIRED >= WEBKIT_VERSION_3_1
584 #define AVAILABLE_WEBKIT_VERSION_2_0_AND_LATER_BUT_DEPRECATED_IN_WEBKIT_VERSION_3_1 DEPRECATED_ATTRIBUTE
585#else
586 #define AVAILABLE_WEBKIT_VERSION_2_0_AND_LATER_BUT_DEPRECATED_IN_WEBKIT_VERSION_3_1 AVAILABLE_WEBKIT_VERSION_2_0_AND_LATER
587#endif
588
589/*
590 * AVAILABLE_WEBKIT_VERSION_3_0_AND_LATER_BUT_DEPRECATED_IN_WEBKIT_VERSION_3_1
591 *
592 * Used on declarations introduced in WebKit 3.0,
593 * but later deprecated in WebKit 3.1
594 */
595#if WEBKIT_VERSION_MIN_REQUIRED >= WEBKIT_VERSION_3_1
596 #define AVAILABLE_WEBKIT_VERSION_3_0_AND_LATER_BUT_DEPRECATED_IN_WEBKIT_VERSION_3_1 DEPRECATED_ATTRIBUTE
597#else
598 #define AVAILABLE_WEBKIT_VERSION_3_0_AND_LATER_BUT_DEPRECATED_IN_WEBKIT_VERSION_3_1 AVAILABLE_WEBKIT_VERSION_3_0_AND_LATER
599#endif
600
601/*
602 * DEPRECATED_IN_WEBKIT_VERSION_3_1_AND_LATER
603 *
604 * Used on types deprecated in WebKit 3.1
605 */
606#if WEBKIT_VERSION_MIN_REQUIRED >= WEBKIT_VERSION_3_1
607 #define DEPRECATED_IN_WEBKIT_VERSION_3_1_AND_LATER DEPRECATED_ATTRIBUTE
608#else
609 #define DEPRECATED_IN_WEBKIT_VERSION_3_1_AND_LATER
610#endif
611
612
613
614
615
616
617/*
618 * AVAILABLE_AFTER_WEBKIT_VERSION_3_1
619 *
620 * Used on declarations introduced after WebKit 3.1
621 */
622#if WEBKIT_VERSION_MAX_ALLOWED < WEBKIT_VERSION_LATEST
623 #define AVAILABLE_AFTER_WEBKIT_VERSION_3_1 UNAVAILABLE_ATTRIBUTE
624#elif WEBKIT_VERSION_MIN_REQUIRED < WEBKIT_VERSION_LATEST
625 #define AVAILABLE_AFTER_WEBKIT_VERSION_3_1 WEAK_IMPORT_ATTRIBUTE
626#else
627 #define AVAILABLE_AFTER_WEBKIT_VERSION_3_1
628#endif
629
630/*
631 * AVAILABLE_AFTER_WEBKIT_VERSION_3_1_BUT_DEPRECATED
632 *
633 * Used on declarations introduced after WebKit 3.1,
634 * and deprecated after WebKit 3.1
635 */
636#if WEBKIT_VERSION_MIN_REQUIRED >= WEBKIT_VERSION_LATEST
637 #define AVAILABLE_AFTER_WEBKIT_VERSION_3_1_BUT_DEPRECATED DEPRECATED_ATTRIBUTE
638#else
639 #define AVAILABLE_AFTER_WEBKIT_VERSION_3_1_BUT_DEPRECATED AVAILABLE_AFTER_WEBKIT_VERSION_3_1
640#endif
641
642/*
643 * AVAILABLE_WEBKIT_VERSION_1_0_AND_LATER_BUT_DEPRECATED_AFTER_WEBKIT_VERSION_3_1
644 *
645 * Used on declarations introduced in WebKit 1.0,
646 * but later deprecated after WebKit 3.1
647 */
648#if WEBKIT_VERSION_MIN_REQUIRED >= WEBKIT_VERSION_LATEST
649 #define AVAILABLE_WEBKIT_VERSION_1_0_AND_LATER_BUT_DEPRECATED_AFTER_WEBKIT_VERSION_3_1 DEPRECATED_ATTRIBUTE
650#else
651 #define AVAILABLE_WEBKIT_VERSION_1_0_AND_LATER_BUT_DEPRECATED_AFTER_WEBKIT_VERSION_3_1 AVAILABLE_WEBKIT_VERSION_1_0_AND_LATER
652#endif
653
654/*
655 * AVAILABLE_WEBKIT_VERSION_1_1_AND_LATER_BUT_DEPRECATED_AFTER_WEBKIT_VERSION_3_1
656 *
657 * Used on declarations introduced in WebKit 1.1,
658 * but later deprecated after WebKit 3.1
659 */
660#if WEBKIT_VERSION_MIN_REQUIRED >= WEBKIT_VERSION_LATEST
661 #define AVAILABLE_WEBKIT_VERSION_1_1_AND_LATER_BUT_DEPRECATED_AFTER_WEBKIT_VERSION_3_1 DEPRECATED_ATTRIBUTE
662#else
663 #define AVAILABLE_WEBKIT_VERSION_1_1_AND_LATER_BUT_DEPRECATED_AFTER_WEBKIT_VERSION_3_1 AVAILABLE_WEBKIT_VERSION_1_1_AND_LATER
664#endif
665
666/*
667 * AVAILABLE_WEBKIT_VERSION_1_2_AND_LATER_BUT_DEPRECATED_AFTER_WEBKIT_VERSION_3_1
668 *
669 * Used on declarations introduced in WebKit 1.2,
670 * but later deprecated after WebKit 3.1
671 */
672#if WEBKIT_VERSION_MIN_REQUIRED >= WEBKIT_VERSION_LATEST
673 #define AVAILABLE_WEBKIT_VERSION_1_2_AND_LATER_BUT_DEPRECATED_AFTER_WEBKIT_VERSION_3_1 DEPRECATED_ATTRIBUTE
674#else
675 #define AVAILABLE_WEBKIT_VERSION_1_2_AND_LATER_BUT_DEPRECATED_AFTER_WEBKIT_VERSION_3_1 AVAILABLE_WEBKIT_VERSION_1_2_AND_LATER
676#endif
677
678/*
679 * AVAILABLE_WEBKIT_VERSION_1_3_AND_LATER_BUT_DEPRECATED_AFTER_WEBKIT_VERSION_3_1
680 *
681 * Used on declarations introduced in WebKit 1.3,
682 * but later deprecated after WebKit 3.1
683 */
684#if WEBKIT_VERSION_MIN_REQUIRED >= WEBKIT_VERSION_LATEST
685 #define AVAILABLE_WEBKIT_VERSION_1_3_AND_LATER_BUT_DEPRECATED_AFTER_WEBKIT_VERSION_3_1 DEPRECATED_ATTRIBUTE
686#else
687 #define AVAILABLE_WEBKIT_VERSION_1_3_AND_LATER_BUT_DEPRECATED_AFTER_WEBKIT_VERSION_3_1 AVAILABLE_WEBKIT_VERSION_1_3_AND_LATER
688#endif
689
690/*
691 * AVAILABLE_WEBKIT_VERSION_2_0_AND_LATER_BUT_DEPRECATED_AFTER_WEBKIT_VERSION_3_1
692 *
693 * Used on declarations introduced in WebKit 2.0,
694 * but later deprecated after WebKit 3.1
695 */
696#if WEBKIT_VERSION_MIN_REQUIRED >= WEBKIT_VERSION_LATEST
697 #define AVAILABLE_WEBKIT_VERSION_2_0_AND_LATER_BUT_DEPRECATED_AFTER_WEBKIT_VERSION_3_1 DEPRECATED_ATTRIBUTE
698#else
699 #define AVAILABLE_WEBKIT_VERSION_2_0_AND_LATER_BUT_DEPRECATED_AFTER_WEBKIT_VERSION_3_1 AVAILABLE_WEBKIT_VERSION_2_0_AND_LATER
700#endif
701
702/*
703 * AVAILABLE_WEBKIT_VERSION_3_0_AND_LATER_BUT_DEPRECATED_AFTER_WEBKIT_VERSION_3_1
704 *
705 * Used on declarations introduced in WebKit 3.0,
706 * but later deprecated after WebKit 3.1
707 */
708#if WEBKIT_VERSION_MIN_REQUIRED >= WEBKIT_VERSION_LATEST
709 #define AVAILABLE_WEBKIT_VERSION_3_0_AND_LATER_BUT_DEPRECATED_AFTER_WEBKIT_VERSION_3_1 DEPRECATED_ATTRIBUTE
710#else
711 #define AVAILABLE_WEBKIT_VERSION_3_0_AND_LATER_BUT_DEPRECATED_AFTER_WEBKIT_VERSION_3_1 AVAILABLE_WEBKIT_VERSION_3_0_AND_LATER
712#endif
713
714/*
715 * AVAILABLE_WEBKIT_VERSION_3_1_AND_LATER_BUT_DEPRECATED_AFTER_WEBKIT_VERSION_3_1
716 *
717 * Used on declarations introduced in WebKit 3.1,
718 * but later deprecated after WebKit 3.1
719 */
720#if WEBKIT_VERSION_MIN_REQUIRED >= WEBKIT_VERSION_LATEST
721 #define AVAILABLE_WEBKIT_VERSION_3_1_AND_LATER_BUT_DEPRECATED_AFTER_WEBKIT_VERSION_3_1 DEPRECATED_ATTRIBUTE
722#else
723 #define AVAILABLE_WEBKIT_VERSION_3_1_AND_LATER_BUT_DEPRECATED_AFTER_WEBKIT_VERSION_3_1 AVAILABLE_WEBKIT_VERSION_3_1_AND_LATER
724#endif
725
726/*
727 * DEPRECATED_AFTER_WEBKIT_VERSION_3_1
728 *
729 * Used on types deprecated after WebKit 3.1
730 */
731#if WEBKIT_VERSION_MIN_REQUIRED >= WEBKIT_VERSION_LATEST
732 #define DEPRECATED_AFTER_WEBKIT_VERSION_3_1 DEPRECATED_ATTRIBUTE
733#else
734 #define DEPRECATED_AFTER_WEBKIT_VERSION_3_1
735#endif
736
737
738#endif /* __WebKitAvailability__ */
Note: See TracBrowser for help on using the repository browser.