Merge from mainline (killloop-merge-20051122).
[official-gcc.git] / libjava / gcj / method.h
blobf97f865f920d5b61b12cf743615b7260efbb2552
1 // method.h - Header file for methodID instances. -*- c++ -*-
3 /* Copyright (C) 1999, 2000 Free Software Foundation
5 This file is part of libgcj.
7 This software is copyrighted work licensed under the terms of the
8 Libgcj License. Please consult the file "LIBGCJ_LICENSE" for
9 details. */
11 #ifndef __GCJ_METHOD_H__
12 #define __GCJ_METHOD_H__
14 #include <java/lang/Class.h>
15 #include <java/lang/reflect/Constructor.h>
16 #include <java/lang/reflect/Method.h>
18 extern inline jmethodID
19 _Jv_FromReflectedMethod (java::lang::reflect::Method *method)
21 return (jmethodID)
22 ((char *) method->declaringClass->methods + method->offset);
25 extern inline jmethodID
26 _Jv_FromReflectedConstructor (java::lang::reflect::Constructor *constructor)
28 return (jmethodID)
29 ((char *) constructor->declaringClass->methods + constructor->offset);
32 extern inline jint
33 JvNumMethods (jclass klass)
35 return klass->method_count;
38 extern inline jmethodID
39 JvGetFirstMethod (jclass klass)
41 return &klass->methods[0];
44 #endif /* __GCJ_METHOD_H__ */