PyLucene 3.4.0-1 import
[pylucene.git] / jcc / _jcc / java / lang / reflect / WildcardType.cpp
1 #ifdef _java_generics
2
3 #include <jni.h>
4 #include "JCCEnv.h"
5 #include "java/lang/reflect/WildcardType.h"
6 #include "java/lang/Class.h"
7 #include "JArray.h"
8
9 namespace java {
10     namespace lang {
11         namespace reflect {
12
13             java::lang::Class *WildcardType::class$ = NULL;
14             jmethodID *WildcardType::mids$ = NULL;
15
16             jclass WildcardType::initializeClass()
17             {
18                 if (!class$)
19                 {
20
21                     jclass cls = (jclass) env->findClass("java/lang/reflect/WildcardType");
22
23                     mids$ = new jmethodID[max_mid];
24                     mids$[mid_getLowerBounds_6f565a00] = env->getMethodID(cls, "getLowerBounds", "()[Ljava/lang/reflect/Type;");
25                     mids$[mid_getUpperBounds_6f565a00] = env->getMethodID(cls, "getUpperBounds", "()[Ljava/lang/reflect/Type;");
26
27                     class$ = (java::lang::Class *) new JObject(cls);
28                 }
29                 return (jclass) class$->this$;
30             }
31
32             JArray<java::lang::reflect::Type> WildcardType::getLowerBounds() const
33             {
34                 return JArray<java::lang::reflect::Type>(env->callObjectMethod(this$, mids$[mid_getLowerBounds_6f565a00]));
35             }
36
37             JArray<java::lang::reflect::Type> WildcardType::getUpperBounds() const
38             {
39                 return JArray<java::lang::reflect::Type>(env->callObjectMethod(this$, mids$[mid_getUpperBounds_6f565a00]));
40             }
41         }
42     }
43 }
44
45 #include "structmember.h"
46 #include "functions.h"
47 #include "macros.h"
48
49 namespace java {
50     namespace lang {
51         namespace reflect {
52             static PyObject *t_WildcardType_cast_(PyTypeObject *type, PyObject *arg);
53             static PyObject *t_WildcardType_instance_(PyTypeObject *type, PyObject *arg);
54             static PyObject *t_WildcardType_getLowerBounds(t_WildcardType *self);
55             static PyObject *t_WildcardType_getUpperBounds(t_WildcardType *self);
56
57             static PyMethodDef t_WildcardType__methods_[] = {
58                 DECLARE_METHOD(t_WildcardType, cast_, METH_O | METH_CLASS),
59                 DECLARE_METHOD(t_WildcardType, instance_, METH_O | METH_CLASS),
60                 DECLARE_METHOD(t_WildcardType, getLowerBounds, METH_NOARGS),
61                 DECLARE_METHOD(t_WildcardType, getUpperBounds, METH_NOARGS),
62                 { NULL, NULL, 0, NULL }
63             };
64
65             DECLARE_TYPE(WildcardType, t_WildcardType, java::lang::reflect::Type, WildcardType, abstract_init, 0, 0, 0, 0, 0);
66
67             static PyObject *t_WildcardType_cast_(PyTypeObject *type, PyObject *arg)
68             {
69                 if (!(arg = castCheck(arg, WildcardType::initializeClass, 1)))
70                     return NULL;
71                 return t_WildcardType::wrap_Object(WildcardType(((t_WildcardType *) arg)->object.this$));
72             }
73             static PyObject *t_WildcardType_instance_(PyTypeObject *type, PyObject *arg)
74             {
75                 if (!castCheck(arg, WildcardType::initializeClass, 0))
76                     Py_RETURN_FALSE;
77                 Py_RETURN_TRUE;
78             }
79
80             static PyObject *t_WildcardType_getLowerBounds(t_WildcardType *self)
81             {
82                 JArray<java::lang::reflect::Type> result((jobject) NULL);
83                 OBJ_CALL(result = self->object.getLowerBounds());
84
85                 return result.toSequence(java::lang::reflect::t_Type::wrap_Object);
86             }
87
88             static PyObject *t_WildcardType_getUpperBounds(t_WildcardType *self)
89             {
90                 JArray<java::lang::reflect::Type> result((jobject) NULL);
91                 OBJ_CALL(result = self->object.getUpperBounds());
92
93                 return result.toSequence(java::lang::reflect::t_Type::wrap_Object);
94             }
95         }
96     }
97 }
98
99 #endif /* _java_generics */