CACAO
Main Page
Related Pages
Modules
Namespaces
Data Structures
Files
File List
Globals
source
cacao
src
native
vm
reflection.hpp
Go to the documentation of this file.
1
/* src/native/vm/reflection.hpp - helper functions for java/lang/reflect
2
3
Copyright (C) 2007, 2008
4
CACAOVM - Verein zur Foerderung der freien virtuellen Maschine CACAO
5
6
This file is part of CACAO.
7
8
This program is free software; you can redistribute it and/or
9
modify it under the terms of the GNU General Public License as
10
published by the Free Software Foundation; either version 2, or (at
11
your option) any later version.
12
13
This program is distributed in the hope that it will be useful, but
14
WITHOUT ANY WARRANTY; without even the implied warranty of
15
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16
General Public License for more details.
17
18
You should have received a copy of the GNU General Public License
19
along with this program; if not, write to the Free Software
20
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
21
02110-1301, USA.
22
23
*/
24
25
26
#ifndef _REFLECTION_HPP
27
#define _REFLECTION_HPP
28
29
#include "config.h"
30
#include "
vm/global.hpp
"
31
32
struct
classinfo
;
33
struct
methodinfo
;
34
35
class
Reflection
{
36
public
:
37
static
java_handle_t
*
invoke
(
methodinfo
*m,
java_handle_t
*o,
java_handle_objectarray_t
*params);
38
39
#if defined(WITH_JAVA_RUNTIME_LIBRARY_GNU_CLASSPATH) && defined(ENABLE_ANNOTATIONS)
40
static
java_handle_t
*
get_declaredannotations
(
java_handle_bytearray_t
*annotations,
classinfo
* declaringClass,
classinfo
*referer);
41
static
java_handle_objectarray_t
*
get_parameterannotations
(
java_handle_bytearray_t
* parameterAnnotations,
methodinfo
* m,
classinfo
*referer);
42
#endif
43
};
44
45
#endif // _REFLECTION_HPP
46
47
48
/*
49
* These are local overrides for various environment variables in Emacs.
50
* Please do not remove this and leave it at the end of the file, where
51
* Emacs will automagically detect them.
52
* ---------------------------------------------------------------------
53
* Local variables:
54
* mode: c++
55
* indent-tabs-mode: t
56
* c-basic-offset: 4
57
* tab-width: 4
58
* End:
59
* vim:noexpandtab:sw=4:ts=4:
60
*/
Reflection::get_declaredannotations
static java_handle_t * get_declaredannotations(java_handle_bytearray_t *annotations, classinfo *declaringClass, classinfo *referer)
Definition:
reflection.cpp:143
java_object_t
Definition:
global.hpp:263
Reflection::get_parameterannotations
static java_handle_objectarray_t * get_parameterannotations(java_handle_bytearray_t *parameterAnnotations, methodinfo *m, classinfo *referer)
Definition:
reflection.cpp:198
Reflection::invoke
static java_handle_t * invoke(methodinfo *m, java_handle_t *o, java_handle_objectarray_t *params)
Invoke a method on the given object with the given arguments.
Definition:
reflection.cpp:59
classinfo
Definition:
class.hpp:87
methodinfo
Definition:
method.hpp:68
global.hpp
Reflection
Definition:
reflection.hpp:35
Generated on Fri Aug 4 2017 03:01:46 for CACAO by
1.8.5