webkit  2cdf99a9e3038c7e01b3c37e8ad903ecbe5eecf1
https://github.com/WebKit/webkit
WebLocalizableStrings.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2005, 2006 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  *
8  * 1. Redistributions of source code must retain the above copyright
9  * notice, this list of conditions and the following disclaimer.
10  * 2. Redistributions in binary form must reproduce the above copyright
11  * notice, this list of conditions and the following disclaimer in the
12  * documentation and/or other materials provided with the distribution.
13  * 3. Neither the name of Apple Inc. ("Apple") nor the names of
14  * its contributors may be used to endorse or promote products derived
15  * from this software without specific prior written permission.
16  *
17  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
18  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
19  * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
20  * DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY
21  * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
22  * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
23  * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
24  * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
25  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
26  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
27  */
28 
29 #if __OBJC__
30 @class NSBundle;
32 #else
33 #if __cplusplus
34 class NSBundle;
35 #else
36 typedef struct NSBundle NSBundle;
37 #endif
39 #endif
40 
41 typedef struct {
42  const char *identifier;
43  __unsafe_unretained NSBundle *bundle;
45 
46 #ifdef __cplusplus
47 extern "C" {
48 #endif
49 
51 
52 #ifdef __cplusplus
53 }
54 #endif
55 
56 static inline __attribute__((format_arg(3))) WebLocalizedStringType WebLocalizedStringWithValue(WebLocalizableStringsBundle* bundle, const char* key, const char* value)
57 {
58  return WebLocalizedString(bundle, key);
59 }
60 
61 #ifdef FRAMEWORK_NAME
62 
63 #define LOCALIZABLE_STRINGS_BUNDLE(F) LOCALIZABLE_STRINGS_BUNDLE_HELPER(F)
64 #define LOCALIZABLE_STRINGS_BUNDLE_HELPER(F) F ## LocalizableStringsBundle
65 
66 __attribute__((visibility("hidden")))
67 extern WebLocalizableStringsBundle LOCALIZABLE_STRINGS_BUNDLE(FRAMEWORK_NAME);
68 
69 #define UI_STRING(string, comment) WebLocalizedStringWithValue(&LOCALIZABLE_STRINGS_BUNDLE(FRAMEWORK_NAME), string, string)
70 #define UI_STRING_KEY(string, key, comment) WebLocalizedStringWithValue(&LOCALIZABLE_STRINGS_BUNDLE(FRAMEWORK_NAME), key, string)
71 
72 #else
73 
74 #define UI_STRING(string, comment) WebLocalizedStringWithValue(0, string, string)
75 #define UI_STRING_KEY(string, key, comment) WebLocalizedStringWithValue(0, key, string)
76 
77 #endif
Definition: RTCConfiguration.idl:27
__unsafe_unretained NSBundle * bundle
Definition: WebLocalizableStrings.h:43
static const char * key
Definition: WebLocalizableStrings.h:56
const char * identifier
Definition: WebLocalizableStrings.h:42
Definition: WebLocalizableStrings.h:41
const struct __CFString * CFStringRef
Definition: WebCoreSystemInterface.h:31
CFStringRef WebLocalizedStringType
Definition: WebLocalizableStrings.h:38
EGLAttrib * value
Definition: eglext.h:120
WebLocalizedStringType WebLocalizedString(WebLocalizableStringsBundle *bundle, const char *key)
Definition: WebLocalizableStrings.mm:36
struct NSString NSString
Definition: WebCoreNSStringExtras.h:35
int aint __attribute__((__aligned__(16)))
Definition: gcc-loops.cpp:73
const
Definition: upload.py:398
struct NSBundle NSBundle
Definition: WebLocalizableStrings.h:36