webkit  2cdf99a9e3038c7e01b3c37e8ad903ecbe5eecf1
https://github.com/WebKit/webkit
objc_utility.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2004 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 KJS_BINDINGS_OBJC_UTILITY_H
27 #define KJS_BINDINGS_OBJC_UTILITY_H
28 
29 #include <CoreFoundation/CoreFoundation.h>
30 
31 #include "objc_header.h"
32 #include <runtime/Error.h>
33 #include <runtime/JSObject.h>
34 
36 
37 namespace JSC {
38 namespace Bindings {
39 
40 typedef union {
43  char charValue;
44  short shortValue;
45  int intValue;
46  long longValue;
47  long long longLongValue;
48  float floatValue;
49  double doubleValue;
50 } ObjcValue;
51 
52 typedef enum {
70 
71 class RootObject;
72 
76 ObjcValueType objcValueTypeForType(const char *type);
77 
79 
80 } // namespace Bindings
81 } // namespace JSC
82 
83 #endif
Definition: objc_utility.h:65
Definition: runtime_root.h:53
int intValue
Definition: objc_utility.h:45
#define OBJC_CLASS
Definition: Compiler.h:270
Definition: objc_utility.h:54
Definition: objc_utility.h:66
short shortValue
Definition: objc_utility.h:44
long longValue
Definition: objc_utility.h:46
Definition: objc_utility.h:60
JSValue convertNSStringToString(ExecState *exec, NSString *nsstring)
Definition: objc_utility.mm:150
Definition: ThrowScope.h:72
struct objc_object * ObjectStructPtr
Definition: objc_header.h:45
Definition: AirOpcode.h:4
Definition: objc_utility.h:68
Definition: objc_utility.h:62
Definition: CallFrame.h:85
JSValue convertObjcValueToValue(ExecState *, void *buffer, ObjcValueType, RootObject *)
Definition: objc_utility.mm:175
char charValue
Definition: objc_utility.h:43
JSObject * throwError(ExecState *, ThrowScope &, NSString *message)
Definition: objc_utility.mm:313
OBJC_CLASS NSString
Definition: objc_utility.h:35
Definition: objc_utility.h:57
Definition: objc_utility.h:40
Definition: objc_utility.h:61
Definition: JSObject.h:92
Definition: objc_utility.h:59
long long longLongValue
Definition: objc_utility.h:47
double doubleValue
Definition: objc_utility.h:49
ObjcValueType
Definition: objc_utility.h:52
struct NSString NSString
Definition: WebCoreNSStringExtras.h:35
bool booleanValue
Definition: objc_utility.h:42
float floatValue
Definition: objc_utility.h:48
EGLenum type
Definition: eglext.h:63
ObjectStructPtr objectValue
Definition: objc_utility.h:41
ObjcValue convertValueToObjcValue(ExecState *, JSValue, ObjcValueType)
Definition: objc_utility.mm:79
Definition: objc_utility.h:64
Definition: JSCJSValue.h:129
ObjcValueType objcValueTypeForType(const char *type)
Definition: objc_utility.mm:239
Definition: objc_utility.h:56
Definition: objc_utility.h:63
EGLContext EGLenum EGLClientBuffer buffer
Definition: eglext.h:192
GLuint GLsizei const GLchar * message
Definition: gl2ext.h:137
Definition: objc_utility.h:55
Definition: objc_utility.h:53
Definition: objc_utility.h:67
Definition: objc_utility.h:58