PyLucene 3.4.0-1 import
[pylucene.git] / jcc / _jcc / java / lang / reflect / GenericArrayType.cpp
1 #ifdef _java_generics
2
3 #include <jni.h>
4 #include "JCCEnv.h"
5 #include "java/lang/reflect/GenericArrayType.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 *GenericArrayType::class$ = NULL;
14             jmethodID *GenericArrayType::mids$ = NULL;
15
16             jclass GenericArrayType::initializeClass()
17             {
18                 if (!class$)
19                 {
20
21                     jclass cls = (jclass) env->findClass("java/lang/reflect/GenericArrayType");
22
23                     mids$ = new jmethodID[max_mid];
24                     mids$[mid_getGenericComponentType_86037cf0] = env->getMethodID(cls, "getGenericComponentType", "()Ljava/lang/reflect/Type;");
25
26                     class$ = (java::lang::Class *) new JObject(cls);
27                 }
28                 return (jclass) class$->this$;
29             }
30
31             java::lang::reflect::Type GenericArrayType::getGenericComponentType() const
32             {
33                 return java::lang::reflect::Type(env->callObjectMethod(this$, mids$[mid_getGenericComponentType_86037cf0]));
34             }
35         }
36     }
37 }
38
39 #include "structmember.h"
40 #include "functions.h"
41 #include "macros.h"
42
43 namespace java {
44     namespace lang {
45         namespace reflect {
46             static PyObject *t_GenericArrayType_cast_(PyTypeObject *type, PyObject *arg);
47             static PyObject *t_GenericArrayType_instance_(PyTypeObject *type, PyObject *arg);
48             static PyObject *t_GenericArrayType_getGenericComponentType(t_GenericArrayType *self);
49
50             static PyMethodDef t_GenericArrayType__methods_[] = {
51                 DECLARE_METHOD(t_GenericArrayType, cast_, METH_O | METH_CLASS),
52                 DECLARE_METHOD(t_GenericArrayType, instance_, METH_O | METH_CLASS),
53                 DECLARE_METHOD(t_GenericArrayType, getGenericComponentType, METH_NOARGS),
54                 { NULL, NULL, 0, NULL }
55             };
56
57             DECLARE_TYPE(GenericArrayType, t_GenericArrayType, java::lang::reflect::Type, GenericArrayType, abstract_init, 0, 0, 0, 0, 0);
58
59             static PyObject *t_GenericArrayType_cast_(PyTypeObject *type, PyObject *arg)
60             {
61                 if (!(arg = castCheck(arg, GenericArrayType::initializeClass, 1)))
62                     return NULL;
63                 return t_GenericArrayType::wrap_Object(GenericArrayType(((t_GenericArrayType *) arg)->object.this$));
64             }
65             static PyObject *t_GenericArrayType_instance_(PyTypeObject *type, PyObject *arg)
66             {
67                 if (!castCheck(arg, GenericArrayType::initializeClass, 0))
68                     Py_RETURN_FALSE;
69                 Py_RETURN_TRUE;
70             }
71
72             static PyObject *t_GenericArrayType_getGenericComponentType(t_GenericArrayType *self)
73             {
74                 java::lang::reflect::Type result((jobject) NULL);
75                 OBJ_CALL(result = self->object.getGenericComponentType());
76                 return java::lang::reflect::t_Type::wrap_Object(result);
77             }
78         }
79     }
80 }
81
82 #endif /* _java_generics */