1aefef8d800d34d6733c13b05c7cfe214d06b62d8Steve Block/* 2aefef8d800d34d6733c13b05c7cfe214d06b62d8Steve Block * Copyright 2010, The Android Open Source Project 3aefef8d800d34d6733c13b05c7cfe214d06b62d8Steve Block * 4aefef8d800d34d6733c13b05c7cfe214d06b62d8Steve Block * Redistribution and use in source and binary forms, with or without 5aefef8d800d34d6733c13b05c7cfe214d06b62d8Steve Block * modification, are permitted provided that the following conditions 6aefef8d800d34d6733c13b05c7cfe214d06b62d8Steve Block * are met: 7aefef8d800d34d6733c13b05c7cfe214d06b62d8Steve Block * * Redistributions of source code must retain the above copyright 8aefef8d800d34d6733c13b05c7cfe214d06b62d8Steve Block * notice, this list of conditions and the following disclaimer. 9aefef8d800d34d6733c13b05c7cfe214d06b62d8Steve Block * * Redistributions in binary form must reproduce the above copyright 10aefef8d800d34d6733c13b05c7cfe214d06b62d8Steve Block * notice, this list of conditions and the following disclaimer in the 11aefef8d800d34d6733c13b05c7cfe214d06b62d8Steve Block * documentation and/or other materials provided with the distribution. 12aefef8d800d34d6733c13b05c7cfe214d06b62d8Steve Block * 13aefef8d800d34d6733c13b05c7cfe214d06b62d8Steve Block * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS ``AS IS'' AND ANY 14aefef8d800d34d6733c13b05c7cfe214d06b62d8Steve Block * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 15aefef8d800d34d6733c13b05c7cfe214d06b62d8Steve Block * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 16aefef8d800d34d6733c13b05c7cfe214d06b62d8Steve Block * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR 17aefef8d800d34d6733c13b05c7cfe214d06b62d8Steve Block * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, 18aefef8d800d34d6733c13b05c7cfe214d06b62d8Steve Block * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, 19aefef8d800d34d6733c13b05c7cfe214d06b62d8Steve Block * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR 20aefef8d800d34d6733c13b05c7cfe214d06b62d8Steve Block * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY 21aefef8d800d34d6733c13b05c7cfe214d06b62d8Steve Block * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 22aefef8d800d34d6733c13b05c7cfe214d06b62d8Steve Block * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 23aefef8d800d34d6733c13b05c7cfe214d06b62d8Steve Block * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 24aefef8d800d34d6733c13b05c7cfe214d06b62d8Steve Block */ 25aefef8d800d34d6733c13b05c7cfe214d06b62d8Steve Block 2681bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch#ifndef JavaFieldV8_h 2781bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch#define JavaFieldV8_h 28aefef8d800d34d6733c13b05c7cfe214d06b62d8Steve Block 2981bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch#if ENABLE(JAVA_BRIDGE) 3081bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch 312daae5fd11344eaa88a0d92b0f6d65f8d2255c00Ben Murdoch#include "JNIUtility.h" 322daae5fd11344eaa88a0d92b0f6d65f8d2255c00Ben Murdoch#include <wtf/text/WTFString.h> 33aefef8d800d34d6733c13b05c7cfe214d06b62d8Steve Block 34aefef8d800d34d6733c13b05c7cfe214d06b62d8Steve Blocknamespace JSC { 35aefef8d800d34d6733c13b05c7cfe214d06b62d8Steve Block 36aefef8d800d34d6733c13b05c7cfe214d06b62d8Steve Blocknamespace Bindings { 37aefef8d800d34d6733c13b05c7cfe214d06b62d8Steve Block 3809e3a0d3e5e0725e32330137c505146270a2fc84Steve Blockclass JavaField { 39aefef8d800d34d6733c13b05c7cfe214d06b62d8Steve Blockpublic: 402daae5fd11344eaa88a0d92b0f6d65f8d2255c00Ben Murdoch virtual ~JavaField() {} 41aefef8d800d34d6733c13b05c7cfe214d06b62d8Steve Block 422daae5fd11344eaa88a0d92b0f6d65f8d2255c00Ben Murdoch virtual String name() const = 0; 432daae5fd11344eaa88a0d92b0f6d65f8d2255c00Ben Murdoch virtual const char* typeClassName() const = 0; 442daae5fd11344eaa88a0d92b0f6d65f8d2255c00Ben Murdoch virtual JavaType type() const = 0; 45aefef8d800d34d6733c13b05c7cfe214d06b62d8Steve Block}; 46aefef8d800d34d6733c13b05c7cfe214d06b62d8Steve Block 47aefef8d800d34d6733c13b05c7cfe214d06b62d8Steve Block} // namespace Bindings 48aefef8d800d34d6733c13b05c7cfe214d06b62d8Steve Block 49aefef8d800d34d6733c13b05c7cfe214d06b62d8Steve Block} // namespace JSC 50aefef8d800d34d6733c13b05c7cfe214d06b62d8Steve Block 5181bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch#endif // ENABLE(JAVA_BRIDGE) 5281bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch 5381bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch#endif // JavaFieldV8_h 54