ciMethodHandle.hpp revision 3718:b9a9ed0f8eeb
1198090Srdivacky/*
2198090Srdivacky * Copyright (c) 2009, 2012, Oracle and/or its affiliates. All rights reserved.
3198090Srdivacky * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4198090Srdivacky *
5198090Srdivacky * This code is free software; you can redistribute it and/or modify it
6198090Srdivacky * under the terms of the GNU General Public License version 2 only, as
7198090Srdivacky * published by the Free Software Foundation.
8198090Srdivacky *
9198090Srdivacky * This code is distributed in the hope that it will be useful, but WITHOUT
10198090Srdivacky * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11198090Srdivacky * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
12198090Srdivacky * version 2 for more details (a copy is included in the LICENSE file that
13198090Srdivacky * accompanied this code).
14207618Srdivacky *
15249423Sdim * You should have received a copy of the GNU General Public License version
16198090Srdivacky * 2 along with this work; if not, write to the Free Software Foundation,
17226633Sdim * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18218893Sdim *
19249423Sdim * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20249423Sdim * or visit www.oracle.com if you need additional information or have any
21249423Sdim * questions.
22207618Srdivacky *
23207618Srdivacky */
24198090Srdivacky
25198090Srdivacky#ifndef SHARE_VM_CI_CIMETHODHANDLE_HPP
26198090Srdivacky#define SHARE_VM_CI_CIMETHODHANDLE_HPP
27221345Sdim
28223017Sdim#include "ci/ciClassList.hpp"
29208599Srdivacky#include "ci/ciInstance.hpp"
30221345Sdim
31198090Srdivacky// ciMethodHandle
32198090Srdivacky//
33207618Srdivacky// The class represents a java.lang.invoke.MethodHandle object.
34198090Srdivackyclass ciMethodHandle : public ciInstance {
35198090Srdivackypublic:
36198090Srdivacky  ciMethodHandle(instanceHandle h_i) : ciInstance(h_i) {}
37198090Srdivacky
38198090Srdivacky  // What kind of ciObject is this?
39212904Sdim  bool is_method_handle() const { return true; }
40198090Srdivacky
41198090Srdivacky  ciMethod* get_vmtarget() const;
42243830Sdim};
43198090Srdivacky
44198090Srdivacky#endif // SHARE_VM_CI_CIMETHODHANDLE_HPP
45198090Srdivacky